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

相关推荐
南境十里·墨染春水8 小时前
C++传记(面向对象)虚析构函数 纯虚函数 抽象类 final、override关键字
开发语言·c++·笔记·算法
无巧不成书02188 小时前
30分钟入门Java:从历史到Hello World的小白指南
java·开发语言
2301_797172758 小时前
基于C++的游戏引擎开发
开发语言·c++·算法
比昨天多敲两行9 小时前
C++ 二叉搜索树
开发语言·c++·算法
Birdy_x10 小时前
接口自动化项目实战(1):requests请求封装
开发语言·前端·python
海海不瞌睡(捏捏王子)10 小时前
C++ 知识点概要
开发语言·c++
桌面运维家11 小时前
VLAN配置进阶:抑制广播风暴,提升网络效率
开发语言·网络·php
蓝凌y11 小时前
51单片机之外部中断
c语言·单片机·嵌入式硬件
AF_INET611 小时前
RV1126B开发板学习篇(二)v4l2+mpp编码
c语言·经验分享·音视频·视频编解码·嵌入式软件·rv1126b
一轮弯弯的明月11 小时前
Python基础-速通秘籍(下)
开发语言·笔记·python·学习