Linux~~头文件

来源:http://www.cnblogs.com/dubingsky/archive/2009/07/09/1519536.html

1、 一些头文件的作用:
<assert.h>:ANSI C。提供断言,assert(表达式)
<glib.h>:GCC。GTK,GNOME的基础库,提供很多有用的函数,如有数据结构操作函数。使用glib只需要包含<glib.h>
<dirent.h>:GCC。文件夹操作函数。struct dirent,struct DIR,opendir(),closedir(),readdir(),readdir64()等
<ctype.h>:ANSI C。字符测试函数。isdigit(),islower()等
<errno.h>:ANSI C。查看错误代码errno是调试程序的一个重要方法。当linuc C api函数发生异常时,一般会将errno变量(需include errno.h)赋一个整数值,不同的值表示不同的含义,可以通过查看该值推测出错的原因。在实际编程中用这一招解决了不少原本看来莫名其妙的问题。比较麻烦的是每次都要去linux源代码里面查找错误代码的含义,现在把它贴出来,以后需要查时就来这里看了。来自linux 2.4.20-18的内核代码中的/usr/include/asm/errno.h
<getopt.h>:处理命令行参数。getopt()

2、
-------------------------
linux常用头文件如下:
POSIX标准定义的头文件
<dirent.h> 目录项
<fcntl.h> 文件控制
<fnmatch.h> 文件名匹配类型
<glob.h> 路径名模式匹配类型
<grp.h> 组文件
<netdb.h> 网络数据库操作
<pwd.h> 口令文件
<regex.h> 正则表达式
<tar.h> TAR归档值
<termios.h> 终端I/O
<unistd.h> 符号常量
<utime.h> 文件时间
<wordexp.h> 字符扩展类型
-------------------------
<arpa/inet.h> INTERNET定义
<net/if.h> 套接字本地接口
<netinet/in.h> INTERNET地址族
<netinet/tcp.h> 传输控制协议定义
------------------------- 
<sys/mman.h> 内存管理声明
<sys/select.h> Select函数
<sys/socket.h> 套接字借口
<sys/stat.h> 文件状态
<sys/times.h> 进程时间
<sys/types.h> 基本系统数据类型
<sys/un.h> UNIX域套接字定义
<sys/utsname.h> 系统名
<sys/wait.h> 进程控制
------------------------------
POSIX定义的XSI扩展头文件
<cpio.h> cpio归档值 
<dlfcn.h> 动态链接
<fmtmsg.h> 消息显示结构
<ftw.h> 文件树漫游
<iconv.h> 代码集转换使用程序
<langinfo.h> 语言信息常量
<libgen.h> 模式匹配函数定义
<monetary.h> 货币类型
<ndbm.h> 数据库操作
<nl_types.h> 消息类别
<poll.h> 轮询函数
<search.h> 搜索表
<strings.h> 字符串操作
<syslog.h> 系统出错日志记录
<ucontext.h> 用户上下文
<ulimit.h> 用户限制
<utmpx.h> 用户帐户数据库 
-----------------------------
<sys/ipc.h> IPC(命名管道)
<sys/msg.h> 消息队列
<sys/resource.h>资源操作
<sys/sem.h> 信号量
<sys/shm.h> 共享存储
<sys/statvfs.h> 文件系统信息
<sys/time.h> 时间类型
<sys/timeb.h> 附加的日期和时间定义
<sys/uio.h> 矢量I/O操作
------------------------------
POSIX定义的可选头文件
<aio.h> 异步I/O
<mqueue.h> 消息队列
<pthread.h> 线程
<sched.h> 执行调度
<semaphore.h> 信号量
<spawn.h> 实时spawn接口
<stropts.h> XSI STREAMS接口
<trace.h> 事件跟踪

