控制台下输出汉字字符和CString字符

    我们在控制台下可能需要输出汉字字符串或是CString类型的字符串,可是直接输出显然不行,尝试了下,使用如下方法可正常输出:

#include <iostream> #include <afx.h> using namespace std; int main() { wchar_t str[] = L"你好!汉字!"; wcout.imbue(locale("CHS")); // 控制台输出汉字 wcout<<str[3]<<endl; wstring str1 = L"你好!汉奸!"; wcout<<str1[1]<<endl; CString str2 = "你好!World!"; wcout<<(LPCTSTR)str2<<endl; system("pause"); return 0; }

关键代码在这一句

wcout.imbue(locale("CHS"));

其中imbue表示设置当前输出字符集的格式,locale("CHS")表示本地字符集格式为CHS,而CHS表示的是简体中文。

你可能感兴趣的:(控制台下输出汉字字符和CString字符)