这个警告表明编译器在函数使用之前没有找到函数的显式声明或定义。这通常发生在函数被使用之前没有在当前文件中进行声明或定义,或者头文件未正确包含。
解决方式:
- 在当前文件中添加函数声明:在使用函数之前,在当前文件中添加函数的显式声明
- 确保正确包含头文件:如果函数定义在另一个文件中,则需要确保当前文件包含了包含函数声明的头文件。
如果说,头文件里我也定义了,在调用该函数的源文件中我也引了相关的头文件,还是报错怎么办?
这时候你需要检查一下是否使用下面的宏
#ifndef _TIMER_H
#define _TIMER_H
如果两个.h文件,比如pwm.h和timer.h文件都包括相同的宏,就会产生冲突,出现上述问题。
解决办法很简单,把其中一个.h文件的宏换掉就可以了,比如换成
#ifndef _TIMER2_H
#define _TIMER2_H