Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Нужен совет по поводу конвертации строк

7.8K
29 марта 2007 года
simplemortal
62 / / 09.02.2007
Всем привет!
Мне необходимо проконсультироваться у знающих людей по следующему вопросу.
Я пишу программу с юникодом. И у меня возникла проблема конвертации строк из CString в char*. Одни функции дают строки CString и их нужно использовать в других, у которых входные параметры char*.
Нашёл в нете следующий код для конвертирования:
 
Код:
#include <atlbase.h>
    .........
    USES_CONVERSION;
    c = new char[str.GetLength() + 1];
    strcpy(c, T2A(LPCTSTR(str)));

Здесь c - переменная char*, а str - CString.
Этот код работает.

Мне конвертировать нужно будет много и часто.
Вот я и подумал, нельзя ли как-то по-проще?:confused:
Ведь если писать без юникода, то никаких проблем с конвертированием строк нет.
263
30 марта 2007 года
koltaviy
816 / / 16.12.2004
функцию сделай!!
21K
08 апреля 2007 года
HunterHank
3 / / 14.10.2006
А так нельзя?

#include <cstdio>
char c[100];
string str;
с = str.c_str;
284
11 апреля 2007 года
michael_is_98
587 / / 25.02.2005
Т.е. нужна функция обратная к MultiByteToWideChar?
398
11 апреля 2007 года
Alexandoros
630 / / 21.10.2005
Нах их конвертировать, ведь вся прога в юникоде?????
26K
12 апреля 2007 года
3AMnoTEX
11 / / 30.03.2007
MultiByteToWideChar, WideCharToMultiByte. В MSDN'е подробно описаны. Мне приходится их пользовать довольно часто.
Если нужно просто использовать неюникодовые строки в проге, где по умолчанию CString-юникод, то можно просто использовать CStringA, или если наоборот - CStringW.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог