当前位置: 代码迷 >> VC >> VC2005中MessageBox输出时的乱码有关问题
  详细解决方案

VC2005中MessageBox输出时的乱码有关问题

热度:8552   发布时间:2013-02-25 00:00:00.0
VC2005中MessageBox输出时的乱码问题
MessageBox(L "abc\0 ");
        char*   strT;
        strT= "abc\0 ";
        MessageBox((LPCTSTR)strT);

第一个MessageBox(以字符串常量形式)输出则正常--abc
第二个MessageBox(以变量形式)输出则错误,ab的位置为乱码--XXc
---------------------------
网上搜了一下,说是与ANSI和Unicode有关,可是却搞不太清.

这里想问,我如果想用ANSI输出时怎么办,想用Unicode输出时怎么办?
对于一个未知的字符串,我如何知道它是ANSI还是Unicode?

------解决方案--------------------------------------------------------
_T( "abc ")支持unicode
------解决方案--------------------------------------------------------
MessageBox(_T( "abc "));

或者
CString str;
str= "abc ";
MessageBox(str);
------解决方案--------------------------------------------------------
strT=_T( "abc\0 ");
44
  相关解决方案