前两天在linux下写了一个小程序,后来想在windows下编译,方便调试。经过一通修改终于编译过去了。但是DEGUG时下的断点的行号总是不对,比如我下在timer函数的断点,在运行时会显示到另一个函数中。
出现这样的情况是因为我在linux写程序时加入了中文的注释,在windows下编译时会出以下的警告:
1>e:\new_work\win_projects\cam_demo\cam_demo\delay_timer.cpp : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
是windows不认这样的编码格式。解决方法就是把源代码中的中文注释删除,再重新编译。