C语言常用标准库函数

C语言常用标准库函数

1.输入输出函数

使用输入输出函数时需要在头文件stdio.h中说明,在源文件中使用#include<stdio.h>

(1)格式化输入输出函数

printf("格式控制字符",输出列表);

scanf("格式控制字符",输入列表);

(2)字符(串)输入输出函数

|---------|-------------|---------------------------------|-------------------|
| 函数名 | 函数和形参类型 | 函数功能 | 返回值 |
| getchar | getchar() | 从标准输入设备读入一个字符 | 读入字符的ASCII |
| putchar | putchar(ch) | 向标准输出设备输出字符ch | 输出字符ch |
| gets | gets(地址S) | 从标准输入设备读入一个字符串到字符数组S,输入字符串以回车结束 | 成功:输入字符串S 失败:NULL |
| puts | puts(地址S) | 把字符串s输出到标准输出设备,'\0'转换为'\n'输出 | |

(3)文件操作函数

文件打开:fopen("文件名","文件打开方式")

文件关闭:fclose(文件指针)

字符方式文件读:ch=fgets("指向文件的文件指针")

字符方式文件写:fputs(待写入文件的字符,"指向文件的文件指针")

字符串方式文件读出:fgets(存放从文件中读出的字符串:字符数组名、字符指针,指定读出字符个数,"指向文件的文件指针");

字符串方式文件写入:fputs(要写入的字符串:字符数组名、字符型指针变量、字符串常量,"指向文件的文件指针")

格式化文件读出:fscanf(指向待读的文件指针,格式调制字符串,输入项列表)

格式化文件写入:fprintf(指向待写入的文件指针,格式调制字符串,输出项列表)

数据块读出:fread(指向待读出的文件指针,要写入数据块的字节数,要写入数据的个数,文件指针)

数据库写入:fwriter(指向待写入的文件指针,要写入数据块的字节数,要写入数据的个数,文件指针)

检测文件是否结束:feof(文件指针);

文件指针指向首地址:rewind(文件指针)

重定位文件读写指针的位置:fweek(文件指针,移动偏移量,从哪里计算偏移量)

获取当前文件指针读写的位置:ftell(文件指针)成功返回大于0L的值,否则返回-1L。

2.数学函数

使用数学函数时需要在头文件stdio.h中说明,在源文件中使用#include<math.h>

求x的绝对值:abs(x)

求浮点数x的绝对值:fabs(x)

求长整数x的绝对值:labs(x)

计算x的y次方:pow(x,y)

计算根号x:sqrt(x)

3.字符判别函数

使用字符判别函数时需要在头文件ctype.h中说明,在源文件中使用#include<ctype.h>

判别ch是否为字母字符:isalpha(ch)

判别ch是否为数字字符:isdigit(ch)

判别ch是否为小写字符:islower(ch)

判别ch是否为大写字符:isupper(ch)

将小写字母ch转换为大写字母:toupper(ch)

将大写字母ch转换为小写字母:tolower(ch)

4.字符串操作函数

使用数学函数时需要在头文件string.h中说明,在源文件中使用#include<string.h>

strcat(str1,str2) 将字符串 str2 连接到str1 后面

strchr(str,ch) 找出 ch字符在字符串 str中第一次出现的位置

strcmp(strl, str2) 比较字符串 str1 和 str2 (str1<str2:返回负数,str1-str2:返回 0,str1>str2:返回正数)

strcpy(strl,str2) 将字符串 str2复制到str1中

strlen( str) 求字符串 str 的长度

strlwr(str) 将字符串 str中的字母转换为小写字母

strupr(str) 将字符串 str 中的字母转换为大写字母

strncat(str1,str2) 将字符串 str2 中的前n个字符连接到 str1 后面

strncpy(strl,str2) 将字符串str2 中的前n个字符复制到 str1中

strstr(strl,str2) 找出字符串str2在字符串 str1 中第一次出现的位置

相关推荐
海棠一号3 分钟前
JAVA理论第五章-JVM
java·开发语言·jvm
草莓熊Lotso32 分钟前
【数据结构初阶】--算法复杂度的深度解析
c语言·开发语言·数据结构·经验分享·笔记·其他·算法
KyollBM39 分钟前
【CF】Day75——CF (Div. 2) B (数学 + 贪心) + CF 882 (Div. 2) C (01Trie | 区间最大异或和)
c语言·c++·算法
海的诗篇_1 小时前
前端开发面试题总结-JavaScript篇(二)
开发语言·前端·javascript·typescript
cccc来财1 小时前
Go中的协程并发和并发panic处理
开发语言·后端·golang
狐凄1 小时前
Python实例题:Python计算线性代数
开发语言·python·线性代数
CodeOfCC1 小时前
c语言 封装跨平台线程头文件
linux·c语言·windows
惊鸿一博2 小时前
java_网络服务相关_gateway_nacos_feign区别联系
java·开发语言·gateway
Bruce_Liuxiaowei2 小时前
深入理解PHP安全漏洞:文件包含与SSRF攻击全解析
开发语言·网络安全·php
成工小白2 小时前
【C++ 】智能指针:内存管理的 “自动导航仪”
开发语言·c++·智能指针