头文件到底如何理解?

作者&投稿:宰父舍 (若有异议请与网页底部的电邮联系)
谁能通俗的解释下c语言中头文件到底是什么东西?该怎么用?~

头文件里包含一些函数 如果你没生明包含此头文件 就不能用这些函数
比如 stdio.h 里面就包含printf()
#include 这样用 需要在代码的开头使用

书本上说的东西并非总是对的。

所谓头文件,实际上只是一个程序中的一部份文字内容,只不过 写在另一个文件里。
编译时把相应的文件插在 #include 。。。那里罢了。

所以 所谓头文件,里面什么都可以写 !

举个例子:
程序名 a.c, 内容 3行如下:
#include
#include "a1.h"
#include "a2.h"

头文件1 名 a1.h, 内容3行如下:
typedef struct st {
float x;
float y;

头文件2 名 a2.h, 内容:
}ST;
ST st={1.2,2.3};
main(){
printf("%f %f
",st.x,st.y);
return 0;
}

好了,把它们放在同一个文件夹。现在你可以编译 a.c
然后 运行 a.exe
你得到结果:
1.200000 2.300000

这告诉你 头文件 的 真正含义 了。
书上说的 什么“规则” 不“规则” 的,能理解就理解,不理解也没什么。

在C语言家族程序中,头文件被大量使用。一般而言,每个C++/C程序通常由头文件(header files)和定义文件(definition files)组成。头文件作为一种包含功能函数、数据接口声明的载体文件,用于保存程序的声明(declaration),而定义文件用于保存程序的实现 (implementation)。
C++/C程序的头文件以“.h”为后缀。以下是假设名称为 graphics.h的头文件:

#ifndef GRAPHICS_H (作用:防止graphics.h被重复引用)

#define GRAPHICS_H

#include.... (作用:引用标准库的头文件)

...

#include... (作用:引用非标准库的头文件)

...

void Function1(...); (作用:全局函数声明)

...

class Box (作用:类结构声明)

{

...

};

#endif

从以上例子可以看出,头文件一般由三部分内容组成:(1)头文件开头处的版权和版本声明;(2)预处理块;(3)函数和类结构声明等。在头文件中,用 ifndef/define/endif结构产生预处理块,用 #include 格式来引用库的头文件。头文件的这种结构,是利用C语言进行开发软件所通常具备的,属于公有知识。

一般在一个应用开发体系中,功能的真正逻辑实现是以硬件层为基础,在驱动程序、功能层程序以及用户的应用程序中完成的。根据以上示例,可以发现头文件的主要作用在于调用库功能,对各个被调用函数给出一个描述,其本身不包含程序的逻辑实现代码,它只起描述性作用,告诉应用程序通过相应途径寻找相应功能函数的真正逻辑实现代码。用户程序只需要按照头文件中的接口声明来调用库功能,编译器会从库中提取相应的代码。

从以上结构图来看,头文件是用户应用程序和函数库之间的桥梁和纽带。在整个软件中,头文件不是最重要的部分,但它是C语言家族中不可缺少的组成部分。做一个不算很恰当的比喻,头文件就像是一本书中的目录,读者(用户程序)通过目录,可以很方便就查阅其需要的内容(函数库)。在一本书中,目录固然重要,但绝对不是一本书的核心的、最重要的部分。

总的来说,当你引入一个头文件的时候,你就间接的使用了头文件的内容,例如其中的定义,声明等。你可以把#include <XXX.h>想象成把XXX.h这个文件的内容复制粘贴到当前文件来。其实,从编译器的角度来说,它也的确是这样做的,编译器每遇到#include <XXX.h>就会先去读XXX.h这个文件,并记住其中的内容,然后再回头来处理当前文件。
头文件的作用是:函数的声明,结构的定义。还有就是使用头文件可以使得程序更加的简洁明了

打个比方,就像AVI格式的视频吧,它的头文件就是告诉播放器(KMPLAYER之类的)我后面是什么类型的数据流,应该调用什么解码器。。。讲法比较通俗,有欠科学,但希望有助于你的理解


到底文件是什么
所谓“文件”,就是在我们的电脑中,以实现某种功能、或某个软件的部分功能为目的而定义的一个单位。………秀才此生最引以为傲的就是我的比喻能力。~文件好比积木 一堆积木堆在那,没有什么意义 软件就好比搭积木,把各类文件有机的结合,改造,创新,拼接 最后就把积木做成了变形金刚 变形金刚可以哄...

头文件到底如何理解?
从以上结构图来看,头文件是用户应用程序和函数库之间的桥梁和纽带。在整个软件中,头文件不是最重要的部分,但它是C语言家族中不可缺少的组成部分。做一个不算很恰当的比喻,头文件就像是一本书中的目录,读者(用户程序)通过目录,可以很方便就查阅其需要的内容(函数库)。在一本书中,目录固然重要,...

windows中都有那些类型的文件?他们具体的含义是什么?
bak 备份文件,一般是被自动或是通过命令创建的辅助文件,它包含某个文件的最近一个版本,并且具有于该文件相同的文件名 bas Basic 语言源程序文件,可编译成可执行文件,目前使用Basic开发系统的是Visual Basic bat 批处理文件,在MS-DOS中,.bat文件是可执行文件,有一系列命令构成,其中可以包含对其他程序的调用 bbs 电...

ISO程序文件与作业指导书到底该如何界定?
程序文件是从一级文件中引出来的文件,而作业指导书是在程序文件的指引下形成,或者是在产品特性的要求下形成,有局限性,可以将程序文件定为2级或者B级文件,将作业指导书定为3级一类和3级二类或者C级一类和C级二类文件,一类为程序文件中应用的相关制度或者其他的规定等,二类文件为产品的作业指导书或者检验...

c语言怎么理解文件的输入输出相当于读和写?这两个一直搞反
目的就是把程序产生的数据给保存出来,也就是存储到硬盘上。因此,从这个角度去看文件读写就可以这样理解了,写文件就是创建文件,当然也可以向创建成功的文件中添加数据,读文件当然是从已经创建好的文件中取数据。希望可以帮到你。望采纳 当然是站在文件的角度啊。

什么是文件后缀
txt为扩展名(文本、外语全称:Text),表示这个文件是一个纯文本文件。一个文件可以有或没有扩展名。对于打开文件操作,没有扩展名的文件需要选择程序去打开它,有扩展名的文件会自动用设置好的程序去尝试打开,文件扩展名是一个常规文件的构成部分,但一个文件并不一定需要一个扩展名。

delphi7中,dcp文件和dpl文件到底是什么意思?
package英文翻译过来就是“包”。如果 某个控件包 A 引用了 控件包 B,当 控件包 A 编译时,需要 控件包 B.dcp,若 控件包 B 有修改,更改了公开的介面,则 控件包 A 必须在 控件包 B 编译之后重新编译,以引用新的 B.dcp。否则,当 控件包 A 执行时,执行到引用自 控件包 B 的内容时...

政府里经常有文件里写纵向到底,横向到边,怎么理解政府部门的横向和纵...
1. 该句话用于描述建立组织管理网络的全面性。2. "纵向到底"指从最高层到最基层的组织,如从国家到乡镇、社区。3. "横向到边"指政府涵盖的所有相关部门和单位,包括政府部门、国有企业、群团组织等。

文件扩展名到底有多少种,都是什么意思啊?
ABS 该类文件有时用于指示一个摘要(就像在一篇有关科学方面的文章的一个摘要或概要,取自abstract) ACE Ace压缩档案格式 ACL CorelDRAW 6键盘快捷键文件 ACM Windows系统目录文件 ACP Microsoft office助手预览文件 ACR 美国放射医学大学文件格式 ACT Microsoft office助手文件 ACV OS\/2的驱动程序,用于压缩或解压缩音频...

...signal_name" Attribute;,这几个到底怎么理解?
首先INST是例化的意思,NET是网络名的意思,PIN是管脚的意思。INST "I_ADC1_PB<0>" TNM = ADC1_PB;--- 这是将I_ADC1_PB<0>这个信号约束到名为ADC1_PB的组里,然后可以对整个组的信号进行时序约束 --- NET gpio_char_lcd<3> LOC = AF12;---...

班玛县15926213060: 头文件到底如何理解? -
利视生脉: 在C语言家族程序中,头文件被大量使用.一般而言,每个C++/C程序通常由头文件(header files)和定义文件(definition files)组成.头文件作为一种包含功能函数、数据接口声明的载体文件,用于保存程序的声明(declaration),而定义文...

班玛县15926213060: 这么解释头文件对不对? -
利视生脉: 头文件的作用:你可以理解为C/C++把代码分类存放了.头文件(即.h为后缀的文件)中存放的是函数的声明,或者是全局变量的声明.源文件(即.c或.cpp为后缀的文件)中存放的是函数的具体定义.举个例子:在工具箱里放了许多工具,头文件相当于工具名单,告诉你可以用的是那些工具.源文件就是每个工具的具体用法,也就是工具的说明.这两者是一起的.当我们需要用的时候,直接拿到名单选取工具,就可以实现工具的功能了.不明白再追问吧.理解了就很简单了.

班玛县15926213060: C语言头文件是什么 -
利视生脉: 在C语言家族程序中,头文件被大量使用. 一般而言,每个C++/C程序通常由头文件(header files)和定义文件(definition files)组成. 头文件作为一种包含功能函数、数据接口声明的载体文件,主要用于保存程序的声明(declaration),而定义文件用于保存程序的实现 (implementation). C++/C程序的头文件以“.h”为后缀. 在程序中,可以使用include 预编译命令引用头文件,如: #include <stdio.h>

班玛县15926213060: 单片机程序有哪几部分组成?头文件的作用是什么? -
利视生脉: 头文件,变量声明,函数声明,子函数,主函数这几部分组成,头文件其实就是一种声明,将单片机中的一些常用的符号变量进行定义声明,对一些特殊功能寄存器进行声明,对一些关健字进行定义,比如我们常用的P0口,在写程序的时候你就不用在去定义这个符号,不用把它的字节地址给这个符号了,直接用就可以

班玛县15926213060: 谁能通俗的解释下c语言中头文件到底是什么东西?该怎么用? -
利视生脉: 头文件里包含一些函数 如果你没生明包含此头文件 就不能用这些函数 比如 stdio.h 里面就包含printf() #include <头文件名> 这样用 需要在代码的开头使用

班玛县15926213060: c语言头文件怎么理解
利视生脉: 不一定要全部记住,只要常见的几个,记住哪个函数有什么功能,在哪个头文件里,用此功能的话,调用头文件就行.在头文件库里就有所有的头文件

班玛县15926213060: c语言 头文件怎么解释··!? -
利视生脉: C语言先声明,再使用.但是,有的函数啊,变量啊等并不是按顺序调用的.这个时候就需要把这些函数什么的给列到代码的最前面(至少把函数名写完).这个时候,在使用的时候就可以随意了.还有就是,某些函数可以是多文件使用的,弄到头文件里就可以共用了,方便.

班玛县15926213060: 通俗解释一下“头文件”和“定义文件”是什么,有什么关系
利视生脉: 头文件:在整个软件中,头文件不是最重要的部分,但它是C语言家族中不可缺少的组成部分.做一个不算很恰当的比喻,头文件就像是一本书中的目录,读者(用户程序)通过目录,可以很方便就查阅其需要的内容(函数库). 定义文件: 一种帮助检测有害的或不需要的软件并阻止它在计算机上安装或运行的文件.

班玛县15926213060: C++ 里面的头文件是什么意思,具体,好评 -
利视生脉: 一、C++编译模式 通常,在一个C++程序中,只包含两类文件——.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码;而.h文件则被称作C++头文件,里面放的也是C++的源代码.C+ +语言支持“分别编译”(...

班玛县15926213060: C\C++头文件的作用 -
利视生脉: 1、在C语言中,头文件是程序各部分之间保证信息一致性的桥梁,是连接程序对象定义和使用的纽带.以.h为扩展名的辅助性文件,也称为头文件;以.c为扩展名的基本程序文件,也称为源代码文件.2、用于指定模块接口的声明放在文件中,...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网