解决C++源代码中的"汉字字符串"乱码的几个提案

解决C++源代码中的"汉字字符串"乱码的几个方案
新手找了一个,写了个中文的 Hello World!。输出结果竟然是乱码。
C/C++ code

#include <iostream>

using namespace std;

int main()
{
    cout << "你好世界!" << endl;

    return 0;
}
// 输出
浣犲ソ涓栫晫!


因为现在网络上是 UTF-8的天下,很多IDE 默认是 UTF-8 作为源代码的内码了。


如果所用的 IDE 是 Code::Blocks ,可以选择 源代码的内码,如下图,Windows-936 就是 中文简体 Windows 系统用的 GBK

选到 Windows-936,保存的 包含汉字的源代码 就是 GBK的,然后 编译器默认编译的 exe文件 是本地代码,也是GBK
在控制台执行,就可以正确显示中文了

------解决方案--------------------
VS的默认编码仍然是GBK啊,,这种有中文的源代码还是用Unicode保存比较好。
------解决方案--------------------
已经讨论过了

顺便接分
------解决方案--------------------
很好很强大!
------解决方案--------------------
这个给力!!!
------解决方案--------------------
感谢楼主分享!
------解决方案--------------------
setlocale(LC_ALL,"chs");
------解决方案--------------------
回头也弄个Code:Blocks试试
------解决方案--------------------
一直都用朴素的 prtScn按键截图

看到LZ的漂亮截图,眼前一亮


------解决方案--------------------
C/C++ code

WideCharToMultiByte()
MultiByteToWideChar()

//这个有用

------解决方案--------------------
探讨

C/C++ code

WideCharToMultiByte()
MultiByteToWideChar()

//这个有用

------解决方案--------------------
支持下,发现好久没有编程了
------解决方案--------------------
探讨

C/C++ code

WideCharToMultiByte()
MultiByteToWideChar()

//这个有用

------解决方案--------------------
在软件开发中不可避免的需要用到字符集的转换;转换方法很多如自行编写字符集转换库、利用 Windows提供之 MultiByteToWideChar函数等;自行编写相对周期较长,而利用 MultiByteToWideChar等函数进行转换在跨平台移值时带来很大的不方便;所以在本文里我们将讲述如何利用在 Linux与 Windows下都可用的 libiconv库进行字符集的转换。 
我们可以从 http://www.gnu.org/software/libiconv/上下载最新版本的 libiconv;本文里以 libiconv-1.9.2-1.exe为例子说明安装与使用方法; libiconv的安装非常的方便,就和大多数的 Windows应用程序安装一样直接 Step by Step就可以了;在安装过程中会提示你是否下载源代码,源代码说白了对我们也没有多大的用处所以就不选择下载源代码;安装完之后在 libiconv的安装目录下的 man/pdf目录中有一个 libiconv-man.pdf,这个文件就是 libiconv相关函数的说明;所以如果你对 libiconv还不是很熟悉的话请看一下这个文件。