在crc.c文件里定义了这么一个函数,crc.h文件里也只有这个函数的声明。
u16 getCRC16(vola
tile u8 *ptr, u8 len);
在另一个.c文件里的某个函数调用该函数,并在.c文件开始时#include crc.h。不过第一个参数给的是16位数组的指针。
编译时,提示错误:
....Userspi.c(111): error: #167: argument of type "u16 *" is incompatible with parameter of type "u8 *"
然后,在主程序main.c里,加入include "crc.h",编译就通过了。
请教:main.c里并没有直接调用 getCRC16(),为何加入了相应的头文件就可以编译了?
-------------------------------------------------------------
更新上传下工程文件.
还是想不通,为什么在main.c里 include "crc.h"后编译能通过?
其实error#167是一个非常负责的错误提示,早期编译器可能不会在这个上面处理的那么细致。你看即使现在处理了也很难处理完整。
一周热门 更多>