3、 C/C++头文件一览
C
#include <assert.h>    //设定插入点
#include <ctype.h>     //字符处理
#include <errno.h>     //定义错误码
#include <float.h>     //浮点数处理
#include <iso646.h> //对应各种运算符的宏
#include <limits.h>    //定义各种数据类型最值的常量
#include <locale.h>    //定义本地化C函数
#include <math.h>     //定义数学函数
#include <setjmp.h> //异常处理支持
#include <signal.h> //信号机制支持
#include <stdarg.h> //不定参数列表支持
#include <stddef.h> //常用常量
#include <stdio.h>     //定义输入/输出函数
#include <stdlib.h>    //定义杂项函数及内存分配函数
#include <string.h>    //字符串处理
#include <time.h>     //定义关于时间的函数
#include <wchar.h>     //宽字符处理及输入/输出
#include <wctype.h>    //宽字符分类

传统C++
#include <fstream.h>    //改用<fstream>
#include <iomanip.h>    //改用<iomainip>
#include <iostream.h>   //改用<iostream>
#include <strstrea.h>   //该类不再支持,改用<sstream>中的stringstream
————————————————————————————————

标准C++ 
#include <algorithm>    //STL 通用算法
#include <bitset>     //STL 位集容器
#include <cctype> //字符处理
#include <cerrno>      //定义错误码
#include <cfloat>     //浮点数处理
#include <ciso646> //对应各种运算符的宏
#include <climits>     //定义各种数据类型最值的常量
#include <clocale>     //定义本地化函数
#include <cmath>      //定义数学函数
#include <complex>     //复数类
#include <csignal> //信号机制支持
#include <csetjmp> //异常处理支持
#include <cstdarg> //不定参数列表支持
#include <cstddef> //常用常量
#include <cstdio>      //定义输入/输出函数
#include <cstdlib>     //定义杂项函数及内存分配函数
#include <cstring>     //字符串处理
#include <ctime>      //定义关于时间的函数
#include <cwchar>      //宽字符处理及输入/输出
#include <cwctype>     //宽字符分类
#include <deque>      //STL 双端队列容器
#include <exception>    //异常处理类
#include <fstream>     //文件输入/输出
#include <functional>   //STL 定义运算函数(代替运算符)
#include <limits>      //定义各种数据类型最值常量
#include <list>      //STL 线性列表容器
#include <locale> //本地化特定信息
#include <map>       //STL 映射容器
#include <memory> //STL通过分配器进行的内存分配
#include <new> //动态内存分配
#include <numeric> //STL常用的数字操作
#include <iomanip>     //参数化输入/输出
#include <ios>       //基本输入/输出支持
#include <iosfwd>     //输入/输出系统使用的前置声明
#include <iostream>    //数据流输入/输出
#include <istream>     //基本输入流
#include <iterator> //STL迭代器
#include <ostream>     //基本输出流
#include <queue>      //STL 队列容器
#include <set>       //STL 集合容器
#include <sstream>     //基于字符串的流
#include <stack>      //STL 堆栈容器
#include <stdexcept>    //标准异常类
#include <streambuf>    //底层输入/输出支持
#include <string>     //字符串类
#include <typeinfo> //运行期间类型信息
#include <utility>     //STL 通用模板类
#include <valarray> //对包含值的数组的操作
#include <vector>     //STL 动态数组容器
————————————————————————————————

C99增加的部分
#include <complex.h>   //复数处理
#include <fenv.h>    //浮点环境
#include <inttypes.h>  //整数格式转换
#include <stdbool.h>   //布尔环境
#include <stdint.h>   //整型环境
#include <tgmath.h>   //通用类型数学宏



上面的好像不是很全     可以参考下面的.h 。。。




