美文网首页
VC2015中使用utf-8中文字符串的问题

VC2015中使用utf-8中文字符串的问题

作者: 叶迎宪 | 来源:发表于2018-08-28 17:55 被阅读0次

要在VC2015中使用utf-8的中文字符串,首先需要把源码文件设置成utf-8编码的。可以使用UltraEdit来转换成utf-8带bom头的格式,也可以在Visual Studio中设置字符编码,位置在菜单“文件”--“高级保存选项”。

光把源码转换成utf-8编码的还不行,在程序运行的时候debug会发现这些字符串还是GB2312编码的。这是因为编译器cl.exe在编译的时候还是把字符串转成GB2312来处理了。因此还需要设置c/c++编译器的设置,Visual Studio 2015 Update 2新增了一个/utf-8的选项。设置这个选项的方法为,右键点击工程,选“属性”。在配置属性对话框中,选择“C/C++”--“命令行”,手动在“其他选项”中添加/utf-8

还有一个问题,如果目标字符串是wchar_t类型的又会如何呢?其实不用担心的,vc编译器会自动将字符转成UTF-16LE,保证使用windows api时可以正确显示

参考
https://blog.csdn.net/10km/article/details/80203286
https://blogs.msdn.microsoft.com/vcblog/2016/02/22/new-options-for-managing-character-sets-in-the-microsoft-cc-compiler/

相关文章

  • VC2015中使用utf-8中文字符串的问题

    要在VC2015中使用utf-8的中文字符串,首先需要把源码文件设置成utf-8编码的。可以使用UltraEdit...

  • 区块链开发之Go语言—字符串和字节

    字符串与字节的关系 Go 代码使用 UTF-8 编码,字符串和字节之间的转换依据的是UTF-8编码。注意中文是3个...

  • 字符串转UTF-8遇到的坑

    在实际的开发中,遇到了些问题,就是一个带中文的字符串,怎么转UTF-8的问题。 这个字符串是“788中国%”,我想...

  • Servlet中文问题

    想要处理中文,就要统一编码,使用UTF-8 获取中文的参数 使用UTF-8编码: login.html里form的...

  • Python基础

    python2中识别中文: #-*-coding:utf-8 -*- 单行注释使用:#注释内容 多行注释使用:''...

  • 测试总结-robotframework之UI自动化

    在使用rf过程中,输入中文,也同样会遇到编码问题,可以直接在rf用例的text edit中添加utf-8编码方式。...

  • python2.7 处理中文

    python2的中文处理很麻烦,特做总结。 unicode 与 utf-8 默认的中文使用的是utf-8编码,前面...

  • JNI日志调试中文乱码

    JNI中如果使用 但是使用 原因是C文件的编码格式要位UTF-8即可支持中文。 这样就可以直接输出中文了。LOGI...

  • Python-学习笔记1

    1、# -- coding: utf-8 -- 表示使用UTF-8 编码,使用中文注释也能正常运行脚本 2、pri...

  • lua字符串查找中文字符

    Lua字符串查找问题 在utf-8编码 一个字母符号占一个字节而一个中文占三个字节在lua中 也是中文字符一个占...

网友评论

      本文标题:VC2015中使用utf-8中文字符串的问题

      本文链接:https://www.haomeiwen.com/subject/tgmqwftx.html