main()怎么引用另一个文件的函数?
举个例子吧:两个文件 main.c function.c
我们在function.c 中写一个函数 func();
与此同时,我们需要写一个.h文件来声明这个函数,即function.h
// 以下是function.h 的内容
#ifndef __FUNCTION_H__
#define __FUNCTION_H__
void func();
#endif
// 以下是function.c 的内容
#include "function.h"
void func()
{
// do something
}
这样一来,我们想要在另外一个文件,也就是main.c 中调用这个函数的时候,只需要包含它对应的头文件,就可以直接调用了。
// 以下是main.c 的内容
#include "stdio.h"
#include "function.h"
int main()
{
func();
return 0;
}
可以这样写int main(void)。
一、main.c想调用pri.c中void fun()函数,在pri.h中声明extern void fun()为全局函数,main.c中#include pri.h。
二、 //fun1.cfun1(){...}//fun2.cc#include"fun1.c"fun2(){fun1();....}//main.c#include"fun1.c"#include"fun2.c"int main(){fun1();fun2()}在预编译时fun1.c文件中的内容会替换#include"fun1.c",fun2.c中的内容会替换#include"fun2.c",从而fun()出现两次。
三、若有文件main.c和bsp_led.c,bsp_led.c中有函数void led_gpio_config()。如果main.c需要引用bsp_led.c中的void led_gpio_config()函数,则需要新建一个bsp_led.h,在bsp_led.h中将所有bsp_led.c函数进行声明。
四、如在bsp_led.c中有函数void led_gpio_config(),则在bsp_led.h中声明如下:void led_gpio_config()。然后在main.c中 include"bsp_led.h" 即可。
五、main.c和bsp_led.c并非一个文件,main.c需要引用bsp_led.c中的void
led_gpio_config()函数,为何只需要在main.c中#include"bsp_led.h",而没有bsp_led.c中的函数。