当前位置: 代码迷 >> VC >> 怎么在VS2010中使用unicode字符集
  详细解决方案

怎么在VS2010中使用unicode字符集

热度:3147   发布时间:2013-02-25 00:00:00.0
如何在VS2010中使用unicode字符集
在C++中,程序默认设置成unicode编码,所以关于如下字符串:
  char a[26]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n',\
'o','p','q','r','s','t','u','v','w','x','y','z'}
  aa.format(_T("%s"),a);
  在使用AfxMessageBox(aa)输出时显示乱码,本来应该显示26个字母的;
  请问用什么函数可以输出ansi字符?
  这里的问题应该是输出时错吧ansi字符当成unicode字符输出了吧?


------解决方案--------------------------------------------------------
wchar a[26]
------解决方案--------------------------------------------------------
有个类似的函数 WideCharToMultiByte(
------解决方案--------------------------------------------------------
一般情况下面,最好用TCHAR类型,比如:
#include <windows.h>
int main(){
TCHAR Message[] =TEXT("Hello,World");
TCHAR WndTips[] =TEXT("Message");
MessageBox(NULL, Message, WndTips, MB_OK);
}

如果你知道你现在有的字符串类型是char,而你需要使用wchar_t,则使用WideCharToMultiByte转换就行了
  相关解决方案