[C++_QT] 代码中不能有中文的解决方案 换行符问题
#开始
今天开始入坑QT了 似乎是个高大上的东西,师傅一直建议我学这个 (如果用C++做界面的话)
配置好环境之后写了代码运行没问题
但是添加了中文字符之后就 die 了,这个问题的话 LInux上的QT也是有问题的...Linux上面 QT Creator 不能直接输入中文

#解决过程
网上找了很多 确定了是编码的问题
找到一个解释(http://blog.sina.com.cn/s/blog_9cb7986b0102wtdh.html):
在 Qt 中,默认的编码是 Unicode,我们书写的代码文件被强制转换为 utf8,但是,在简体中文版的 Windows 操作系统中,默认编码却是 GBK。因此,在编译 Qt 程序时,如果代码中含有特定中文字符,Qt 的编译器就会发生误判,向我们报告“常量中有换行符”。当然了,如果你使用别的一些中文字符,恰巧该字符编码不含这些特定字符,则编译时不会报错,但程序运行时中文字符却往往不能正常显示。
所以接下来要做的就是改变编码啦.
1. 在项目视图中 找到有问题的文件 右键 explorer显示

2. Edit with Notepad++ (需要安装Notepad++ 其他的相同作用的也行)

3. 编码 -> 转变为UTF-8

4. 然后QT Creator中从新载入就可以了
#其他方案 https://www.cnblogs.com/zhehan54/p/6692050.html

但是这个方法还没尝试 不知道有没有用
补充: 刚才验证了 问题二的 a,b,c 都不好用 但是 下面的代码好用 棒极了
#if _MSC_VER >= 1600
#pragma execution_character_set("utf-8")
#endif
#备注
QT 5.8
QT Creator 4.2.1
WIn10 x64
[C++_QT] 代码中不能有中文的解决方案 换行符问题的更多相关文章
- 换行符javajava去除字符串中的空格、回车、换行符、制表符
在改章节中,我们主要介绍换行符java的内容,自我感觉有个不错的建议和大家分享下 每日一道理 只有启程,才会到达理想和目的地,只有拼搏,才会获得辉煌的成功,只有播种,才会有收获.只有追求,才会 ...
- The left-hand side of an assignment must be a variable,代码中使用了中文的字符
进行ajax测试,报这个错误,代码检测无误,然后就是查了相关文档 发现是符号错误,eclipse识别中文符号,就会报这个错误,而且eclipse的js里需要写冒号结尾,附个代码. <body&g ...
- JAVA代码中可使用中文类名,变量名,对象名,方法名.
java程序 兔子 public class 兔子{ //构造方法 public 兔子(){} public void 吃草(){ System.out.println("兔子在吃草&quo ...
- PHP中json_encode后,在json字符串中依然显示中文的解决方案
<?php header("Content-Type:text/html;charset=utf-8;"); $arr = array ('Version_code'=> ...
- Springmvc中@RequestParam传值中文乱码解决方案
首先jsp表单里面有一些参数要传到controller中,通过以下方法接收: @RequestMapping(value="/orderPaper") public ModelAn ...
- 之前的Android项目报错,新建Android项目报错,代码中找不到错误解决方案
打开一年前的东西,结果发现里面的android项目全部有个红叉,也找不到错误.新建一个项目也报错,首先确定自己的环境应该没问题,然后通过查看网上的资料,发现可能是debug的keystore到期啦. ...
- Springmvc中@RequestParam传值中文乱码解决方案(转)
@RequestMapping(value={"/list"},method=RequestMethod.GET) @ResponseBody public DeviceList ...
- 通过Shell脚本读取properties文件中的参数时遇到\r换行符的问题
今天在编写微服务程序启动脚本的时候,遇到一个比较奇葩的问题,下面给出具体描述: 目标:通过读取maven插件打包时生成的pom.properties文件,获取里面的应用名称和应用版本号,然后拼接得到s ...
- html 中js 如何给字符串加换行符
var str = 你好'+"\n"+ '世界'; 这种写法在html中是会被识别为"你好\n世界" 那么如何保证其这么写会被识别,只需要在该div的样式中加入 ...
随机推荐
- HDU1024 Max Sum Plus Plus(dp)
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1024 #include<iostream> #include<vector> #i ...
- Codeforces补题2020.2.28(Round624 Div 3)
A.Add Odd or Subtract Even 签到题~ #include<bits/stdc++.h> using namespace std; int T; int a,b; i ...
- while、for循环结构_python
一.while循环的基础例子: 例子1:判断是否大于50 例子2:按需打印乘法口诀 例子3:无限循环 while True: print (“true”) 二.for循环 1.for循环的常见范围的用 ...
- 1.3、WebRTC架构
文章导读:本文的讲解的是webrtc系统架构,每个人都要Get到这些知识:第一.了解webrtc架构分层:第二.对每层技术有一个清晰的认知.学完本节内容可以为我们后面学习核心API起到至关重要的作用, ...
- response下载csv文件内容乱码问题
response下载csv文件内容乱码问题 解决办法:在输出流语句第一行输出 out.write(new byte[]{(byte)0xEF, (byte)0xBB, (byte)0xBF}); Se ...
- 在手机浏览器中判断App是否已安装
从网上搜到之前手机中判断App是否安装可以通过onblur事件+定时器来实现. 但现在要做这个功能时,按网上的说法已经不能实现了.因为现在浏览器中打开App,window不会触发onblur事件. 在 ...
- VS调试工具
F5--启动运行,跳到下一个断点 F10--逐步调试 F11--逐句调试 F10和F11的区别: method(); int a = 1; 当程序运行到如上面的method方法时,按F10会直接跳到下 ...
- 每天进步一点点------创建Microblaze软核(三)
第七步 进入SDK开发环境编译完成后弹出如下对话框,选择SDK的工作目录.在MicroblazeTutor中创建一个Workspace文件夹,并选择该文件夹为SDK的工作目录.进入SDK主界面.第八步 ...
- Linux中 /boot 目录介绍
转自https://blog.csdn.net/dulin201004/article/details/7396968 一./boot/目录中的文件和目录 Linux系统在本地启动时,目录/boot/ ...
- springmvc、springboot 参数校验
参数校验在项目中是必不可少的,不仅前端需要校验,为了程序的可靠性,后端也需要对参数进行有效性的校验.下面将介绍在springmvc或springboot项目中参数校验的方法 准备工作: 引入校验需要用 ...