Windows和Linux下编码不同带来的编译问题

今天编译一个项目,之前不太清楚这些代码都是在Linux下编写的,拿到代码后直接在Windows系统下进行编译.于是就出现了下来的一大堆错误:
Windows和Linux下编码不同带来的编译问题_第1张图片
折腾了一下午,也在网上查阅了许多类似问题的解决方案,但都没有找到具体的原因.后来无意间看到编码规则是"UTF-8 LF",查询到现在很多Windows系统下使用的是CRLF,于是重新定义了下文件的编码格式,可以成功编译运行程序.

注: CRLF, LF 是用来表示文本换行的方式。CR(Carriage Return) 代表回车,对应字符 ‘\r’;LF(Line Feed) 代表换行,对应字符 ‘\n’。由于历史原因,不同的操作系统文本使用的换行符各不相同。主流的操作系统一般使用CRLF或者LF作为其文本的换行符。其中,Windows 系统使用的是 CRLF, Unix系统(包括Linux, MacOS近些年的版本) 使用的是LF。

你可能感兴趣的:(走过的坑,windows,linux)