(1)前段时间,学长讲解宏的一些知识 也提起了那个多文件编译,同过看别人的博客,自己也懂了一些,现在来总结一下这个多文件编译,其实和java里面的那个class的调用好像有联系
其定义即可以理解成:就是属于不同的C语言名字下,例如helo.c 还有 hell.c 这两个文件,然后互相调用彼此的函数,这就是自己理解的多文件编译;
下面是你编写完函数后,怎么调用函数得常规做法,在C-free下面编译的
1 #include<stdio.h> 2 #include<stdlib.h> 3 void func1(); //函数声明 4 void func2(); //函数声明 5 void func3(); //函数声明 6 int main() 7 { 8 printf("hello world! "); 9 func1(); 10 func2(); 11 func3(); 12 system("pause"); 13 return 0; 14 } 15 //函数实现 16 void func1() 17 { 18 printf("我是函数1 "); 19 } 20 void func2() 21 { 22 printf("我是函数2 "); 23 } 24 void func3() 25 { 26 printf("我是函数3 "); 27 }
这个是结果展示
这个程序所有的函数实现都在同一文件中,代码量很少,所以你能够看懂。假如代码量很多时,你会发现这样的程序调试很费力。
为了体现C语言模块化的编程思想,我们可不可以将上面3个函数func1,func2和func3的实现单独放在一个文件中呢?答案是肯定的
·······························然后方法(1)通过多文件编译的方法,来实现那个多文件编译
首先在C-free里面的菜单栏找到---- 工程,然后就点开---新建工程-----然后
选择第一个,编写好自己的工程名称,选好保存位置,点击确定
然后到了这个界面
选择第一个 后面的直接下一步就行了
然后你在菜单栏的 ---文件---那里找到---新建------但是注意把这个新建立的.c文件放在你刚刚建立的那个工程目录下面,
然后可以在建立.h文件,但是还注意,还是你把它放在你建立的工程文件夹下下面
例如编写的.h文件是,名字叫file.h
1 int max(int a,int b) 2 { 3 if(a>b) 4 return a; 5 else 6 return b; 7 8 }
然后建立一个main.c文件,
1 #include<stdio.h> 2 #include"file.h" 3 int main() 4 { 5 int c= max(3,4); 6 printf("%d ",c); 7 return 1; 8 9 }
注意在上面的头文件那里加入了#include“file.h”
这个就是简单的多文件编译