昨晚编译代码,发现报莫名其妙的错误,一些框架定义的东西都不能用,说是没定义,例如:
expected specifier-qualifier-list before u32 ,这里意思u32不是一个定义的数据类型。
然后不知所措,也在网上找了一些资料,例如:
1.头文件没有加#引用,导致出现 include <stdio.h>类似的情况会报错
2.有函数定义后面加了; 例如 void prinf(int);{}
3.就是一些地方没加;,但是这种情况一般不会导致大片的错误。
最后发现是由于在该文件中没有#include <typedef.h>,这个头文件在很多文件中都包含,我以为就不用包含了,因为其他地方包含了也会编译进去的,难道是文件编译有先后顺序还是每个文件要自己引用?待进一步确认。
所以发现了还有第四点:
4.可能是没有引用相关的结构定义的头文件。导致这些框架定义的结构报错没有定义。