跳转到内容

C++ 编程/代码/标准 C 库

来自维基教科书,开放的书籍,开放的世界

标准 C 库

[编辑 | 编辑源代码]

C 标准库是 C 语言标准化的头文件和库例程集合,用于实现常见的操作,例如输入/输出和字符串处理。它作为 标准 C 库 成为 C++ 标准库 的一部分,以其 ANSI C 89 形式出现,并进行了一些小的修改以使其更好地与 C++ 标准库协同工作,但仍然位于 std 命名空间 之外。C++ 标准库中的头文件不以“.h”结尾。但是,C++ 标准库包含来自 C 标准库的 18 个头文件,它们以“.h”结尾。它们的用法已过时(ISO/IEC 14882:2003(E) 编程语言 — C++)。

要更深入地了解 C 编程语言,请查看 C 编程维基教科书,但请注意我们已经在 比较 C++ 与 C 部分 中介绍的兼容性问题。

所有标准 C 库函数

[编辑 | 编辑源代码]
函数 描述
abort abort() 函数会导致非正常进程终止发生,除非捕获了信号 SIGABRT 并且信号处理程序返回
abs 没有减号的绝对值
acos 反余弦
asctime 时间的文本版本
asin 反正弦
assert 如果表达式不为真,则停止程序
atan 反正切
atan2 反正切,使用符号来确定象限
atexit 设置程序退出时要调用的函数
atof 将字符串转换为双精度浮点数
atoi 将字符串转换为整数
atol 将字符串转换为长整数
bsearch 执行二分查找
calloc 分配并清空二维内存块
ceil 不小于某个值的最小整数
clearerr 清除错误
clock 返回程序运行的时间量
cos 余弦
cosh 双曲余弦
ctime 返回时间的特定格式版本
difftime 两个时间之间的差值
div 返回除法的商和余数
exit 停止程序
exp 返回“e”的给定次方
fabs 浮点数的绝对值
fclose 关闭文件
feof 如果在文件末尾,则为真
ferror 检查文件错误
fflush 写入输出缓冲区的内容
fgetc 从流中获取字符
fgetpos 获取文件位置指示器
fgets 从流中获取字符串
floor 返回不大于给定值的最大整数
fmod 返回除法的余数
fopen 打开文件
fprintf 将格式化的输出打印到文件
fputc 将字符写入文件
fputs 将字符串写入文件
fread 从文件读取
free 将先前分配的内存返回给操作系统
freopen 使用不同的名称打开现有流
frexp 将数字分解为科学记数法
fscanf 从文件读取格式化的输入
fseek 移动到文件中的特定位置
fsetpos 移动到文件中的特定位置
ftell 返回当前文件位置指示器
fwrite 写入文件
getc 从文件读取字符
getchar 从 STDIN 读取字符
getenv 获取关于变量的环境信息
gets 从 STDIN 读取字符串
gmtime 返回指向当前格林威治平均时间的指针
isalnum 如果字符是字母数字,则为真
isalpha 如果字符是字母,则为真
iscntrl 如果字符是控制字符,则为真
isdigit 如果字符是数字,则为真
isgraph 如果字符是图形字符,则为真
islower 如果字符是小写字母,则为真
isprint 如果字符是打印字符,则为真
ispunct 如果字符是标点符号,则为真
isspace 如果字符是空格字符,则为真
isupper 如果字符是大写字母,则为真
itoa 将整数转换为字符串
isxdigit 如果字符是十六进制字符,则为真
labs 长整数的绝对值
ldexp 计算科学记数法中的数字
ldiv 返回除法的商和余数,以长整型形式
localtime 返回指向当前时间的指针
log 自然对数
log10 以 10 为底的自然对数
longjmp 从程序中的某个点开始执行
malloc 分配内存
memchr 在数组中搜索字符的首次出现
memcmp 比较两个缓冲区
memcpy 将一个缓冲区复制到另一个缓冲区
memmove 将一个缓冲区移动到另一个缓冲区
memset 用字符填充缓冲区
mktime 返回给定时间的日历版本
modf 将数字分解为整数和小数部分
perror 将当前错误的字符串版本显示到 STDERR
pow 返回给定数字的另一个数字的幂
printf 将格式化的输出写入 STDOUT
putc 将字符写入流
putchar 将字符写入 STDOUT
puts 将字符串写入 STDOUT
qsort 执行快速排序。
raise 向程序发送信号
rand 返回一个伪随机数
realloc 更改先前分配的内存的大小
remove 删除文件
rename 重命名文件
rewind 将文件位置指示器移动到文件的开头
scanf 从 STDIN 读取格式化的输入
setbuf 为特定流设置缓冲区
setjmp 设置执行从某个点开始
setlocale 设置当前区域设置
setvbuf 为特定流设置缓冲区和大小
signal 将函数注册为信号处理程序
sin 正弦
sinh 双曲正弦
sprintf 将格式化的输出写入缓冲区
sqrt 平方根
srand 初始化随机数生成器
sscanf 从缓冲区读取格式化的输入
strcat 连接两个字符串
strchr 在字符串中查找字符的首次出现
strcmp 比较两个字符串
strcoll 根据当前区域设置比较两个字符串
strcpy 将一个字符串复制到另一个字符串
strcspn 在一个字符串中搜索另一个字符串中的任何字符
strerror 返回给定错误代码的文本版本
strftime 返回日期和时间的各个元素
strlen 返回给定字符串的长度
strncat 连接两个字符串的特定数量的字符
strncmp 比较两个字符串的特定数量的字符
strncpy 将一个字符串的特定数量的字符复制到另一个字符串
strpbrk 在另一个字符串中查找在一个字符串中的任何字符的第一个位置
strrchr 在字符串中查找字符的最后一次出现
strspn 返回字符串的字符子字符串的长度
strstr 查找字符串中第一个出现的子字符串
strtod 将字符串转换为双精度浮点数
strtok 在字符串中查找下一个标记
strtol 将字符串转换为长整数
strtoul 将字符串转换为无符号长整型
strxfrm 转换子字符串以便它可以被字符串比较函数使用
system 执行系统调用
tan 正切
tanh 双曲正切
time 返回系统当前的日历时间
tmpfile 返回指向临时文件的指针
tmpnam 返回一个唯一的文件名
tolower 将字符转换为小写
toupper 将字符转换为大写
ungetc 将字符放回流中
va_arg 使用可变长度参数列表
vprintf, vfprintf, 和 vsprintf 使用可变参数列表写入格式化输出
vscanf, vfscanf, 和 vsscanf 使用可变参数列表读取格式化输入

这些包含在标准 C 库中的例程可以细分为

华夏公益教科书