简单的C语言多文件编程(课程设计) 文章仍在编辑中
一、头文件
总例:
#ifndef XXX_H
#define XXX_H
#include<stdio.h>
#include<string.h>
#include<conio.h>
#define StudentNumer 50
int XXXXX(void);
extern int number;
extern int sum;
struct student
{
int ID;
char name[10];
int Grades[7];
};
#endif //XXX.h
心血来潮,(ˇˍˇ) 想~记录下我对简单多文件编程的一些总结,希望对读者有所帮助,如果有错误,麻烦指出!感谢!
中头文件的作用(或者应该说要包含什么东西,该如何编写):
①声明该头文件本身,防止被重定义
<span style="font-family:Microsoft YaHei;">#ifndef XXX_H<span style="white-space:pre"> </span>//if not define 如果没有定义 XXX_H 头文件,则执行下述语句直到结束(#endif)
#define XXX_H<span style="white-space:pre"> </span>//<span style="white-space:pre"> </span>定义 XXX_H 头文件
#endif //XXX.h<span style="white-space:pre"> </span>//<span style="white-space:pre"> </span>结束</span>
②包含所需头文件
#include<stdio.h>
#include<string.h>
#include<conio.h>
那么,如果在C源代码中包含了 XXX_H ,就不需要再次包含已经包含的头文件,例如上例中 stdio.h 、string.h 、conio.h
③声明函数
在头文件中声明程序中所需的自定义函数,但(最好)将定义放在另外的C源文件中。
例中
<span style="font-family:Microsoft YaHei;">int XXXXX(void);<span style="white-space:pre"> </span>//声明 XXXXX函数,返回值为int型,无参</span>
④声明全局变量
在头文件中声明程序所需的全局变量,但最好不要在头文件中定义与赋值!
例中
<span style="font-family:Microsoft YaHei;">extern int number;<span style="white-space:pre"> </span>//声明全局变量 number 类型为 int
extern float sum;<span style="white-space:pre"> </span>//声明全局变量 sum 类型为 float</span>
⑤声明结构体(如果需要)
在头文件中声明程序所需的结构体,但不要定义。
struct student
{
int ID;
char name[10];
int Grades[7];
};
在C源文件中再定义结构体。例如 包含XXX_H头文件后,在C源文件中
<span style="font-family:Microsoft YaHei;">struct student a[50];<span style="white-space:pre"> </span>//定义a[50] 类型为 struct student</span>
⑥宏替换(需要的话)
#define StudentNumer 50<span style="white-space:pre"> </span>//宏替换 StudentNumber 为50