Linux c/c++开发常用头文件

c/c++开发常用的头文件说明,可以详细参考代码中的注释

/**************************************************************************
* Copyright (c) 2015-2024 Hybase@qq.com
*
* Author: hybase@qq.com  QQ:23207689  WebChat: hybase
*         http://blog.csdn.net/zymill
*         http://github.com/zymill
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
*****************************************************************************
*/
//!c标准常用头文件
#include <stdio.h>           //fopen/fwrite/fread/fprintf/printf/scanf等io函数
#include <stdlib.h>          //strtol/atoi/malloc/free/rand/abs等
#include <stdarg.h>          //va_start/va_end/va_arg
#include <stddef.h>          //常用常量
#include <string.h>          //memcpy/memset/strcpy/strlen/strncpy字符串等

#include <math.h>            //sin/cos/pow/sqrt/ceil/floor等数学函数
#include <time.h>            //定义关于时间的函数
#include <ctype.h>           //字符isdigit/islower/tolower/toupper等
#include <assert.h>          //断言
#include <errno.h>           //错误码相关
#include <malloc.h>          //内存相关
#include <wchar.h>           //宽字符处理及输入/输出
#include <wctype.h>          //宽字符分类
#include <float.h>           //浮点数处理
#include <iso646.h>          //对应各种运算符的宏
#include <limits.h>          //定义各种数据类型最值的常量
#include <locale.h>          //定义本地化C函数
#include <setjmp.h>          //异常处理支持setjmp/longjmp
#include <signal.h>          //信号机制支持signal/raise

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

//=====================================
//! 标准c++ 
#include <algorithm>         //STL通用算法
#include <bitset>            //STL位集容器
#include <map>               //STL映射容器
#include <list>              //STL线性列表容器
#include <vector>            //STL动态数组容器
#include <queue>             //STL队列容器
#include <set>               //STL集合容器
#include <deque>             //STL双端队列容器
#include <memory>            //STL通过分配器进行的内存分配
#include <numeric>           //STL常用的数字操作
#include <stack>             //STL堆栈容器
#include <iterator>          //STL迭代器
#include <utility>           //STL通用模板类
#include <functional>        //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 <exception>         //异常处理类
#include <fstream>           //文件输入输出
#include <limits>            //定义各种数据类型最值常量
#include <locale>            //本地化特定信息
#include <new>               //动态内存分配
#include <iomanip>           //参数化输入输出
#include <ios>               //基本输入输出支持
#include <iosfwd>            //输入输出系统使用的前置声明
#include <iostream>          //数据流输入输出
#include <istream>           //基本输入流
#include <ostream>           //基本输出流
#include <sstream>           //基于字符串的流
#include <stdexcept>         //标准异常类
#include <streambuf>         //底层输入输出支持
#include <string>            //字符串类
#include <typeinfo>          //运行期间类型信息
#include <valarray>          //对包含值的数组的操作

//================================================
//! Linux系统头文件
#include <unistd.h>          //chown/write/read/fsync/sleep/usleep/getpid等
#include <aio.h>             //异步I/O
#include <mqueue.h>          //消息队列
#include <pthread.h>         //线程
#include <sched.h>           //执行调度
#include <semaphore.h>       //信号量
#include <spawn.h>           //实时spawn接口
#include <stropts.h>         //XSI STREAMS接口
#include <trace.h>           //事件跟踪
#include <inttypes.h>        //uint32_t/int64_t等
#include <signal.h>          //信号机制
#include <fcntl.h>           //open/create/fcntl等文件控制
#include <fnmatch.h>         //文件名匹配类型
#include <getopt.h>          //处理命令行参数。getopt()
#include <glob.h>            //路径名模式匹配类型
#include <grp.h>             //组文件
#include <netdb.h>           //主机信息相关函数如:gethostbyname
#include <pwd.h>             //口令文件
#include <regex.h>           //正则表达式
#include <tar.h>             //TAR归档值
#include <termios.h>         //终端I/O
#include <utime.h>           //文件时间
#include <wordexp.h>         //字符扩展类型

#include <arpa/inet.h>       //提供IP地址转换函数inet_addr,inet_aton
#include <net/if.h>          //套接字本地接口
#include <net/ethernet.h>    //以太网数据结构:ether_addr,ether_header等
#include <net/if_arp.h>      //ether_arp的数据结构
#include <netinet/in.h>      //数据结构sockaddr_in、函数htons等
#include <netinet/ip.h>      //和linux/ip.h相似,有iphdr数据结构,同时还包括timestamp结构
#include <netinet/tcp.h>     //TCP协议定义
#include <netinet/udp.h>     //UDP协议定义

#include <sys/ioctl.h>       //提供对I/O控制的函数
#include <sys/param.h>       //MAXHOSTNAMELEN/MAXDOMNAMELEN等定义
#include <sys/reboot.h>      //系统重启
#include <sys/mount.h>       //系统mount
#include <sys/mman.h>        //内存管理声明
#include <sys/select.h>      //Select函数
#include <sys/socket.h>      //套接字
#include <sys/epoll.h>       //epoll事件
#include <sys/stat.h>        //文件状态
#include <sys/times.h>       //进程时间
#include <sys/types.h>       //基本系统数据类型
#include <sys/un.h>          //UNIX域套接字定义
#include <sys/utsname.h>     //系统名
#include <sys/wait.h>        //进程等待控制
#include <sys/ipc.h>         //IPC(命名管道)
#include <sys/msg.h>         //消息队列
#include <sys/resource.h>    //资源操作
#include <sys/sem.h>         //信号量
#include <sys/shm.h>         //共享存储
#include <sys/statvfs.h>     //文件系统信息
#include <sys/time.h>        //时间类型
#include <sys/timeb.h>       //附加的日期和时间定义
#include <sys/uio.h>         //矢量I/O操作
#include <linux/reboot.h>    //系统重启
#include <linux/if_ether.h>  //结构体 struct ethhdr
#include <linux/if_packet.h> //原始数据包的数据结构定义,包括sockaddr_pkt,sockaddr_ll
#include <linux/fb.h>        //framebuffer
#include <linux/ethtool.h>   //ethtool函数
#include <linux/sockios.h>   //socket
#include <linux/prctl.h>     //prctl 进程控制
#include <dirent.h>          //目录函数opendir/closedir/readdir/readdir64等

//! 其他扩展头文件
#include <cpio.h>            //cpio归档值  
#include <dlfcn.h>           //动态链接
#include <fmtmsg.h>          //消息显示结构
#include <ftw.h>             //文件树漫游
#include <iconv.h>           //代码集转换使用程序
#include <langinfo.h>        //语言信息常量
#include <libgen.h>          //模式匹配函数定义
#include <monetary.h>        //货币类型
#include <ndbm.h>            //数据库操作
#include <nl_types.h>        //消息类别
#include <poll.h>            //轮询函数
#include <search.h>          //搜索表
#include <strings.h>         //字符串操作
#include <syslog.h>          //系统出错日志记录
#include <ucontext.h>        //用户上下文
#include <ulimit.h>          //用户限制
#include <utmpx.h>           //用户帐户数据库  

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值