关于Keil警告warning: #870-D: invalid multibyte character sequence,心得笔记

今天在移植程序的时候遇到了这个警告:warning:  #870-D: invalid multibyte character sequence报错信息如图

刚开始以为事公司的内部软件导致此问题,排除之后重装Keil也未能解决,网上搜索到了一个办法:在文件中加入#pragma diag_suppress 870语句让编译器不输出 #870类型的警告,问题算是解决了,但是想想治标不治本,于是继续排查。

最后解决办法是在KEIL中将文件全选复制,打开文件所在路径

用文本编辑器打开此c文件,并将文件编码改为GB2312编码

修改完编码后会发现之前的中文变成乱码了(这个就是警告原因)

在此状态下全选此文件内容然后粘贴刚刚在Keil中复制的内容,保存,关闭文本编辑器,切回Keil,让Keil重新加载此文件

再重新进行编译操作,会发现没有警告信息了

问题解决。

想了想导致这个问题的原因大概是我的KEIL中设置的编码类型是GB2312类型,有可能前辈在写这个文件的时候用的是ANSI编码,然后在这个ANSI编码的文件中加入了中文,所以我用GB2312格式读取此文件时就会出现此问题

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值