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 中第一次出现的位置

相关推荐
C^h18 分钟前
c++ string
开发语言·c++
听风说ml23 分钟前
socket编程 【C语言】
c语言·udp·tcp·socket编程
raindayinrain39 分钟前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的1 小时前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao1 小时前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
学逆向的2 小时前
C 局部静态变量
c语言·开发语言·网络安全
大都督会赢的2 小时前
C++第一节课
开发语言·c++
“AI国潮设计-小江”2 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc
小王C语言2 小时前
Qt常用控件:容器类控件,标题分组框、标签页(浏览器标签)
开发语言·qt
我是唐青枫3 小时前
Kotlin Delegation 委托详解
开发语言·kotlin