控制台输出中文乱码问题

原文出处:http://blog.csdn.net/dreamtdp/article/details/8025514

问题描述:
cout << "中文字符" ; 在控制台输出时出现乱码。

解决办法:

重新点出菜单,选“默认值”项,发现“默认值”里的“当前代码页”是可以设置,

有两个选项:“437 (OEM - 美国)”和“936 (ANSI/OEM - 简体中文 GBK)”,将“当前代码页”设置为“936 (ANSI/OEM - 简体中文 GBK)”,点“确定”,没有发现一点反应。

重运行一下“CMD.EXE”,发现问题依旧,“默认值”中“当前代码页”设置是“936 (ANSI/OEM - 简体中文 GBK)”,可是“属性”中“当前代码页”的设置还是“437 (OEM - 美国)”,输不了中文也显示不了中文。

    所以问题在注册表。

win+R打开运行,输入regedit打开注册表编辑器。

找到[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe] 修改 "CodePage"=dword:000003a8

【注】十六进制"000003a8"或十进制"936",表示“936 (ANSI/OEM - 简体中文 GBK)”。 

        十六进制"000001b5"或十进制"437",表示“437 (OEM - 美国)”。


你可能感兴趣的:(C++,C++,编程语言,控制台,乱码)