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> ...
随机推荐
- JavaScript 类型转换(2)
隐式类型转换 1. var a = "123"; a++; 这时候会将调用Number("123")将"123"转换成数字类型,然后再自增. ...
- Centos7 因内存 可用大小不足,被killed的解决办法
Linux的内存分配采取的是一种更加积极的分配策略,它假设应用申请了内存空间后并不会立即去使用它,所以允许一定量的超售,当应用真的需要使用它的时候,操作系统可能已经通过回收了其他应用的内存空间而变得有 ...
- ManualResetEvent 线程通信
using System; using System.Threading; namespace ConsoleApp1 { class MyThread { Thread t = null; Manu ...
- VS 发布MVC网站缺少视图解决方案
VS 发布MVC网站缺少视图解决方案 mvc项目发布之后会有一些视图文件缺少,不包含在发布文件中,虽然可以直接从项目文件中直接拷贝过来,但还是想知道是什么原因,发布文件好像没有找到哪里有设置这个的地 ...
- php中递归查找父级名称
/** * 获取所属公司 * @param array 列表 * @param $id 上级ID * @return array */ private static function get_top_ ...
- [ActionScript 3.0] 如何获得实例对象的类名及类
package { import flash.display.DisplayObject; import flash.display.MovieClip; import flash.display.S ...
- 安装php,nginx 带debug
gdb安装包 在CentOS6.4下使用gdb进行调试的时候, 使用bt(breaktrace)命令时,会弹出如下的提示: 头一天提示: Missing separate debuginfos, ...
- POJ2259 Team Queue (JAVA)
第一次TLE,对每个group重新设置Queue中定位,定位到每个group的最后一个元素,但WA 经过检查,DEQUEUE时没有根据情况重新计算group,插入时没有根据情况重新给last赋值 贴A ...
- 对cors的理解
一.简介 CORS需要浏览器和服务器同时支持.目前,所有浏览器都支持该功能,IE浏览器不能低于IE10. 整个CORS通信过程,都是浏览器自动完成,不需要用户参与.对于开发者来说,CORS通信与同源的 ...
- 手把手教你在CentOS 7.4下搭建Zabbix监控(转)
Linux系统版本:CentOS 7.4 1.安装前需要先关闭selinux和firewall. 1.1 [root@zabbix ~]# vi /etc/selinux/config 将SELINU ...