Linux-4VS的C代码搬到Linux时的错误

1、for循环

   错误: 只允许在 C99 模式下使用‘for’循环初始化声明

   原因:你的C编译器不是C99标准

   解决办法:           

                for(int i=0;;);//正常格式

        改为

                int i;            //变量要单独声明!
                for(i=0;;);

   备注:你也不用纠结为什么,这只是人家规定的一个标准格式。


2、隐式声明与内建函数不兼容问题

    缺少了头文件:#include <string.h>

    同理,假如再报类似编译告警,一定要首先查看是否缺少了别的什么头文件,比如 <stdlib.h>

      https://blog.csdn.net/sunstars2009918/article/details/19471971

3、查看gcc版本

    gcc  --version

4、布尔类型

    不能是bool,改成  _Bool

    还是定义的标准规范,跟着人家标准走就是。

5、结构体

     声明结构体变量,也得加struct前缀!!!

     使用结构体类型变量时,好像也得加。。。好麻烦啊--

     另外,定义的结构体最好是大写的,好认。

     这和VS下的格式可能不一样。gcc比较呆板,呆板也有它的好处,唯一,快捷!


猜你喜欢

转载自blog.csdn.net/qq_28657577/article/details/80651467