C++什么是头文件?.c文件和.h文件
Posted 久病成良医
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++什么是头文件?.c文件和.h文件相关的知识,希望对你有一定的参考价值。
通常,在一个C程序中,只包含两类文件——.c文件和.h文件。
C支持“分别编译”(separate compilation)。也就是说,一个程序所有的内容,可以分成不同的部分分别放在不同的.c文件里。.c文件里的东西都是相对独立的,在编译(compile)时不需要与其他文件互通,只需要在编译成目标文件后再与其他的目标文件做一次链接(link)就行了。
所谓的头文件,其实它的内容跟.c文件中的内容是一样的,都是C的源代码。但头文件不用被编译。我们把所有的函数声明全部放进一个头文件中,当某一个.c源文件需要它们时,它们就可以通过一个宏命令 “#include”包含进这个.c文件中,从而把它们的内容合并到.c文件中去。当.c文件被编译时,这些被包含进去的.h文件的作用便发挥了。
举一个例子吧,假设所有的数学函数只有两个:f1和f2,那么我们把它们的定义放在math.c里:
/* math.c */
double f1()
{
//do something here….
return;
}
double f2(double a)
{
//do something here…
return a * a;
}
/* end of math.c */
并把“这些”函数的声明放在一个头文件math.h中:
/* math.h */
double f1();
double f2(double);
/* end of math.h */
在另一个文件main.c中,我要调用这两个函数,那么就只需要把头文件包含进来:
/* main.c */
include “math.h”
main()
{
int number1 = f1();
int number2 = f2(number1);
}
/* end of main.c */
这样,便是一个完整的程序了。需要注意的是,.h文件不用写在编译器的命令之后,但它必须要在编译器找得到的地方(比如跟main.c在一个目录下)。 main.c和math.c都可以分别通过编译,生成main.o和math.o,然后再把这两个目标文件进行链接,程序就可以运行了。
以上是关于C++什么是头文件?.c文件和.h文件的主要内容,如果未能解决你的问题,请参考以下文章
在c++语言#include<math.h>当中包含有啥函数