一、定位不同
1、动态分配函数和随机函数:stdlib.h是standard library标准库头文件,定位在通用工具函数。
2、输入输出函数:stdio.h是standard input&output标准输入输出头文件,定位在标准的输入输出工具函数。
3、字符串函数string.h表示包含字符串处理函数的头文件,是C语言中的预处理命令。
4、数学函数:math.h包含math头文件的意思,声明了本程序要用到标准库中的 math.h文件
5、字符函数:ctype.h用于测试字符是否属于特定的字符类别,一般不用比较测试实现,而是静态查表来实现
二、封装函数不同
1、stdlib.h主要封装了malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等函数。
2、stdio.h主要封装了getchar()、putchar()、scanf()、printf()、gets()、puts()、sprintf()等函数。
3、string.h主要封装了strlen()求字符串长度、strcmp()比较2个字符串是否一样、strcat()字符串连接操作、strcpy()字符串拷贝操作
strnact()字符串连接操作(前n个字符)、strncpy()字符串拷贝操作(前n个字符)、strchr()查询字串、strstr()查询子串
4、math.h主要封装了三角函数、反三角函数、双曲三角函数、指数与对数、取整、绝对值、标准化浮点数、取整与取余、其他
5、ctype.h主要封装了isalnum、isalpha、islower、isupper、isdigit、isxdigit、isgraph、isspace、isblank、isprint
三、定义类型不同
1、stdlib.h定义了size_t、wchar_t、div_t、ldiv_t和lldiv_t五种类型。
2、stdio没有定义类型。
3、string定义了一个变量类型、一个宏和各种操作字符数组的函数。
4、math.h头文件定义了各种数学函数和一个宏。
5、ctype.h定义int型ch