C++ 技术中心

   :: 首页 :: 联系 ::  :: 管理
  155 Posts :: 0 Stories :: 84 Comments :: 0 Trackbacks

公告

郑重声明:本BLOG所发表的原创文章,作者保留一切权利。必须经过作者本人同意后方可转载,并注名作者(天空)和出处(CppBlog.com)。作者Email:6549168@qq.com

留言簿(6)

搜索

  •  

最新随笔

最新评论

评论排行榜

编译VC++程序的时候出现如下提示警告:

warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss

因为只是一个warning,不影响正常编译,所以并没有引起大家多大的关注。我一开始的时候也是如此。但是后来出现的次数多了,发现这个警告和在程序Debug的时候
无法停在断点,刷刷刷就过去了根本无法进行Debug。而罪魁祸首就是这个warning,改正了这个warning就能进行Debug了。

下面讲述我是怎么消除这个警告的。

这个警告的意思是:在该文件中有一个或多个字符不是Unicode字符!要求把这个字符变成Unicode字符。

难题:在编译信息里并没有提示是哪个字符,或者是在哪一行里出现的该字符。查找起来非常的难,甚至是不可能的任务!

我在网络上找了好多资料都没有找到解决方法。因为大家都不注意这个不影响编译的警告。后来在一个国外的网站上找到了解决的方法。很简单,这个方法根本不需要知道具体是哪个字符在捣鬼!

解决方法:打开出现warning的文件,Ctrl+A全选,然后在文件菜单:file->advanced save options ,在弹出的选项中选择新的编码方式为:UNICODE codepage 1200 ,点击确定,问题就解决了。

posted on 2012-11-12 10:00 C++技术中心 阅读(2072) 评论(5)  编辑 收藏 引用 所属分类: Windows 编程

Feedback

# re: 关于warning C4819 2012-11-12 10:10 bukebushuo
我也经常碰到这种无法Debug的情况,至于是不是这个警告还真没注意到,下次遇到了研究下!
  回复  更多评论
  

# re: 关于warning C4819 2012-11-13 13:58 augustheart
话说,这个警告的后半句不就说了么……
Save the file in Unicode format to prevent data loss  回复  更多评论
  

# re: 关于warning C4819[未登录] 2012-11-16 09:28 岁月漫步
写的很好,差点错过了  回复  更多评论
  

# re: 关于warning C4819 2012-11-16 11:42 岁月漫步
这是我在C++博客里的第一个回复  回复  更多评论
  

# re: 关于warning C4819 2012-11-16 11:43 岁月漫步
原来CPP是CN的分站啊,搞糊涂了  回复  更多评论
  


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理