读书人

解决C++源代码中的quot;汉字字符串quot;乱码的

发布时间: 2012-07-31 12:33:46 作者: rapoo

解决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还不是很熟悉的话请看一下这个文件。

读书人网 >C++

热点推荐