|
|
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Привет всем! Простите за глупый вопрос, но я что-то не могу справиться: Код: plaintext 1. 2. Заранее спасибо ВС ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 15:23 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopinЗаранее спасибо ВСЯ так понял, это Borland C, тогда попробуй WideString. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 15:52 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
maXmoЯ так понял, это Borland C, тогда попробуй WideString.Нет MS VS 6 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 16:11 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
про ЦСтринг читал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 16:20 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
maXmoпро ЦСтринг читал? А где? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 16:28 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
а чем вам нормальные и простые char* не нраявятся??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 16:47 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopin maXmoпро ЦСтринг читал? А где? На заборе, есс-но. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 16:48 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Aklinа чем вам нормальные и простые char* не нраявятся??? Юникода, можеть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 16:51 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Akh Aklinа чем вам нормальные и простые char* не нраявятся??? Юникода, можеть? мужики - брэйк... цэстринг так же имеет свои нюансы...освобождение аллокированного статического буфеоа (забывают частенько)...и гэт лен возвращает не то что ожидают... а так - если библиотека и так есть, нафига велосипед то ? (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 16:59 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
kolobok0 а так - если библиотека и так есть, нафига велосипед то ? Так, подскажи автору как собирать, наверное, никто с LPCWSTR не работает :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:06 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Akh kolobok0 а так - если библиотека и так есть, нафига велосипед то ? Так, подскажи автору как собирать, наверное, никто с LPCWSTR не работает :) не понял подвоха..селектор не знает как писать ? кхм...аднака... Код: plaintext 1. 2. 3. вроде так с утра было... (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:20 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopinПривет всем! Простите за глупый вопрос, но я что-то не могу справиться: Код: plaintext 1. 2. Заранее спасибо ВС Начните с того, чтобы выяснить, что есть LPCWSTR: #ifdef UNICODE typedef LPCWSTR LPCTSTR; #else typedef LPCSTR LPCTSTR; #endif typedef CONST WCHAR *LPCWSTR; -- как видно из определения, реализовать так просто через "+" не получится! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:22 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
kolobok0цэстринг так же имеет свои нюансы...освобождение аллокированного статического буфеоа (забывают частенько)...и гэт лен возвращает не то что ожидают... (круглый)Крайне криво! авторЮникода, можеть?ДА! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:22 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
typedef basic_string <wchar_t> wstring; wstring w(L""); w = p + wstring(L"Str") + pw + wstring(L"Str") + pp; -- думаю следует писать так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:25 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
kolobok0не понял подвоха..селектор не знает как писать ? кхм...аднака... Код: plaintext 1. 2. 3. вроде так с утра было... (круглый)Может с утра и было, но у меня вместо первых двух символов получаются два квадрата! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:29 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
AkhТак, подскажи автору как собирать, наверное, никто с LPCWSTR не работает :)я работаю с WCHAR* :) васик стринг - как вариант, благо его в стандарт пытались пропихнуть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:40 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Код: plaintext проблема ещё в том, что pp и pw могут быть пустыми! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:51 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopin Код: plaintext проблема ещё в том, что pp и pw могут быть пустыми! Ребята, CString не умеет работать с WCHAR. Ваши два квадратика в начале - это два байта, содержащие длину строки на основе WCHAR. Есть аналоги CString-a, например BasicString, использующие функционал CString, basic_string<> и _variant_t в одном классе! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 17:59 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopin...Как собрать w = p + L“Str“ + pw + L“Str“ + pp ?... за CString прошу прощения... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 18:07 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
cpp_expertЕсть аналоги CString-a, например BasicString, использующие функционал CString, basic_string<> и _variant_t в одном классе!BasicString не нашел оного! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 18:07 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
cpp_expertРебята, CString не умеет работать с WCHAR.Ы! В мсдне по-другому написано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 18:21 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
зы если не умеем работать с директивами препроцессора, можно почитать мсдн и заюзать CStringW в явном виде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 18:23 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
kolobok0 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 19:28 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopin..Как-то оно не красиво смотриться, хотя работает! тогда как в предыдущем примере, только замените CString на CStringW и будет Вам счастье (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 19:49 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Вот, что получилось в результате, если, конечно, Ынтиресно: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 20:17 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Мой компилятор:warning C4172: Adresse einer lokalen Variablen oder eines temporaeren Wertes wird zurueckgegeben Что в переводе: возвращается адрес локальной или временной переменной И что в этом не так?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 22:50 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
А МСДН злопыхает:Local variables and temporary objects are destroyed when a function returns, so the address returned is not valid. Совсем какой-то фатал... На ведь всё пашет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 23:03 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopin Мой компилятор:warning C4172: Adresse einer lokalen Variablen oder eines temporaeren Wertes wird zurueckgegeben Что в переводе: возвращается адрес локальной или временной переменной И что в этом не так?! Вас не смущает, что сама переменная расположена на стеке и после возврата из функции в любой момент может быть затерта? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 02:37 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopin А МСДН злопыхает:Local variables and temporary objects are destroyed when a function returns, so the address returned is not valid. Совсем какой-то фатал... На ведь всё пашет... Опасное это дело. Может потом аукнуться. Если нет возможности использовать парметры класса или нет желания использовать глобальные переменные, то стандартный ход - передавать указатель на переменную, которая должна возвращаться, в функцию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 10:02 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousВас не смущает, что сама переменная расположена на стеке и после возврата из функции в любой момент может быть затерта? AkhОпасное это дело. Может потом аукнуться. Если нет возможности использовать парметры класса или нет желания использовать глобальные переменные, то стандартный ход - передавать указатель на переменную, которая должна возвращаться, в функцию.Это у меня длл - происходит передача инфы (создала линк, запустила линк) в дин./стат. обьекты C#; и все отдыхает... Т.е. какая может быть опасность?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 16:36 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopinЭто у меня длл - происходит передача инфы (создала линк, запустила линк) в дин./стат. обьекты C#; и все отдыхает... Т.е. какая может быть опасность?! Да хоть Папа Римский. Нельзя возвращать указатели на локальные данные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 16:47 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopinЭто у меня длл - происходит передача инфы (создала линк, запустила линк) в дин./стат. обьекты C#; и все отдыхает... Т.е. какая может быть опасность?! Вам правильно подсказали... Возвращать указатель на стэк - это явный скрытый джипиэф...Если Вам хочеться кинуть подлянку всей организации - тогда это самое то...Иначе - попахивает проф. непригодностью... Для возврата в си бимоль используйте следующие подходы... 1) из си бимоля зафиксируйте передаваемый буфер, вызовете Вашу функцию с передачей длины этого буфера. Внутри обработайте ограничение по длине спущенного Вам с верху буфера. После выхода в си бимоле - расфиксируйте буфер... 2) используйте мэнэджет код внутри Вашей дэлеле. Напишите на мэнэджет си плас плас работу с переданным с верху буффером. В Object(е) есть и длина и все прибамбасы. Вызывайте стандартную конвертацию из си бимоля..Далее подготовленные на стеке данные передавайте уже анмэнэджет коду (если необходимо)...Вам это делать не нуна - просто если будет не хватать возможностей мэнэджет си плас пласа только.. с уважением (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 16:56 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
kolobok0 си бимоль И все-таки "си диез" ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 17:32 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
AkhИ все-таки "си диез" ;) как собаку коровой не называй - всё равно молока не будет думаю пофигу как обзывать...запало в душу просто когда то...гы.. (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 18:25 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
kolobok0Для возврата в си бимоль используйте следующие подходы... 1) из си бимоля зафиксируйте передаваемый буфер, вызовете Вашу функцию с передачей длины этого буфера. Внутри обработайте ограничение по длине спущенного Вам с верху буфера. После выхода в си бимоле - расфиксируйте буфер... 2) используйте мэнэджет код внутри Вашей дэлеле. Напишите на мэнэджет си плас плас работу с переданным с верху буффером. В Object(е) есть и длина и все прибамбасы. Вызывайте стандартную конвертацию из си бимоля..Далее подготовленные на стеке данные передавайте уже анмэнэджет коду (если необходимо)...Вам это делать не нуна - просто если будет не хватать возможностей мэнэджет си плас пласа только.. Убедили! Но так хоть можно: Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 01:12 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopin kolobok0Для возврата в си бимоль используйте следующие подходы... 1) из си бимоля зафиксируйте передаваемый буфер, вызовете Вашу функцию с передачей длины этого буфера. Внутри обработайте ограничение по длине спущенного Вам с верху буфера. После выхода в си бимоле - расфиксируйте буфер... 2) используйте мэнэджет код внутри Вашей дэлеле. Напишите на мэнэджет си плас плас работу с переданным с верху буффером. В Object(е) есть и длина и все прибамбасы. Вызывайте стандартную конвертацию из си бимоля..Далее подготовленные на стеке данные передавайте уже анмэнэджет коду (если необходимо)...Вам это делать не нуна - просто если будет не хватать возможностей мэнэджет си плас пласа только.. Убедили! Но так хоть можно: Код: plaintext 1. 2. 3. 4. 5. У тебя s локальная переменнная? Если да, то обманывать компилятор не хорошооооо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 10:00 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
AkhУ тебя s локальная переменнная? Если да, то обманывать компилятор не хорошооооо! Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Код: plaintext 1. 2. 3. 4. 5. 6. 7. PSКак хорошо сидеть на "си бимоле" - при полных непонятках его работы по выдел./очистке памяти (сам все делает!) пашет все в 2-3раза бодрее (проверял). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 11:47 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
ну скока мона? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 11:58 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
PPSМожет можно где-то компактно почитать об этом - я бы потом отдельной темой опубликовал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 11:59 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
про управление памятью и освобождение строк где-то в мсдне было. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 12:01 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
зы жо скрипт на самом деле хороший ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 12:02 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
но это не отменяет прекрасную природу явного управления памятью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 12:04 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
maXmoно это не отменяет прекрасную природу явного управления памятью.Садо-мазо какое-то!? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 12:11 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
не шаришь. Всё, что пишется на жабах и сишах есть амно и ЗЛО и АД следует за ним. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 12:21 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Код: plaintext Или так, например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 13:03 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Akh Код: plaintext Как-то вычерно, лучше тогда: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 13:33 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopin Akh Код: plaintext Как-то вычерно, лучше тогда: Код: plaintext Пожалуйста. Главное, что смысл понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 13:36 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
Спасибо всем!!!!!!!!!!!!!!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 13:40 |
|
||
|
Конвертировать строку
|
|||
|---|---|---|---|
|
#18+
v skopinСпасибо всем!!!!!!!!!!!!!!!!! А пациловать напоследок? CString str; str.Format("%d",Int_value); AfxMessageBox(str); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2006, 19:14 |
|
||
|
|

start [/forum/topic.php?all=1&fid=57&tid=2030421]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
172ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
102ms |
get tp. blocked users: |
2ms |
| others: | 236ms |
| total: | 566ms |

| 0 / 0 |