aio.h 异步I/O
assert.h 验证程序断言 
complex 复数类
complex.h 复数处理
cpio.h cpio归档值 
ctype.h 字符类型 
dirent.h 目录项,opendir(),closedir(),readdir(),readdir64()
dlfcn.h 动态链接
errno.h 出错码 
exception 异常处理类
fcntl.h 文件控制 
fenv.h 浮点环境
float.h 浮点常数 
fmtmsg.h 消息显示结构
fnmatch.h 文件名匹配类型
fstream.h 文件输入/输出
ftw.h 文件树漫游
getopt.h 处理命令行参数,getopt()
glob.h 路径名模式匹配类型
grp.h 组文件
iconv.h 代码集转换使用程序
inttypes.h 整数格式转换
iomanip.h 参数化输入/输出
ios 基本输入/输出支持
iosfwd 输入/输出系统使用的前置声明
iostream.h 数据流输入/输出
istream 基本输入流
langinfo.h 语言信息常量
libgen.h 模式匹配函数定义
limits.h 定义各种数据类型最值常量
locale.h 定义本地化函数
math.h 定义数学函数
monetary.h 货币类型
mqueue.h 消息队列
ndbm.h 数据库操作
nl_types.h 消息类别
ostream 基本输出流
poll.h 轮询函数
pthread.h 线程
pwd.h 口令文件
regex.h 正则表达式
sched.h 执行调度
search.h 搜索表
semaphore.h 信号量
signal.h 信号 
spawn.h 实时spawn接口
sstream 基于字符串的流
stdarg.h 可变参数表 
stdbool.h 布尔环境
stddef.h 标准定义 
stdexcept 标准异常类
stdint.h 整型环境
stdio.h 标准I/O库 
stdlib.h 公用函数 
streambuf 底层输入/输出支持
string.h 字符串操作
stropts.h XSI STREAMS接口
strstrea.h 基于数组的输入/输出
syslog.h 系统出错日志记录
tar.h tar归档值 
termios.h 终端I/O 
tgmath.h 通用类型数学宏 
time.h 时间和日期 
trace.h 事件跟踪
ucontext.h 用户上下文
ulimit.h 用户限制 
unistd.h 符号常数 
utime.h 文件时间 
utmpx.h 用户帐户数据库
wchar.h 宽字符处理及输入/输出
wctype.h 宽字符分类
wordexp.h 字符扩展类型

linux/if.h 主要的socket头文件,包括ifreq,ifconf,ifmap
linux/if_packet.h 原始数据包的数据结构定义,包括sockaddr_pkt,sockaddr_ll,同理的还有if_ppp.h,if_tun.h等等
linux/ip.h iphdr的数据结构,以及一些ip层的数据定义,同理的还有tcp.h,udp.h等等

arpa/inet.h INTERNET定义
netdb.h hostent,gethostbyname
net/bpf.h berkeley的数据包过滤头文件
net/ethernet.h ether_addr,ether_header
net/if.h 套接字本地接口
netinet/ether.h 以太祯的网络字节和ascii字节的转换,包括ether_ntoa(),ether_aton这样的函数定义
netinet/if_ether.h ether_arp的数据结构
netinet/in.h ip,结构sockaddr_in,ntoh,hton
netinet/ip.h iphdr的数据结构,同时还包括了timestamp结构
netinet/tcp.h 传输控制协议定义

sys/ipc.h IPC 
sys/mman.h 内存管理声明
sys/msg.h 消息队列 
sys/select.h Select函数
sys/sem.h 信号量 
sys/shm.h 共享存储 
sys/socket.h 套接字借口
sys/stat.h 文件状态 
sys/statvfs.h 文件系统信息
sys/time.h 时间类型
sys/timeb.h 附加的日期和时间定义
sys/times.h 进程时间 
sys/types.h 原系统数据类型 
sys/uio.h 矢量I/O操作
sys/un.h UNIX域套接字定义
sys/utsname.h 系统名
sys/wait.h 进程控制

algorithm STL通用算法
bitset STL位集容器
deque STL双端队列容器
functional STL定义运算函数(代替运算符)
list STL线性列表容器
map STL映射容器
queue STL队列容器
set STL集合容器
stack STL堆栈容器 
utility STL通用模板类
vector STL动态数组容器


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值