写程序时 要实现CString转换成 char *,晚上找了一些方法,可总是会有错误,不是我想要的。
比如下面这两种转换格式:
1.
<span style="white-space:pre"> </span>CString strItem("1238djj"); char *chItem1; chItem1 = (LPSTR)(LPCTSTR)strItem1;
2.
<span style="white-space:pre"> </span> CString strItem("1238djj"); char chItem1[100]; strncpy(chItem1,(LPSTR)(LPCTSTR)strItem1,sizeof(chItem1));
正确的方法:
<span style="white-space:pre"> </span>wchar_t *chItem1,*chItem2; chItem1=(LPWSTR)strItem1.GetBuffer(strItem1.GetLength()); chItem2=(LPWSTR)strItem2.GetBuffer(strItem2.GetLength());
这样才可以得到字符串的全部字符。
//wchar_t *转换成int int intItem1 = _ttol(chItem1);
原文地址:http://blog.csdn.net/u013147600/article/details/42080055