笔者最近用 Visual Stdio 时,发现一个问题,在某一次写完语言进行编绎运行时,出现了以下错误:

    C2001错误:变量中有换行符

    C2413错误:语法错误 缺少")"(在"else"的前面)

    C4819警告:该文件包含不能在当前代码页(936)中表示的字符。请将文件保存为 Unicode 格式防止数据丢失

    

    看下代码并没有什么错误,笔者查询后,正如警告那样是保存文件编码格式问题。如何解决呢 ,就是将源文件保存为 带签名的 UTF-8 的 Unicode 格式。

    文件菜单下的 保存 按钮好像不能自定义保存编码的格式,而且另存为也没有什么用,只是保存不同后缀名的文件,总之不能解决这个编码问题。

    如何解决:

      首先要找到 高级保存选项 ,当然默认不是在菜单下显示的,需我们手动去设置。在 工具 -> 自定义 -- 命令

      

      菜单栏的右侧下拉列表中选择 文件 菜单(当然啦 这个没有要求 你想在哪添加这命令都行 比如直接在菜单栏上添加 一般我们将此放在 文件 菜单下)

      

      点击右侧添加命令,在左侧的类别框中找到 文件 选定,然后在右侧框命令列表找到 高级保存选项 ,大概在 2/3 的位置处。

      确定后就可以在你所设置的位置找到这个 高级保存选项 命令了。

      

      如笔者这样,当前保存的编码格式为 Unicode (UTF-8 无签名)- 代码页 65001 是 Unicode 编码保存的 没错,但是吧,这个无签名的 UTF-8 就是问题了。

      

      将其更改为列表中的第二项 Unicode (UTF-8 带签名) - 代码页 65001 这样保存后再去编译运行之前的代码,OK啦,没问题。

      出现这个问题,以笔者个人的推测可能是输入了一些特殊的字符,然后直接编译运行,使得 Visual Stdio 以它的判断来保存文件及编码格式,这些特殊字符就可能被视为无签名的 UTF-8 格式啦。

应对 Visual Stdio 编译时出现错误:常量中有换行符的更多相关文章

  1. Visual Studio error C2001:常量中有换行符(解决办法)

    在Visual Studio自动生成的项目中,碰见了一件关于文件编码的问题,集中在类似于以下的语句上: DASLog (DASProtWarn, L"(%s)消息超时,进入慢循环召唤模式.& ...

  2. Qt5_vs2013_error_C2001: 常量中有换行符__资料

    ZC: Win7x64 + Qt551(x86) + vs2013(x86) ZC: 问题:UTF-8 在源码文件中有中文时,有时会报编译错误:C2001 & C2143 分析: --> ...

  3. Qt && 常量中有换行符 && 中文

    [1]VS + QT开发环境,中文内容编译时提示错误error C2001:常量中有换行符 解决方案:VC的编译器,把代码格式改为带BOM的UTF8就好了 建议步骤: (1)用Notepad++打开c ...

  4. Qt5_vs2013_error_C2001: 常量中有换行符__ZC

    ZC: 这里是解决 Windows平台下的这个 编译error :“error C2001: 常量中有换行符”. ZC: 我现在(20161221)的处理方式:vs2010或vs2015 将cpp文件 ...

  5. QT Creator有中文出现“常量中有换行符 ”的解决办法

    QT Creator有中文出现“常量中有换行符 ”的解决办法 QT Creator在QT5.9下报错“常量中有换行符 ”,我的代码中有中文,而且在Windows 10下用微软VS编译器编译.造成这个报 ...

  6. VS2017.常量中有换行符

    1.VS中加入 “/utf-8” Qt中 也是加入“/utf-8”,加的地方注意下:在 pro文件中 ,这个位置加入: win32-msvc*:QMAKE_CXXFLAGS += /wd"4 ...

  7. 关于 error C2001: 常量中有换行符

    看过之后,还是有所收获的,先mark一下 原链接: http://www.cnblogs.com/cocos2d-x/archive/2012/02/26/2368873.html#commentfo ...

  8. Qt乱码解决办法(常量中有换行符)

    用记事本打开源代码,然后点另存为,utf-8,编码覆盖 QStringLiteral("打开相机")

  9. 在Linux下安装PHP过程中,编译时出现错误的解决办法

    在Linux下安装PHP过程中,编译时出现configure: error: libjpeg.(a|so) not found 错误的解决办法 configure: error: libjpeg.(a ...

随机推荐

  1. Visual Stdio 2017增加SVN支持

    实验目的 当前公司项目源码文档等内容都保存在svn上,现在是用着小乌龟在文件浏览状态中去检出和提交等操作,没有集成到vs2017中来,比较麻烦.现在要把vs2017增加svn支持,希望可以直接在IDE ...

  2. [svc]简单理解什么是rpc调用?跟restapi有何区别?

    什么是rpc调用 restapi调用方式是对数据的crud. 常见的我们写flash写个api,或者借助django drf写个标准的resetapi,一个url可以借助httpget post pu ...

  3. 如何增加Ubuntu交换空间swap

    如何增加Ubuntu交换空间swap 1  使用命令查看系统内swap分区大小 green@green:~$ free -m total used free shared buff/cache ava ...

  4. 安装rosetta2016时出现git@172.16.25.11s password: \r\nPermission denied错误,解决方法。

    当在source目录执行 ./external/scons-local/scons.py -j8 mode=release bin 时,报错 git@.11s password: \r\nPermis ...

  5. Java基础(面试题)

    1:面向对象编程有很多重要的特性: 封装,继承,多态和抽象. 2:什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? (1)Java虚拟机是一个可以执行Java字节码的虚拟机进程.J ...

  6. 发布到FaceBook试玩广告,FaceBook要求要一个Html文件

    Facebook 试玩广告具体要求: 试玩广告参数是创建试玩广告素材时要满足的要求. 试玩素材应为 HTML5 格式. 试玩广告素材不应使用 mraid.js 格式. 包含所有素材的试玩广告的单个 H ...

  7. DDD关键知识点整理汇总

    创建领域对象采用构造函数或者工厂,如果用工厂时需要依赖于领域服务或仓储,则通过构造函数注入到工厂: 一个聚合是由一些列相联的Entity和Value Object组成,一个聚合有一个聚合根,聚合根是E ...

  8. Leetcode: Number Complement

    Given a positive integer, output its complement number. The complement strategy is to flip the bits ...

  9. 如何防止自己网站的图片被其他网站所盗用,从而导致自己网站流量的损失【apache篇】

    站图片被其他网站盗用的问题我想在业务逻辑代码上解决恐怕是有点困难的. 而apache上只需要简单的配置就可以解决这个问题. 解决方法: 1.确定你的apache加载了mod_setenvif模块(li ...

  10. asp.net 经常用到需要判断文本框是否输入的数字是小数,有无正负,几位小数,可以封装一起判断

    /// <summary> /// 判断是否为小数点数字且带符号 /// </summary> /// <param name="symbol"> ...