
C语言标准库函数及用法
发布日期:2021-05-07 18:29:15
浏览次数:28
分类:精选文章
本文共 2947 字,大约阅读时间需要 9 分钟。
C语言标准库函数参考手册
一、数学函数
调用数学函数时,需在源文件中包含以下头文件:
#include
以下是常用数学函数的说明:
函数原型 | 功能 | 返回值 |
---|---|---|
int abs(int x) | 求整数x的绝对值 | 计算结果 |
double fabs(double x) | 求双精度实数x的绝对值 | 计算结果 |
double acos(double x) | 计算cos⁻¹(x)的值 | 计算结果 |
double asin(double x) | 计算sin⁻¹(x)的值 | 计算结果 |
double atan(double x) | 计算tan⁻¹(x)的值 | 计算结果 |
double atan2(double x, double y) | 计算tan⁻¹(x/y)的值 | 计算结果 |
double cos(double x) | 计算cos(x)的值 | 计算结果 |
double cosh(double x) | 计算双曲余弦cosh(x)的值 | 计算结果 |
double exp(double x) | 求eˣ的值 | 计算结果 |
double log(double x) | 求㏑x的值 | 计算结果 |
double log10(double x) | 求log₁₀x的值 | 计算结果 |
double sqrt(double x) | 计算x的开方 | 计算结果 |
double tan(double x) | 计算tan(x)的值 | 计算结果 |
double tanh(double x) | 计算双曲正切函数tanh(x)的值 | 计算结果 |
二、字符函数
调用字符函数时,需在源文件中包含以下头文件:
#include
以下是常用字符函数的说明:
函数原型 | 功能 | 返回值 |
---|---|---|
int isalnum(int ch) | 检查ch是否为字母或数字 | 返回1或0 |
int isalpha(int ch) | 检查ch是否为字母 | 返回1或0 |
int iscntrl(int ch) | 检查ch是否为控制字符 | 返回1或0 |
int isdigit(int ch) | 检查ch是否为数字 | 返回1或0 |
int isgraph(int ch) | 检查ch是否为ASCII码值在0x21到0x7e的可打印字符 | 返回1或0 |
int islower(int ch) | 检查ch是否为小写字母 | 返回1或0 |
int isprint(int ch) | 检查ch是否为包含空格在内的可打印字符 | 返回1或0 |
int ispunct(int ch) | 检查ch是否为除空格、字母、数字外的可打印字符 | 返回1或0 |
int isspace(int ch) | 检查ch是否为空格、制表或换行符 | 返回1或0 |
int isupper(int ch) | 检查ch是否为大写字母 | 返回1或0 |
int isxdigit(int ch) | 检查ch是否为16进制数字 | 返回1或0 |
int tolower(int ch) | 将ch中的字母转换为小写字母 | 返回对应的小写字母 |
int toupper(int ch) | 将ch中的字母转换为大写字母 | 返回对应的大写字母 |
三、字符串函数
调用字符串函数时,需在源文件中包含以下头文件:
#include
以下是常用字符串函数的说明:
函数原型 | 功能 | 返回值 |
---|---|---|
char *strcat(char *s1, char *s2) | 将字符串s2接到s1后面 | 返回s1所指地址 |
char *strchr(char *s, int ch) | 在s所指字符串中查找字符ch的位置 | 返回字符地址或NULL |
int strcmp(char *s1, char *s2) | 比较s1和s2所指字符串 | 返回比较结果 |
char *strcpy(char *s1, char *s2) | 将s2指向的串复制到s1指向的空间 | 返回s1所指地址 |
unsigned strlen(char *s) | 求字符串s的长度 | 返回字符个数 |
char *strstr(char *s1, char *s2) | 在s1中查找s2的出现位置 | 返回字符串地址或NULL |
四、输入输出函数
调用输入输出函数时,需在源文件中包含以下头文件:
#include
以下是常用输入输出函数的说明:
函数原型 | 功能 | 返回值 |
---|---|---|
void clearer(FILE *fp) | 清除文件指针fp相关的所有出错信息 | 无 |
int fclose(FILE *fp) | 关闭文件fp,释放文件缓冲区 | 返回0或非0 |
int feof(FILE *fp) | 检查文件是否结束 | 返回0或非0 |
int fgetc(FILE *fp) | 从文件中读取一个字符 | 返回字符或EOF |
char *fgets(char *buf, int n, FILE *fp) | 从文件中读取一个长度为n-1的字符串 | 返回buf所指地址或NULL |
FILE *fopen(char *filename, char *mode) | 打开文件,按mode方式读写 | 返回文件指针或NULL |
int fprintf(FILE *fp, char *format, ...) | 按照format格式输出数据到文件中 | 返回输出字符数 |
int fputc(char ch, FILE *fp) | 将字符ch输出到文件中 | 返回ch或EOF |
int fputs(char *str, FILE *fp) | 将字符串str输出到文件中 | 返回非负整数或-1 |
int fread(char *pt, unsigned size, unsigned n, FILE *fp) | 从文件中读取n个size字节的数据存到pt中 | 返回读取的数据项个数 |
int fscanf(FILE *fp, char *format, ...) | 从文件中读取数据并按format格式存入内存 | 返回已输入的数据个数 |
int fseek(FILE *fp, long offset, int base) | 移动文件指针到指定位置 | 返回当前位置或非0 |
long ftell(FILE *fp) | 获取文件当前读写位置 | 返回读写位置或-1 |
int fwrite(char *pt, unsigned size, unsigned n, FILE *fp) | 将数据写入文件中 | 返回写入的数据项个数 |
五、动态分配函数与随机函数
调用这些函数时,需在源文件中包含以下头文件:
#include
以下是常用函数的说明:
函数原型 | 功能 | 返回值 |
---|---|---|
void *calloc(unsigned n, unsigned size) | 分配n个大小为size的内存单元 | 返回起始地址或0 |
void free(void *p) | 释放p指向的内存区 | 无 |
void *malloc(unsigned size) | 分配size个字节的内存空间 | 返回起始地址或0 |
void *realloc(void *p, unsigned size) | 将p指向的内存区大小调整为size | 返回起始地址或0 |
int rand(void) | 产生0到32767的随机整数 | 返回随机整数 |
void exit(int state) | 终止程序,state为0正常终止,非0非正常终止 | 无 |
以上函数提供了C语言中常用的标准库功能,可以帮助开发者高效完成各种编程任务。
发表评论
最新留言
表示我来过!
[***.240.166.169]2025年04月14日 22时03分18秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
python中的序列化
2019-03-12
django中使用celery执行异步任务实现
2019-03-12
lora技术在无线抄表行业应用
2019-03-12
msfvenom的使用&免杀&外网渗透
2019-03-12
HTTP/2 协议详解
2019-03-12
grafana改用https登录
2019-03-12
使用MySQLTuner-perl对MySQL进行优化
2019-03-12
2018年3月最新的Ubuntu 16.04.4漏洞提权代码
2019-03-12
异或交换两个数的值
2019-03-12
使用python绘出常见函数
2019-03-12
Golang AES加密
2019-03-12
Puppet的一些奇技淫巧
2019-03-12
亚马逊aws文档语法错误
2019-03-12
什么是5G?居然有人用漫画把它讲得如此接地气!
2019-03-12
Spring cloud --分布式配置中心组件Spring Cloud Config
2019-03-12
UE4接入Android第三方库2——通过JIN与GameActivity通信
2019-03-12
Unity Job System 2——并行处理数据
2019-03-12
BIG解决保险欺诈问题,开创数字化保险时代
2019-03-12
spark概述
2019-03-12
JavaScript 知识梳理[一] 变量类型,浅拷贝,深拷贝
2019-03-12