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

本文介绍了解决编译过程中出现的4819号警告的五种有效方法,包括转换文件编码格式、禁用特定警告、修改源文件等技术手段。

从同事那里拷来两个头文件,一编译就出现了这个警告。

想要消除这个警告,几个方法:

(1)转换Code文件为Unicode格式;
 
(2)在Project -> Properties -> Configuration Properties -> C/C++ -> Advance 的 Disable Specific Warnings 中添加相应的警告编号:4819;(我试过这个可以)
 
(3)或找出不符合Unicode格式的文件,然后在该文件的开始处加入下面的语句:
 
        # pragma warning (disable:4819)(这个尝试了没有解决)
 
(4)哪个文件出现这个警告错误,打开它, 用VS2010的查找替换功能,打开允许正则表达式选项,选择当前窗口,查找替换 \n 为 \n ,  然后,这个世界就清净了。原因: 查找的 \n 是跨平台的回车,替换的 \n 却是当前代码页的回车了。

(5)首先打开有该warning的文件,点击【文件】选【高级保存选项】,显示如下,或是其他别的编码格式,

现在开始改变编码格式为【简体中文(GB2312)- 代码页936】或【Unicode】,总之是适合自己的编码格式就行,如果使用unicode,一定要用带有签名的,

没有签名的试了也没有用。点击【确定】后保存,重新编译,warning消失。

转载于:https://www.cnblogs.com/hejing-swust/p/7794112.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值