Re: Как преобразовать CString в char* (char[]) ?
От: Stanislav V. Zudin Россия  
Дата: 28.06.16 09:23
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Как преобразовать CString в char* или в char[] ?


Канонично использовать GetBuffer()/ReleaseBuffer()
Если требуется именно неконстантная строка.

RF>У меня есть такой код:


RF>CString myString;

RF>char s[30];
RF>int i, n;

RF>//...


RF>n = myString.GetLength();

RF>LPTSTR pzsText = (LPTSTR)(myString.GetBuffer(n));
RF>for (i=0; i<n; i++) s[i] = pszText[i];
RF>s[n] = '\0';


RF>Но нельзя ли написать проще? И чтобы работало для всех случаев, а не только для поддержки Юникода?


В данном случае логично написать
_tcscpy(s, myString.GetString());
_____________________
С уважением,
Stanislav V. Zudin
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.