1、 Linux中一些头文件的作用:
<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>
<termios.h>
<unistd.h>
<utime.h>
<wordexp.h>
-------------------------
<arpa/inet.h>
<net/if.h>
<netinet/in.h>
<netinet/tcp.h>
-------------------------
<sys/mman.h>
<sys/select.h>
<sys/socket.h>
<sys/stat.h>
<sys/times.h>
<sys/types.h>
<sys/un.h>
<sys/utsname.h>
<sys/wait.h>
------------------------------
POSIX定义的XSI扩展头文件
<cpio.h>
<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>
<sys/msg.h>
<sys/resource.h>资源操作
<sys/sem.h>
<sys/shm.h>
<sys/statvfs.h>
<sys/time.h>
<sys/timeb.h>
<sys/uio.h>
------------------------------
POSIX定义的可选头文件
<aio.h>
<mqueue.h>
<pthread.h>
<sched.h>
<semaphore.h>
<spawn.h>
<stropts.h>
<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>
#include <new>
#include <numeric>
#include <iomanip> //参数化输入/输出
#include <ios> //基本输入/输出支持
#include <iosfwd> //输入/输出系统使用的前置声明
#include <iostream> //数据流输入/输出
#include <istream> //基本输入流
#include <iterator>
#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> //通用类型数学宏