CString s;
unsigned char ch = 0x81;
s = "result:" + ch;
return s.AllocSysString();
最终没有输出ASCII码129(0x81)的字符而是乱码
求助应该怎样修改
在VS2008中,默认的字符集形式是Unicode,但在VC6.0等工程中,默认的字符集形式是多字节字符集(MBCS:Multi-Byte Character Set),这样导致在VC6.0中非常简单实用的各类字符操作和函数在VS2008环境下运行时会报各种各样的错误,这里总结了在VS2008环境中 Unicode字符集下CString和char *之间相互转换的几种方法,其实也就是Unicode字符集与MBCS字符集转换。
印象中CString有append方法吧,另外项目属性里面把Unicode改成使用多字节字符集
默认的字符编码是Unicode,需要更改编码形式
unsigned char char_tep[10]="refrefre";
CString str_tep;
str_tep.Format("%s",(char*)char_tep);
CString s;
unsigned char ch = 0x81;
CString csTemp = "";
csTemp.Format("%c",ch);
s = "result:" + csTemp;
return s.AllocSysString();