开始好好学习C++,看到第一部分第二章有关于wchar_t宽字节,有关于wcout,编了下试了试,
#include <iostream>
int main()
{
std::wcout.imbue(std::locale("chs"));
std::wcout << L"Unicode,你好!" << std::endl;
return 0;
}
声明下,这个时候用的编辑器是C-Free,编译器是MinGW,可是出现两个错误,具体忘了什么错误,大概是“wcout is not a member of std” "illegal byte sequence"具体记不清了,反正关于编码和wcout的错误。从网上查了半天原来MinGW不支持wcout和wcin,要用STLport,于是开始一系列的配置。由于关于C-Free的材料比较少,我就换用了codeblocks作为编辑器。
我们要安装MinGW,MSYS还有STLport,注意安装MinGW和MSYS的时候,它们的安装路径中一定不要加空格,要不后面MSYS的时候,它找不到gcc.exe,即使它就在那,MSYS也找不到。安装配置MinGW和MSYS还有STLport就不多说了,在http://hi.baidu.com/jasonlyy/blog/item/1c9caaee9b2b702a62d09fee.html 讲得很详细了。
终于能正确输出了,但是怪异的是昨天即使那么配置了,还是有“illegal byte sequence”的错误,又在Compiler and debugger选项里面配置了other Option的配置了-finput-charset=GBK ,然后才成功了。但是今天去掉了这个配置也能跑正确,对于codeblocks还是不太熟悉。。。