1.多文件之间的相互访问可以通过接口进行,每个文件可以定义功能接口(可被其他文件访问的函数或数据)
源文件:代码实现文件,后缀为.c 头文件:源文件的接口定义文件,后缀为.h,接口里面有函数声明和变量声明
当需要使用其他文件提供的功能时,包含对应的头文件 #include <header.h>或#include ”header.h“
两个使用头文件方式的区别:
(1)#include <header.h>是在编译系统文件中查找头文件,编译系统文件是存放在一个特定的文件夹中
(2)#include ”header.h“是先查找当前工程文件夹,再查找编译系统文件夹
2.每个.c文件编译后得到.o文件,链接后得到.exe文件
3.原则
(1)头文件中只做函数声明和变量声明,不做具体定义
(2)头文件中可定义数据类型(typedef、struct、union、enum)
(3)根据具体实现,一个头文件可对应多个源文件,但是多数情况是一对一
(4)不要使用#include语句包含源文件
4.全局变量分为普通全局变量和静态全局变量,源文件中定义的全局变量可在所有其他源文件中使用,可使用extern关键字在头文件中声明,并在其他文件使用,,但是static修饰的全局变量只能在当前源文件中使用 ,函数也是如此。
opm.c
int g_var=1;
static int f_var=2;
opm.h
extern int g_var;
extern int f_var; //声明全局变量时,不需要给出初始值
main.c
printf("g_var=%d\\n",g_var);
printf("f_var=%d\\n",f_var); //报错,因为无法直接使用其他文件中定义的静态全局变量
网硕互联帮助中心







评论前必须登录!
注册