VS2015 C++设置支持UTF-8 without BOM编码
博客主页:http://blog.csdn.net/xs1102 https://blog.csdn.net/xs1102/article/details/83186321
VS一直对源代码文件的编码支持不太好,尤其是UTF-8,VS2010以后支持UTF-8 with BOM编码,也就是带签名的UTF8,但GCC编译器并不支持这种编码,支持不带签名的UTF8。所以对于有跨平台需求的用户就很头疼了,不跨平台的用户直接修改文件编码就好,另存为或使用批量修改器都行,这里不探讨。
关于gcc设置编码,请移步这里:GCC设置源代码文件编码格式_XieShuaiCn的博客-CSDN博客_gcc不支持的源文件格式
博客主页:XieShuaiCn的博客_CSDN博客-Linux,Ubuntu,安装软件领域博主
文章地址:VS2017 C++设置支持UTF-8 without BOM编码_XieShuaiCn的博客-CSDN博客_vs 支持utf8
一种兼容最好的方案时,源代码中全部使用英文,包括注释。这样的文件保存为ASCII码就可以,当然UTF8也可以,在任何系统都可以完美的兼容。但对于英文不好的人来说,比如博主我,也是一件非常痛苦的事情。
苦苦的挣扎之后,终于找到一个解决方案,该方案至少从Visual Studio 2015 Update 2版本开始支持。低版本的也可以试试,行不通的可以留言。
方法如下:
在解决方案浏览器中,右击项目名称,打开属性页。
找到C/C++ -> 命令行,在右侧的“其他选项”文本区中输入:
/utf-8
若只需要修改源代码的编码,也可以只输入:
/source-charset:utf-8
类似的,还有可执行文件编码:/execution-charset:utf-8
/utf-8相当于同时设置源代码和可执行文件。
参考文献:
还有一种方法可以试试:
第一次用vs2015遇到乱码问题的时候也是很疑惑,在vs2010下面正用着很好的代码怎么就会出现乱码了呢,在百度google查了一下资料才知道原来是语言设置问题。现在我把截图跟步骤发出来供大家参考。
(1)要让焦点选中可编辑的.h或者.cpp文件内,点击vs2015的菜单--->文件--->高级保存选项
(2)在弹出的设置框 编码栏选择-->简体中文GB2312确定即可:如下图
如果不进行上述设置SendMessage的时候接收到的中文也可能是乱码。
原文链接:https://blog.csdn.net/wjakl001/article/details/53581861