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

相关推荐
LDR00613 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术13 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园13 天前
C++20 Modules 模块详解
java·开发语言·spring
swordbob13 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享13 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.13 天前
C语言--day30
c语言·开发语言
玖玥拾13 天前
C/C++ 数据结构(七)栈、容器适配器
c语言·数据结构·c++··容器适配器
何以解忧,唯有..13 天前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽13 天前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下13 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php