Linux下的一些头文件

项目中用到的

fcntl.h

fcntl : file control : 文件控制

errno.h : 提供了一种错误报告机制

malloc.h : 动态分配内存

sys/mman.h : 内存管理声明

linux/videodev2.h : 视频驱动头文件

linnux/fb.h : frame buffer , linux的帧缓冲。驱动层直接把LCD的像素数据map到用户空间,在用户程序中可以直接在屏幕上绘图.

其他的Linux下的头文件:

以下内容来自:http://www.cnblogs.com/Ph-one/p/4399277.html

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动态数组容器

时间: 2024-10-18 17:34:44

Linux下的一些头文件的相关文章

linux下C/C++头文件梳理,看完这篇再也不会搞糊涂头文件了!

一:前言 进行linux下C/C++服务端后台开发的都知道,需要跟各种头文件打交道. 比如使用printf函数则需要引用#include <stdio.h>,使用STL的map容器则要#include <map>,使用socket网络编程则要#include <sys/socket.h>, 那么我考考你uint32_t是在哪个头文件定义的呢?sleep函数又是在哪个头文件?open和close是在同一个头文件里吗? 是不是有点一时半会答不上来,有没有好的方法能梳理头文件

Linux驱动开发常用头文件

头文件目录中总共有32个.h头文件.其中主目录下有13个,asm子目录中有4个,linux子目录中有10个,sys子目录中有5个.这些头文件各自的功能如下: 1.主目录 <a.out.h>:a.out头文件,定义了a.out执行文件格式和一些宏.<const.h>:常数符号头文件,目前仅定义了i节点中i_mode字段的各标志位.<ctype.h>:字符类型头文件,定义了一些有关字符类型判断和转换的宏.<errno.h>:错误号头文件,包含系统中各种出错号.(

Linux下C/C++的文件操作open、fopen与freopen

open是linux下的底层系统调用函数,fopen与freopen c/c++下的标准I/O库函数,带输入/输出缓冲.linxu下的fopen是open的封装函数,fopen最终还是要调用底层的系统调用open.所以在linux下如果需要对设备进行明确的控制,那最好使用底层系统调用(open), open对应的文件操作有:close, read, write,ioctl 等.fopen 对应的文件操作有:fclose, fread, fwrite, freopen, fseek, ftell,

在VC下如何使用头文件unistd.h

头文件unistd.h是Linux/Unix的系统调用,包含了许多UNIX系统服务函数原型,如open.read.write._exit.getpid等函数.在linux下能够编译通过的包含此头文件的程序,在VC下编译时出现了如下问题 fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory 其实解决这个问题的方法并不难,只要在你的默认库文件夹下(我的电脑是D:\Program Files

Linux下为何都是文件的理解

所谓“文件”,就是在我们的电脑中,以实现某种功能.或某个软件的部分功能为目的而定义的一个单位. Linux都是以文件的形式存在,当我们访问某个文件(Linux中的文件有目录,连接,普通文本),由于Linux的文件的类型 而区分:如连接文件等,那使用这个文件时,那么就是调用了某个命令: 如普通文本文件时,那么当使用这个文件时,那就是访问该文件的内容 由于文件的类型的不同,从而区别于window系统下的应用:如播放器,EditPlus,浏览器,文件夹等,这些在Linux中都有 对于的不同类型的文件!

Linux下的删除过期文件操作

在实际的软件开发项目中,经常会有实现删除过期文件的需求.即要求程序能够自动删除多长时间之前生成的文件.本文提供了一个示例代码,为相关的开发工作提供了参考. 程序如下(本程序用makefile进行编译): /*********************************************************************** 版权所有 (C)2014, Zhou Zhaoxiong.* * 文件名称: TestFileDelete.c* 内容摘要: 用于演示Linux下过期

Linux下使用vi新建文件保存文件时遇到错误:E212: Can&#39;t open file for writing

出现E212: Can't open file for writing的问题是由于权限问题导致的,解决方法有以下思路: 1.使用root进行登录,然后再操作. 2.在使用命令时,前面加sudo. 3.如果是多级文件夹的文件时,由于这个文件夹没有创建,所以要先创建这个文件夹,再来操作这个文件. Linux下使用vi新建文件保存文件时遇到错误:E212: Can't open file for writing

恢复Linux下被误删除的文件(笔记)

恢复Linux下被误删除的文件 [[email protected] ~]# mount /dev/cdrom /mnt/ 分一个区:sda4  查找:extundelete 分一个区:sda4  [[email protected] ~]# mkdir /tmp/sda4 [[email protected] ~]# mkfs.ext4 /dev/sda4     格式化 [[email protected] Desktop]# echo $? 0 [[email protected] ~]#

linux下使用vim替换文件中的^M换行符

在linux下打开windows编辑过的文本,会出现由于换行符不一致而导致的内容格式错乱的问题.最常见的就是出现^M . 我出现的问题是:在windows编辑过的文件,传到linux上后再用vim打开,内容没有换行.也就是所有文件内容都在一行.然后再实际换行的位置多了个^M. 下面的方法是网上搜的.其中dos2unix还有一个相对应的unix2dos 1.使用dos2unix命令.一般的分发版本中都带有这个小工具(如果没有可以根据下面的连接去下载),使用起来很方便: $ dos2unix myf