前两天在linux下写了一个小程序,后来想在windows下编译,方便调试。经过一通修改终于编译过去了。但是DEGUG时下的断点的行号总是不对,比如我下在timer函数的断点,在运行时会显示到另一个函数中。
出现这样的情况是因为我在linux写程序时加入了中文的注释,在windows下编译时会出以下的警告:
1>e:\new_work\win_projects\cam_demo\cam_demo\delay_timer.cpp : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
是windows不认这样的编码格式。解决方法就是把源代码中的中文注释删除,再重新编译。
跨平台编程挑战
本文讲述了作者在Linux下编写的小程序移植到Windows过程中遇到的问题及解决方案。主要问题是由于源代码中含有中文注释导致编译后的断点位置错误。解决办法是删除源代码中的中文注释并重新编译。
218

被折叠的 条评论
为什么被折叠?



