【问题解决】Keil报错:error: #8: missing closing quote

问题:

在vscode 里面编辑了代码,再用Keil编译报错:

..\..\User\SRC\.c(492): error:  #8: missing closing quote
  				sprintf(p,"杞?");

原因:

  1. vscode 使用的UTF-8编码,keil5不能识别UTF-8编码
  2. keil5 使用的 GB2312 编码:
    在这里插入图片描述

解决:

  • 方法一:
  1. 在Keil或者notepad++里面新建一个文件,使用simplified chinese(GB 2312)编码,把原来的代码复制进来,编译成功无问题。
  2. 要再用vscode编辑代码,切记先把编码格式切换成GB2312。
  3. 输入encoding搜索,Files:Encoding改为simplified chinese(GB 2312)
    在这里插入图片描述
  • 方法二:实测该方法能编译成功,但是程序编码的中文字显示会乱码
    在KEIL中Options for Target ‘工程文件夹’ -> C/C++ -> Misc Controls添加--locale=english
    在这里插入图片描述

  • 方法三实测该方法能编译成功,但是程序编码的中文字显示会乱码
    修改编码方式,改为UTF-8 with BOM
    在这里插入图片描述

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值