龙空技术网

C语言的开始:源文件,头文件

潜在水中 206

前言:

此时大家对“c语言头文件是什么”大致比较关心,看官们都需要分析一些“c语言头文件是什么”的相关内容。那么小编同时在网络上汇集了一些对于“c语言头文件是什么””的相关资讯,希望兄弟们能喜欢,同学们一起来学习一下吧!

任何C程序最终都是要写在文件上面,通常分两种,源文件和头文件,不是每个程序都有头文件,比如一些简单小程序就没有。

源文件根据惯例,通常扩展名为.C,但是能否用其他扩展名吗?查了一些资料,得到的答案是:尽管标准并没有制定文件的取名规则,但大多数环境都存在你必须遵守的文件名命令约定。

头文件根据惯例,通常扩展名为.h。通常是一个源文件对应一个的头文件,并且两个文件名相同,只是扩展名不同。我一直有个疑惑,就是可以让源文件和头文件两个文件名不同吗?经过亲自折腾一下,确是可以的。经过细想,原因如下:头文件只是用于共享宏、变量、函数等的。而且#include的语义是把对应的文件包含进来,至于包含的文件是什么名字并不重要,要不要和源文件名相同也不重要,如果非要一样,反而限制了#include的能力。另外C99标准中有这样关#include有这样一句话:A #include directive shall identify a header or source file that can be processed by the implementation.也就是说指要编译器支持的文件,#include指令应该都可以包含。一般编译器的功能都挺强大,足够满足我们需求,至于遇到特殊情况的大佬,大佬也会自行解决。

聊到头文件 那就有必要对#include指令进行说明:

#include指令常用格式如下:

#include <fileName>, #include "fileName" #include token(这里token一般指宏的名字)

如果在源文件#include包含有一个static变量或函数的定义的头文件,那么这个源文件也可以访问这个static变量或函数。原因就是这个源文件把对应的文件包含进来,那这些static变量或函数就相当于在这个源文件中定义,当然源文件就可以访问了。

最后,来说一个如何对一个C项目的文件管理作出划分:

通常我们一个项目会有很多函数、变量、宏等元素,我们会根据相关维度进行划分,比如功能。把同一个功能用到的相关函数、变量、宏放在同一个源文件中,并创建一个和源文件同名的头文件,头文件里面放置要共享的函数原型,变量声明,宏定义。这样这个头文件就可以被其他源文件使用。最后main函数的将出现在某个源文件中,这个文件的名字与我们项目的名字应该相同。项目的名字一般就是我们想要编写的程序的名字。

标签: #c语言头文件是什么