我们通常在完成一个程序时,往往习惯将程序写为多文件的,这样就能实现程序的模块化管理,以及分工开发合作。而一些全局变量,全局函数,结构体等就能使各模块联系在一起。
在平常大家写代码的过程中,通常会使用文件包含来联系各代码文件,当然初学者也可能会直接写成多文件程序,没有文件包含,这样也能编译、运行。
在这里,写了一些小段的测试代码,来说明:包含.c文件,,直接多文件,
包含.h文件
三种方式的区别与应用。
1.包含.c文件
可能有人不习惯写.h文件,而直接将代码写在.c文件中,其他文件要调用函数则直接包含.c文件。正如下面一段代码:
//fun.c int h = 0; int cal(int a, int b) { return (2*a+3*b); } //main.c #include "stdio.h" #include "fun.c" //包含.c文件 int main(void) { h = 1; //直接使用fun.c中的变量 int i = 1,j = 2; int c = 0; c = cal(i, j); //直接调用fun.c中的函数 printf("%d\n", c); return 0; }
编译:gcc main.c -o main 直接编译通过,运行正确。
我们再看一个测试程序:
//fun.c int h = 0; int cal(int a, int b) { return (2*a+3*b); } //fun1.c #include "fun.c