原文地址:https://www.cnblogs.com/blog-ccs/p/7443756.html
一、环境配置

win10 64位系统、VS2013环境、QT5.6.2版本、QT Creator软件

我使用QT Creator进行程序的编译运行。

二、问题提出

我在使用QT Creator进行程序编译运行时,如果字符串的类型是英文则没有问题,但是如果是中文,则会报 C2001:常量中有换行符 的错误。

三、错误原因

(1)在QT中,默认的编码是Unicode,我们书写的代码文件被强制转换为utf8,但是,在简体中文版的Windows操作系统中,默认编码却是GBK。

(2)因此,在QT编译程序时,如果代码含有特定中文字符,QT的编译器就会发生误判,向我们报告错误"常量中有字符串"。

(3)当然,如果你使用别的一些中文字符,恰巧该字符编码不含这些特定字符,则编译时不会报错,但是程序运行时中文字符却往往不能正常显示。

四、解决方法

1、折中的解决方法:更改设置或调整代码,避免编译错误

(1)更改设置

打开QT Creator,店家菜单栏“工具” 》》“选项”

在“文本编辑器”》》“行为”选项卡中,将文件编码更改为“UTF-8”,并且选择“如果编码是UTF-8则添加”

(2)代码调整

或者,在代码中用QString.toLocal8Bit( ) 将 Unicode 编码转换为本地系统编码

2、推荐的解决方法:将本地编译转换为Unicode交由QT处理

(1)使用以上方法之后,虽然编译时将不会报“常量中有换行符”错误,但不能保证中文字符能正确显示。

(2)若想字符得以正常显示,则可以使用 QString::fromLocal8Bit 来将本地字符编码转换为 Unicode 形式的 QString。毕竟,在这个越来越全球化的时代,Unicode 才是王道。

QT解决中文编译不通过问题相关推荐

  1. qt 解决中文乱码问题

    将以下代码放在main里面最开始的地方 //解决中文乱码的问题 QTextCodec *codc = QTextCodec::codecForName("GB2312"); QTe ...

  2. QT MSVC中文编译出错error: C2001: 常量中有换行符

    Qt error: C2001: 常量中有换行符 QT上用MSVC去编译部分含有中文的字符串时会出现编译错误error: C2001: 常量中有换行符 解决方法: 1.设置是工具->选项-> ...

  3. Qt解决中文显示乱码问题

    我相信所有用过Qt都遇到过中文乱码问题.下面列出了我经常用的几种解决方法. 方法一 #include "QtUtf8.h" #include <QTextCodec> ...

  4. Qt 解决MySQL 中文乱码问题

    文章目录 Qt 解决MySQL 中文乱码问题 解决此问题的必要前提就是: 1.版本要匹配. 2.数据库连接正常,需要重新编译Qt 自带的源程序中的mysql.pro 工程项目: 3.数据库的编码格式与 ...

  5. [转]QT中QString与string的转化,解决中文乱码问题

    [转]QT中QString与string的转化,解决中文乱码问题 参考文章: (1)[转]QT中QString与string的转化,解决中文乱码问题 (2)https://www.cnblogs.co ...

  6. QT中中文乱码的解决

    2019独角兽企业重金招聘Python工程师标准>>> QT中中文乱码的解决: #include <QtGui/QApplication> #include <QT ...

  7. [转载]Qt之解决中文乱码

    博主很给力 原文地址:Qt之解决中文乱码作者:一去二三里 在项目开发的过程中,中文乱码是比较常见的问题!用Qt开发也不例外,之前在做界面的时候没有发现什么问题,但是在程序移植的过程中问题出现了! 在W ...

  8. [转载]Qt之解决中文乱码_vortex_新浪博客

    博主很给力 原文地址:Qt之解决中文乱码作者:一去二三里 在项目开发的过程中,中文乱码是比较常见的问题!用Qt开发也不例外,之前在做界面的时候没有发现什么问题,但是在程序移植的过程中问题出现了! 在W ...

  9. 解决editplus编译出现中文乱码

    很多人的方法是命令那里改成javac -encoding utf8,但是我改了之后只要输入中文编译就有乱码,注释带中文也会乱码,像这样 找了好久的解决办法,终于在https://aledsan.blo ...

最新文章

  1. 爬虫(beautifulSoup)
  2. 洛谷 - P4062 [Code+#1]Yazid 的新生舞会(推公式+线段树)
  3. C++primer 第 3 章 字符串、向量和数组 3 . 5 数组
  4. Console-算法[for]-国王与老人的六十四格
  5. jquery ajax 异步分页,jquery 分页 Ajax异步
  6. 1 操作系统第一章 操作系统概念、功能、四大特征、操作系统发展与分类
  7. 坚持早起21天,每月躺赚5000元!
  8. 自己封装的ASP.NET的SQLITE数据库的操作类
  9. Linux完全卸载mysql的方式
  10. mysql 校对规则名_MySQL字符集及校对规则的理解
  11. 有哪些写项目策划书注意事项
  12. 中文现代诗歌创作项目
  13. js科学计算机,js网页在线科学计算器代码
  14. 【题解】洛谷P1661扩散(同LibreOJ10015) 曼哈顿距离最小生成树
  15. 头歌-自己动手画CPU(第六关)-MIPS RAM设计-Logisim
  16. LaTeX的正负号写法
  17. biblatex中参考文献期刊名缩写的实现
  18. shell命令之cd切换目录
  19. xxl-job搭建、部署、SpringBoot集成xxl-job
  20. Unity3D 飞碟游戏改进版

热门文章

  1. Vue2.5+Vue-cli3.0+Vue-router仿制京东金融前端页面
  2. 一些好的免费网络电视软件!!
  3. 解决IMX6从 uboot调试usb start 命令无法识别U盘的问题
  4. sin(x^2)cosx 求导数的R命令
  5. 西奥电梯服务器故障维修,杭州西奥电梯教你电气故障的解决方法
  6. 【日记】Java学习日记(第63天)持续无聊更新
  7. 第三周项目5-长方体类
  8. Tor 浏览器存在严重漏洞 或泄露用户真实 IP 地址
  9. 帮企业给主流域名定个身份
  10. 34. 池化层 / 汇聚层