补充编译警告

在实际的工程中,往往会出现callback函数的参数类型,定义和实际使用的并不一致。要注意强制类型转换。

在某个 struct 定义中使用了 union,而此 union 中定义了两个结构,第一个结构包含5个 UINT8 类型的成员,第二个结构包含1个指针类型成员,1个 UINT16 类型成员,1个 UINT8 类型成员。工程中两个结构都会使用到,而编译器无法知道程序使用的是 union 中的哪一个成员,默认为第一个。由此产生类型不匹配的编译警告,这里有产生错误的隐患。

编译警告

一个项目,编译出近千条warning。

大部分大部分大部分是下面这四条导致的。

      1)局部变量定义后使用前没有初始化。
      2)函数体在调用处后,调用前没有声明。
      3)类型转换。
      4)比较运算符两边变量的类型不同。