linux下C/C++头文件梳理,看完这篇再也不会搞糊涂头文件了!
来源:互联网 发布:unity3d 像素画风 编辑:程序博客网 时间:2024/05/03 13:27
一:前言
进行linux下C/C++服务端后台开发的都知道,需要跟各种头文件打交道。
比如使用printf函数则需要引用#include <stdio.h>,使用STL的map容器则要#include <map>,使用socket网络编程则要#include <sys/socket.h>,
那么我考考你uint32_t是在哪个头文件定义的呢?sleep函数又是在哪个头文件?open和close是在同一个头文件里吗?
是不是有点一时半会答不上来,有没有好的方法能梳理头文件呢,把头文件进行分门别类呢?
答案是可以的。
我把头文件分为以下三类:
- C标准头文件:一共29个头文件。 http://en.cppreference.com/w/c/header点击打开链接
- C++标准头文件:除C标准库外,还包括STL标准库等10+个头文件 http://www.cplusplus.com/reference/stl/ 。把C标准头文件放到std的命名空间里,文件名统一加上c前缀,如#include <string.h> 改成#include <cstring>外,
- linux系统头文件:操作系统相关,如socket网络、共享内存、信号量等,常用的就10+左右。http://pubs.opengroup.org/onlinepubs/7908799/headix.html
二:C标准库
- #include <string.h> 字符串操作相关
memcpy /strcpy 区别?memsetstrncpy
- #include <stdio.h> 标准输入输出
fopen/fwriteprintf/scanf
- #include <stdio.h> 标准输入输出
fopen/fwriteprintf/scanf
- #include <stdlib.h> 常用的一些函数库
strtol/atoimalloc/freerandqsortabs/divsize_t
- #include <math.h> 函数库
sin/cospow/sqrtceil/floor
- #include <stdint.h>
uint32_tSIZE_MAX
- #include <ctype.h>
islowertoupper
- #include <time.h>
timemktime
- #include <setjmp.h>...
三、C++标准库
- 容器类:<map>、<vector>、<set>、<unordered_map>
- #include <memory>
share_ptr
- #include <algorithm>
min/max
merge
lower_bound/upper_bound
sort
unique
remove
copy
find
- #include <setjmp.h>...
四、Linux系统函数库
- #include <unistd.h>
chown()
close()/write()/read()
fsync()
sleep()/usleep()
getpid()
- #include <fcntl.h>
open()
create()
fcntl()
- #include <pthread.h>
- #include <fcntl.h>
open()
create()
fcntl()
- #include <pthread.h>
- sys目录下
<sys/shm.h><sys/msg.h><sys/socket.h><sys/sem.h><sys/stat.h><sys/time.h><sys/select.h><sys/epoll.h><sys/types.h>
五、结语
这样是不是一目了然,清晰很多。
2 0
- linux下C/C++头文件梳理,看完这篇再也不会搞糊涂头文件了!
- linux下C/C++头文件梳理
- c/c++ 头文件梳理
- linux C 头文件
- Linux-C头文件
- Linux头文件 C/C++头文件
- Linux头文件 C/C++头文件
- linux常用c头文件
- linux c常用头文件
- linux常用C头文件
- linux常用C头文件
- Linux 头文件 C语言
- linux c 中的头文件.库文件
- linux下的头文件 及C/C++头文件 一览表
- linux下的头文件 及C/C++头文件 一览表
- Linux下C和C++常用头文件
- linux下c/c++编程--学习笔记(头文件)
- Linux下的c编程用到的头文件
- 图书管理系统JAVA语言
- 正则表达式
- Android_GET与POST_面向过程
- 使用注解标注Servlet
- 【主动引流】如何叠加公众号的流量和PC网站的流量?
- linux下C/C++头文件梳理,看完这篇再也不会搞糊涂头文件了!
- java学习笔记之——内部类
- 211. Add and Search Word - Data structure design
- bzoj2720: [Violet 5]列队春游
- C++独孤九剑第八式——平沙落雁(运行时浅剖析)
- LoaderManager访问SD里面的数据库
- C语言反转数组(reverse函数)
- HDU 3045 (斜率优化)
- CTO、技术总监、首席架构师的区别