VC,2013下CString转换成unsigned char*

 

VS2013环境下VC++,需要把CString转换成unsigned char*

转换过程中使用各种网传方法,不成功。(后来证明不是方法不对,后边细说。)

CString str = _T("E:\\work");
unsigned char *FilePath = new unsigned char[str.GetLength() + 1];
FilePath = (unsigned char*)(LPCTSTR)str;//强制转换

 

不管怎么写,转换后FilePath都只转过来一个“E”,后边都没过来。

解决办法:创建工程的时候不使用unicode,如果工程已经创建,修改“项目->XXX项目属性->配置属性->常规->字符集->使用多字节字符集”(感谢作者: river_hkw 和c/c++相关  )

顺利解决问题。

posted @ 2017-01-17 08:33  傻傻的幸福  阅读(416)  评论(0)    收藏  举报