64,654
社区成员
发帖
与我相关
我的任务
分享
int _tmain(int argc, _TCHAR* argv[])
{
CString str = "test";
char *p = (LPSTR)(LPCTSTR)str;
cout<<"cout strlen(p): "<<strlen(p)<<endl;
cin.get();
return 0;
}
const size_t strsize = (m_filepath.GetLength() + 1) * 2; // 宽字符的长度;
char * pstr = new char[strsize]; //分配空间;
size_t sz = 0;
wcstombs_s(&sz, pstr, strsize, m_filepath, _TRUNCATE);
试试这个,代码中m_filepath是CString,最终的到的pstr是char*,sz就是转化后的字符数int _tmain(int argc, _TCHAR* argv[])
{
CString str = "test";
LPCTSTR p = (LPCTSTR)str;
cout << "cout strlen(p): " << lstrlen(p) << endl;
cout << "cout strlen(p): " << str.GetLength() << endl;
cin.get();
return 0;
}