在C语言家族程序中,头文件被大量使用。一般而言,每个C++程序通常由头文件和定义文件组成。头文件作为一种包含功能函数、数据接口声明的载体文件,主要用于保存程序的声明,而定义文件用于保存程序的实现。
头文件一般由四部分内容组成:
1、头文件开头处的版权和版本声明。
2、预处理块。
3、nline函数的定义。
4、函数和类结构声明等。
C/C++头文件--------------------------------------------------------------------------------
C、传统 C++
#i nclude <assert.h>//设定插入点
#i nclude <ctype.h> //字符处理
#i nclude <errno.h> //定义错误码
#i nclude <float.h> //浮点数处理
#i nclude <fstream.h>//文件输入/输出
#i nclude <iomanip.h>//参数化输入/输出
#i nclude <iostream.h> //数据流输入/输出
#i nclude <limits.h>//定义各种数据类型最值常量
#i nclude <locale.h>//定义本地化函数
#i nclude <math.h> //定义数学函数
#i nclude <stdio.h> //定义输入/输出函数
#i nclude <stdlib.h>//定义杂项函数及内存分配函数
#i nclude <string.h>//字符串处理
#i nclude <strstrea.h> //基于数组的输入/输出
#i nclude <time.h> //定义关于时间的函数
#i nclude <wchar.h> //宽字符处理及输入/输出
#i nclude <wctype.h>//宽字符分类
//////////////////////////////////////////////////////////////////////////
标准 C++ (同上的不再注释)
#i nclude <algorithm>//STL 通用算法
#i nclude <bitset> //STL 位集容器
#i nclude <cctype>
#i nclude <cerrno>
#i nclude <clocale>
#i nclude <cmath>
#i nclude <complex> //复数类
#i nclude <cstdio>
#i nclude <cstdlib>
#i nclude <cstring>
#i nclude <ctime>
#i nclude <deque>//STL 双端队列容器
#i nclude <exception>//异常处理类
#i nclude <fstream>
#i nclude <functional> //STL 定义运算函数(代替运算符)
#i nclude <limits>
#i nclude <list>//STL 线性列表容器
#i nclude <map> //STL 映射容器
#i nclude <iomanip>
#i nclude <ios> //基本输入/输出支持
#i nclude <iosfwd> //输入/输出系统使用的前置声明
#i nclude <iostream>
#i nclude <istream> //基本输入流
#i nclude <ostream> //基本输出流
#i nclude <queue>//STL 队列容器
#i nclude <set> //STL 集合容器
#i nclude <sstream> //基于字符串的流
#i nclude <stack>//STL 堆栈容器
#i nclude <stdexcept>//标准异常类
#i nclude <streambuf>//底层输入/输出支持
#i nclude <string> //字符串类
#i nclude <utility> //STL 通用模板类
#i nclude <vector> //STL 动态数组容器
#i nclude <cwchar>
#i nclude <cwctype>
using namespace std;
//////////////////////////////////////////////////////////////////////////
C99 增加
#i nclude <complex.h> //复数处理
#i nclude <fenv.h>//浮点环境
#i nclude <inttypes.h>//整数格式转换
#i nclude <stdbool.h> //布尔环境
#i nclude <stdint.h> //整型环境
#i nclude <tgmath.h> //通用类型数学宏
这是你要的
STDLIB.H说明一些常用的子程序:转换子程序、搜索/ 排序子程序等。
FCNTL.H定义在与open库子程序连接时的符号常量。
IO.H包含低级I/O子程序的结构和说明。
其它的如下:
ALLOC.H说明内存管理函数(分配、释放等)。
ASSERT.H定义 assert调试宏。
BIOS.H 说明调用IBM—PC ROM BIOS子程序的各个函数。
CONIO.H说明调用DOS控制台I/O子程序的各个函数。
CTYPE.H包含有关字符分类及转换的名类信息(如 isalpha和toascii等)。
DIR.H 包含有关目录和路径的结构、宏定义和函数。
DOS.H 定义和说明MSDOS和8086调用的一些常量和函数。
ERRON.H定义错误代码的助记符。
FCNTL.H定义在与open库子程序连接时的符号常量。
FLOAT.H包含有关浮点运算的一些参数和函数。
GRAPHICS.H 说明有关图形功能的各个函数,图形错误代码的常量定义,正对不同驱动程序的各种颜色值,及函数用到的一些特殊结构。
IO.H包含低级I/O子程序的结构和说明。
LIMIT.H包含各环境参数、编译时间限制、数的范围等信息。
MATH.H 说明数学运算函数,还定了 HUGE VAL 宏, 说明了matherr和matherr子程序用到的特殊结构。
MEM.H 说明一些内存操作函数(其中大多数也在STRING.H 中说明)。
PROCESS.H 说明进程管理的各个函数,spawn…和EXEC …函数的结构说明。
SETJMP.H定义longjmp和setjmp函数用到的jmp buf类型, 说明这两个函数。
SHARE.H定义文件共享函数的参数。
SIGNAL.H定义SIG[ZZ(Z] [ZZ)]IGN和SIG[ZZ(Z] [ZZ)]DFL常量,说明rajse和signal两个函数。
STDARG.H定义读函数参数表的宏。(如vprintf,vscarf函数)。
STDDEF.H定义一些公共数据类型和宏。
STDIO.H定义Kernighan和Ritchie在Unix System V 中定义的标准和扩展的类型和宏。还定义标准I/O 预定义流:stdin,stdout和stderr,说明 I/O流子程序。
STRING.H说明一些串操作和内存操作函数。
SYSSTAT.H 定义在打开和创建文件时用到的一些符号常量。
SYSTYPES.H说明ftime函数和timeb结构。
SYSTIME.H 定义时间的类型time[ZZ(Z] [ZZ)]t。
TIME.H 定义时间转换子程序asctime、localtime和gmtime的结构,ctime、 difftime、 gmtime、 localtime和stime用到的类型,并提供这些函数的原型。
VALUE.H定义一些重要常量, 包括依赖于机器硬件的和为与Unix System V相兼容而说明的一些常量,包括浮点和双精度值的范围。
最简单粗暴的理解就是:将别的文件中的代码插入指定位置。
-------------------------有耐心看下面的细述------------------------
1、最通俗的理解,头文件就是将别的文件里的代码插入到编程代码中的一种方式。它使用#include指令,比如“include "ABCD.h"”这个指令告诉编译器,我这儿要加入一些代码,这些代码在一个叫"ABCD.h"的文件中,将这个文件的内容直接全部插入到这一代所在位置就好。一般习惯于用.h或.hpp作为这类文件的扩展名。
2、这个功能的最主要的作用是,将一些现成的,固有的定义、函数、代码、引用等等引入到你的编程中来,你就不需要再进行这样一些重复的工作了。
3、在C++编程环境中,最典型的VC、BCB、TC……中,都必须以这样的将编程环境固有的一些函数、变量定义、引用等进行“预准备”否则一般级别的人就无法进行常规的编程,因为没有现成可用的函数、定义等。
4、高级别的有特殊需要的编程者可以自已编写相关的定义、函数,也可以修正修改环境固有的这类东西,这也正是C++强大的一个特点,同时也是它的麻烦所在(初学者常常不知道要引用哪些头文件)。
5、从事C++编程工作的人,自已编写的,认为常常要用到的一些函数,或定义,或习惯,也可以自已做成一个头文件,在编程中引用,这样可以减少很大的不必要的重复工作量。
本站内容仅供参考,不作为诊断及医疗依据,如有医疗需求,请务必前往正规医院就诊
祝由网所有文章及资料均为作者提供或网友推荐收集整理而来,仅供爱好者学习和研究使用,版权归原作者所有。
如本站内容有侵犯您的合法权益,请和我们取得联系,我们将立即改正或删除。
Copyright © 2022-2023 祝由师网 版权所有