Linux中常用头文件的作用--转
http://blog.sina.com.cn/s/blog_5c93b2ab0100q62k.html
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>
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> //通用类型数学宏
Linux中常用头文件的作用--转的更多相关文章
- Linux网络常用头文件说明
sys/types.h:数据类型定义 sys/socket.h:提供socket函数及数据结构 netinet/in.h:定义数据结构sockaddr_in arpa/inet.h:提供IP地址转换函 ...
- 对Linux下常用头文件总结
asm.current.h 定义全局项current ,其指向结构体struct task_struct linux/sched.h 定义结构体task_struct ,只要包含此头文件 ...
- linux c 编程 ------ 头文件及其作用
#include <stdio.h> printf #include <sys/types.h> 基本系统数据类型.系统的基本数据类型在32编译环境中保持为32位值,在64编译 ...
- linux常用头文件及说明
linux常用头文件及说明 1. Linux中一些头文件的作用: <assert.h>:ANSI C.提供断言,assert(表达式)<glib.h>:GCC.GTK,GNOM ...
- (转)linux中常用的头文件
头文件主目录include 头文件目录中总共有32个.h头文件.其中主目录下有13个,asm子目录中有4个,linux子目录中有10个,sys子目录中有5个.这些头文件各自的功能如下,具体的作用和所包 ...
- linux 中常用的一些头文件
#include <linux/***.h> 是在linux-2.6.29/include/linux下面寻找源文件. #include <asm/***.h> 是在linux ...
- linux设备驱动程序该添加哪些头文件以及驱动常用头文件介绍(转)
原文链接:http://blog.chinaunix.net/uid-22609852-id-3506475.html 驱动常用头文件介绍 #include <linux/***.h> 是 ...
- 理解C++中的头文件和源文件的作用【转】
一.C++编译模式通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称作C++头文件,里面放的也是C+ ...
- Linux驱动开发常用头文件
头文件目录中总共有32个.h头文件.其中主目录下有13个,asm子目录中有4个,linux子目录中有10个,sys子目录中有5个.这些头文件各自的功能如下: 1.主目录 <a.out.h> ...
随机推荐
- ref 和 out 的用法和区别以及params用法
方法参数可以划分为一下四种类型1 值参数:声明时不含任何修饰符2 引用参数:以ref修饰符声明3 输出参数:以out修饰符声明4 参数数组:以params修饰符声明 引用参数和输出参数不创建新的存储位 ...
- 树状数组套trie 模板
求区间排名,第K大,单点修改,区间前驱,区间后驱. 时间复杂度O(logn^3) #include<iostream> #include<cstdio> #include< ...
- 《锋利的jQuery 第二版》chapter 1~
chapter 1 认识 jQuery jquery.js(开发版),jquery.min.js(生产版) window.onload 与 $(document).ready() 的对比: jquer ...
- OCP最新题库收集,新版052考题及答案整理-19
19.Which is true about invalid PL/SQL objects? A) They are automatically recompiled against the new ...
- jmeter简单的接口请求
骤是:在测试计划下面新建一个线程组,线程组下面添加请求,再线程下加入HTTP信息头管理器(如果要求传此参数的话)请求中添加结果和断言 1.打开页面添加一个线程组: 2.线程组中设置参数: 很重要的几个 ...
- Postman使用手册3——环境变量
一.环境变量 当使用API的时候,你可能经常需要使用不同的设置.环境设置可以让你使用变量自定义request.这个方法可以让你轻松的在不同的设置之间改变而不用改变你的request.你不需要担心要记住 ...
- Java - 多线程与锁
进程-线程 进程,Process,处于运行中的程序,系统进行资源分配和调度的独立单位,拥有独立的内存空间(堆). 动态性:生命周期和状态: 独立性:独立实体: 并发性:Concurrency,抢占式多 ...
- django中@property装饰器的运用
python提供的内置装饰器——staticmethod.classmethod和property 在OSQA中,@property的使用频率是非常高的.下面就是它的使用方法: @property 可 ...
- 你不可不知的数据库northwind
说起northwind,40左右的大年一定不会陌生,它是著名的northwind示例库,在SQL Server 是标配. 它有8张表,涉及客户.商品.订单. 如果你是有志从事企业级应用开发,或有志从事 ...
- 程序设计中的dry原则
DRY:dont repeat yourself 假设一个逻辑(代码块)会重复两次或者以上,应该写成函数被调用 为什么呢,实际上,我们处处可见重复性的代码.这除了增加工作量之外,还会增加维护难度. d ...