Использую функцию mbtowc( wchar_t *wchar,const char *mbchar, size_t count );
но преобразуеться только 1 символ
Например:
char *pmbc = "String";
wchar_t *pwc = new wchar_t;
mbtowc(pwc,pmbc,MB_CUR_MAX);
delete pwc;
И вместо String получаю S,что не так?
Здравствуйте, Alx_S, Вы писали:
A_S>Использую функцию mbtowc( wchar_t *wchar,const char *mbchar, size_t count );
A_S>но преобразуеться только 1 символ
A_S>Например:
A_S>char *pmbc = "String";
A_S>wchar_t *pwc = new wchar_t;
A_S>mbtowc(pwc,pmbc,MB_CUR_MAX);
A_S>delete pwc;
A_S>И вместо String получаю S,что не так?
Ну ты хотя бы документацию то почитай!
mbtowc — convert a multibyte sequence to a wide character (один, ОДИН символ конвертит!!!)
Используй mbstowcs, mbsrtowcs если нужно конвертить строку (правда mbtowc и mbstowcs не тредсейфные, то есть если у тебя несколько потоков, то их лучше не юзать, в этом случае тебя спасет только mbsrtowcs).
Кури маны
"DigitalGuru" <50347@users.rsdn.ru> schrieb im Newsbeitrag
news:1711478@news.rsdn.ru...
> mbtowc и mbstowcs не тредсейфные, то есть если у тебя несколько потоков, то их лучше не юзать...
Если не затруднит, можно про "не тредсейфность" выше перечисленных функций поподробнее
Posted via RSDN NNTP Server 2.0