C语言中的库函数
函数库:
概述:函数库是由系统建立的具有一定功能的函数的集合
详解:
1.库中存放函数的名称和对应的目标代码,以及连接过程中所需的重定位信息。(目标代码以二进制保存,调用时可以直接运行,不需要额外编译。)
2.用户也可以根据自己的需要建立自己的用户函数库
库函数:
概述:存放在函数库中的函数
详解:
1.库函数明确定义了功能、参数和返回值(函数三要素,这一点上和自定义函数是相同的)
2.库函数分为:C标准规定的库函数、编译器特定的库函数、用户定义的库函数
连接程序:
用于将编译系统生成的目标文件和库函数的目标文件连接在一起生成可执行文件。
头文件(包含文件):
概述:在程序中嵌入包含文件以使用某一库函数(如#include <math.h>便是使用数学库函数时需要的头文件)
举例:
头文件 | 功能 |
<assert.h> | 定义assert()宏 |
<ctype.h> | 字符处理 |
<errno.h> | 出错报告 |
<float.h> | 定义和执行依赖于浮点方法的限制 |
<limits.h> | 定义依赖于极限方面的变量 |
<locale.h> | 支持定位 |
*<math.h> | 支持数学函数 |
<setjmp.h> | 支持非局部的跳跃 |
<signal.h> | 支持信号处理 |
<stdarg.h> | 支持可变长参数列表 |
*<stddef.h> | 定义常用常量 |
*<stdio.h> | 支持I/O系统 |
*<stdlib.h> | 混合的各种声明 |
*<string.h> | 支持串函数 |
*<time.h> | 支持系统时间函数 |
头文件 | 功能 |
<complex.h> | 支持复数算术运算 |
<fenv.h> | 给出存取浮点状态和其他浮点环境 |
<inttypes.h> | 定义一个标准可移植整型名称集,也支持大宽度整数的处理 |
<iso646.h> | 定义与不同同操作相关的宏 |
<stdbool.h> | 支持布尔数据类型,定义宏bool,以便与C++兼容 |
<stdint.h> | 定义标准可移植的整型 |
<tgmath.h> | 定义普通的浮点宏 |
<wchar.h> | 支持多字节和宽字符函数 |
<wctype.h> | 支持多字节和宽字符类型方面的函数 |
常用的数学函数(需要头文件math.h):
函数原型 | 功能 | 返回值 |
double acos(double arg); | 求参数arg的反余弦值 | 返回参数arg的反余弦值 |
double fabs(double num); | 求参数num的绝对值 | 返回参数num的绝对值 |
long long int llrint(double arg); | 求参数arg四舍五入到整数的值 | 返回参数四舍五入到整数的值 |
double log(double num); | 求参数num的自然对数值 | 返回参数num的自然对数值 |
double log2(double num); | 求参数num的以2为底数的对数值 | 返回参数num以2为底数的对数值 |
double modf(double num,double *i); | 分解参数成整数部分i和小数部分f | 分解参数成整数部分i和小数部分f,返回小数部分f |
double round(double arg); | 求参数arg四舍五入到整数部分的值 | 以浮点数形式返回参数arg四舍五入到整数部分的值 |
注:函数的数量与种类十分的庞大,这里无法一一例举讲解。如需更多资料可以通过查阅相关书籍;百度、谷歌等相关搜索引擎;或这个网站:https://code-reference.com/