null character(s) ignored的解决方法

转载:http://yleesun.blog.163.com/blog/static/294134022012793594255/

解决向Linux移植时代码中中文乱码的方法 ( null character(s) ignored )

 在向linux移植过程中,肯定会遇到已有代码中的中文在linux下显示乱码的问题。下面是一种解决方法:
1.在windows上把代码修改成unicode编码。可以通过记事本打开该文件,再另存为unicode编码。如果文件比较多,可以借助批量修改文件编码工具进行修改。网上有此类小工具。
2.在linux打开修改编码后的文件,中文显示正常,无乱码。此时如果编译的话,会出现以下警告和错误:

plugintemplate/libs/lib_profiling.h:221:81: error: null character(s) ignored 

plugintemplate/libs/lib_profiling.h:221:83: error: null character(s) ignored 
plugintemplate/libs/lib_profiling.h:221:85: error: null character(s) ignored 
plugintemplate/libs/lib_profiling.h:221:87: error: null character(s) ignored 
In file included from plugintemplate/includes/sufcommun.h:21,                  
from plugintemplate/includes/default.h:51,                  from serverplugin_main.cpp:10:
 plugintemplate/libs/lib_profiling.h:149: error: expected unqualified-id before ‘/’ token 
plugintemplate/libs/lib_profiling.h:221: error: ‘e’ does not name a type

导致此问题的原因并非代码错误。是修改文件编码导致。可以通过以下方法解决:
新建一个空文档,再打开该文件,把该文件内容拷贝到新建的文档内。并命名该新建文档为该文件。即用一个新建到文档替换掉该文档。

你可能感兴趣的:(linux嵌入式)