C语言标准库函数大全(ctype、time 、stdio、stdlib、math、string)

C语言标准库函数大全(ctype、time 、stdio、stdlib、math、string)文章目录C语言函数库一.C语言函数库一.<assert.h>二.<ctype.h>三.<errno.h>四.<limits.h>五.<locale.h>六.<math.h>七.<setjmp.h>八.<signal.h>九.<stdarg.h>十.<stddef.h>十一.<stdio.h&.

大家好,又见面了,我是你们的朋友全栈君。
C语言标准库函数大全(ctype、time 、stdio、stdlib、math、string)

C语言函数库:

C语言的常用的标准头文件有 :

<ctype.h><time.h><stdio.h>

<stdlib.h><math.h><string.h>

一. <ctype.h>

序号 函数原型 功能
1 int iscntrl(int c) 判断字符c是否为控制字符。
2 int isalnum(int c) 判断字符c是否为字母或数字
3 int isalpha(int c) 判断字符c是否为英文字母
4 int isascii(int c) 判断字符c是否为ascii码
5 int isblank(int c) 判断字符c是否为TAB或空格
6 int isdigit(int c) 判断字符c是否为数字
7 int isgraph(int c) 判断字符c是否为除空格外的可打印字符
8 int islower(int c) 判断字符c是否为小写英文字母
9 int isprint(int c) 判断字符c是否为可打印字符(含空格)
10 int ispunct(int c) 判断字符c是否为标点符号
11 int isspace(int c) 判断字符c是否为空白符
12 int isupper(int c) 判断字符c是否为大写英文字母
13 int isxdigit(int c) 判断字符c是否为十六进制数字
14 int toascii(int c) 将字符c转换为ascii码
15 int tolower(int c) 将字符c转换为小写英文字母
16 int toupper(int c); 将字符c转换为大写英文字母

二. <math.h>

序号 函数原型 功能
1 float fabs(float x) 求浮点数x的绝对值
2 int abs(int x) 求整数x的绝对值
3 float acos(float x) 求x(弧度表示)的反余弦值
4 float asin(float x) 求x(弧度表示)的反正弦值
5 float atan(float x) 求x(弧度表示)的反正切值
6 float atan2(float y, float x) 求y/x(弧度表示)的反正切值
7 float ceil(float x) 求不小于x的最小整数
8 float cos(float x) 求x(弧度表示)的余弦值
9 float cosh(float x) 求x的双曲余弦值
10 float exp(float x) 求e的x次幂
11 float floor(float x) 求不大于x的最大整数
12 float fmod(float x, float y) 计算x/y的余数
13 float frexp(float x, int *exp) 把浮点数x分解成尾数和指数
14 float ldexp(float x, int exp) 返回x*2^exp的值
15 float modf(float num, float *i) 将浮点数num分解成整数部分和小数部分
16 float hypot(float x, float y) 对于给定的直角三角形的两个直角边,求其斜边的长度
17 float log(float x) 计算x的自然对数
18 float log10(float x) 计算x的常用对数
19 float pow(float x, float y) 计算x的y次幂
20 float pow10(float x) 计算10的x次幂
21 float sin(float x) 计算x(弧度表示)的正弦值
22 float sinh(float x) 计算x(弧度表示)的双曲正弦值
23 float sqrt(float x) 计算x的平方根
24 float tan(float x); 计算x(弧度表示)的正切值
25 float tanh(float x) 求x的双曲正切值

三. <stdio.h>

序号 函数原型 功能
1 int printf(char *format...) 产生格式化输出的函数
2 int getchar(void) 从键盘上读取一个键,并返回该键的键值
3 int putchar(char c) 在屏幕上显示字符c
4 FILE *fopen(char *filename, char *type) 打开一个文件
5 FILE *freopen(char *filename, char *type,FILE *fp) 打开一个文件,并将该文件关联到fp指定的流
6 int fflush(FILE *stream) 清除一个流
7 int fclose(FILE *stream) 关闭一个文件
8 int remove(char *filename) 删除一个文件
9 int rename(char *oldname, char *newname) 重命名文件
10 FILE *tmpfile(void) 以二进制方式打开暂存文件
11 char *tmpnam(char *sptr) 创建一个唯一的文件名
12 int setvbuf(FILE *stream, char *buf, int type, unsigned size) 把缓冲区与流相关
13 int fprintf(FILE *stream, char *format[, argument,...]) 传送格式化输出到一个流中
14 int scanf(char *format[,argument,...]) 执行格式化输入
15 int fscanf(FILE *stream, char *format[,argument...]) 从一个流中执行格式化输入
16 int fgetc(FILE *stream) 从流中读取字符
17 char *fgets(char *string, int n, FILE *stream) 从流中读取一字符串
18 int fputc(int ch, FILE *stream) 送一个字符到一个流中
19 int fputs(char *string, FILE *stream) 送一个字符到一个流中
20 int getc(FILE *stream) 从流中取字符
21 int getchar(void) 从 stdin 流中读字符
22 char *gets(char *string) 从流中取一字符串
23 int putchar(int ch) 在 stdout 上输出字符
24 int puts(char *string) 送一字符串到流中
25 int ungetc(char c, FILE *stream) 把一个字符退回到输入流中
26 int fread(void *ptr, int size, int nitems, FILE *stream) 从一个流中读数据
27 int fwrite(void *ptr, int size, int nitems, FILE *stream) 写内容到流中 int fseek
28 (FILE *stream, long offset, int fromwhere) 重定位流上的文件指针
29 long ftell(FILE *stream) 返回当前文件指针
30 int rewind(FILE *stream) 将文件指针重新指向一个流的开头
31 int fgetpos(FILE *stream) 取得当前文件的句柄
32 int fsetpos(FILE *stream, const fpos_t *pos) 定位流上的文件指针
33 void clearerr(FILE *stream) 复位错误标志
34 int feof(FILE *stream) 检测流上的文件结束符
35 int ferror(FILE *stream) 检测流上的错误
36 void perror(char *string) 系统错误信息

四. <stdlib.h>

序号 函数原型 功能
1 char *itoa(int i) 把整数i转换成字符串
2 void exit(int retval) 结束程序
3 double atof(const char *s) 将字符串s转换为double类型
4 int atoi(const char *s) 将字符串s转换为int类型
5 long atol(const char *s) 将字符串s转换为long类型
6 double strtod (const char*s,char **endp) 将字符串s前缀转换为double型
7 long strtol(const char*s,char **endp,int base) 将字符串s前缀转换为long型
8 unsinged long strtol(const char*s,char **endp,int base) 将字符串s前缀转换为 unsinged long型
9 int rand(void) 产生一个0~RAND_MAX之间的伪随机数
10 void srand(unsigned int seed) 初始化随机数发生器
11 void *calloc(size_t nelem, size_t elsize) 分配主存储器
12 void *malloc(unsigned size) 内存分配函数
13 void *realloc(void *ptr, unsigned newsize) 重新分配主存
14 void free(void *ptr) 释放已分配的块
15 void abort(void) 异常终止一个进程
16 void exit(int status) 终止应用程序
17 int atexit(atexit_t func) 注册终止函数
18 char *getenv(char *envvar) 从环境中取字符串
19 void *bsearch(const void *key, const void *base, size_t *nelem, size_t width, int(*fcmp)(const void *, const *)) 二分法搜索函数
20 void qsort(void *base, int nelem, int width, int (*fcmp)()) 使用快速排序例程进行排序
21 int abs(int i) 求整数的绝对值
22 long labs(long n) 取长整型绝对值
23 div_t div(int number, int denom) 将两个整数相除 , 返回商和余数
24 ldiv_t ldiv(long lnumer, long ldenom) 两个长整型数相除 , 返回商和余数

五. <time.h>

序号 函数原型 功能
1 clock_t clock(void) 确定处理器时间函数
2 time_t time(time_t *tp) 返回当前日历时间
3 double difftime(time_t time2, time_t time1) 计算两个时刻之间的时间差
4 time_t mktime(struct tm *tp) 将分段时间值转换为日历时间值
5 char *asctime(const struct tm *tblock) 转换日期和时间为ASCII码
6 char *ctime(const time_t *time) 把日期和时间转换为字符串
7 struct tm *gmtime(const time_t *timer) 把日期和时间转换为格林尼治标准时间
8 struct tm *localtime(const time_t *timer) 把日期和时间转变为结构
9 size_t strftime(char *s,size_t smax,const char *fmt, const struct tm *tp) 根据 fmt 的格式 要求将 *tp中的日期与时间转换为指定格式

六. <string.h>

序号 函数原型 功能
1 int bcmp(const void *s1, const void *s2, int n) 比较字符串s1和s2的前n个字节是否相等
2 void bcopy(const void *src, void *dest, int n) 将字符串src的前n个字节复制到dest中
3 void bzero(void *s, int n) 置字节字符串s的前n个字节为零
4 void *memccpy(void *dest, void *src, unsigned char ch, unsigned int count) 由src所指内存区域复制不多于count个字节到dest所指内存区域,如果遇到字符ch则停止复制
5 void *memcpy(void *dest, void *src, unsigned int count) 由src所指内存区域复制count个字节到dest所指内存区域
6 void *memchr(void *buf, char ch, unsigned count) 从buf所指内存区域的前count个字节查找字符ch
7 int memcmp(void *buf1, void *buf2, unsigned int count) 比较内存区域buf1和buf2的前count个字节
8 int memicmp(void *buf1, void *buf2, unsigned int count) 比较内存区域buf1和buf2的前count个字节但不区分字母的大小写
9 void *memmove(void *dest, const void *src, unsigned int count) 由src所指内存区域复制count个字节到dest所指内存区域
10 void *memset(void *buffer, int c, int count) 把buffer所指内存区域的前count个字节设置成字符c
11 void setmem(void *buf, unsigned int count, char ch) 把buf所指内存区域前count个字节设置成字符ch
12 void movmem(void *src, void *dest, unsigned int count) 由src所指内存区域复制count个字节到dest所指内存区域
13 char *stpcpy(char *dest,char *src) 把src所指由NULL结束的字符串复制到dest所指的数组中
14 char *strcpy(char *dest,char *src) 把src所指由NULL结束的字符串复制到dest所指的数组中
15 char *strcat(char *dest,char *src) 把src所指字符串添加到dest结尾处(覆盖dest结尾处的’\0’)并添加’\0’
16 char *strchr(char *s,char c) 查找字符串s中首次出现字符c的位置
17 int strcmp(char *s1,char * s2) 比较字符串s1和s2
18 int stricmp(char *s1,char * s2) 比较字符串s1和s2,但不区分字母的大小写
19 int stricmp(char *s1,char * s2) 比较字符串s1和s2,但不区分字母的大小写
20 int strcspn(char *s1,char *s2) 在字符串s1中搜寻s2中所出现的字符
21 char *strdup(char *s) 复制字符串s
22 int strlen(char *s) 计算字符串s的长度
23 char *strlwr(char *s) 将字符串s转换为小写形式
24 char *strupr(char *s) 将字符串s转换为大写形式
25 char *strncat(char *dest,char *src,int n) 把src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的’\0’)并添加’\0’
26 int strcmp(char *s1,char * s2,int n) 比较字符串s1和s2的前n个字符
27 int strnicmp(char *s1,char * s2,int n) 比较字符串s1和s2的前n个字符但不区分大小写
28 char *strncpy(char *dest, char *src, int n) 把src所指由NULL结束的字符串的前n个字节复制到dest所指的数组中
29 char *strpbrk(char *s1, char *s2) 在字符串s1中寻找字符串s2中任何一个字符相匹配的第一个字符的位置,空字符NULL不包括在内
30 char *strrev(char *s) 把字符串s的所有字符的顺序颠倒过来(不包括空字符NULL)
31 char *strset(char *s, char c) 把字符串s中的所有字符都设置成字符c
32 char *strstr(char *haystack, char *needle) 从字符串haystack中寻找needle第一次出现的位置(不比较结束符NULL)
33 char *strtok(char *s, char *delim) 分解字符串为一组标记串。s为要分解的字符串,delim为分隔符字符串
34 int strnicmp(char *s1,char * s2,int n) 比较字符串s1和s2的前n个字符但不区分大小写

文档资料

上面只是简单的介绍函数原型和功能,如果想对函数进一步了解可以下载以下文档 (内含详解与实例):

1. C语言标准函数库速查手册.chm

2. C语言标准函数库详解.pdf

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162094.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 详解react hooks(含高阶组件)

    详解react hooks(含高阶组件)一 面试中出现的关于 hooks 的题目 1 简单介绍下什么是 hooks hooks 的优点 ReactHooks 是 react 团队研发的 它主要有两方面作用 用于在函数组件中引入状态管理和生命周期方法取代高阶组件和 renderprops 来实现抽象和可重用性在 hooks 出现之前 只有在类组件中可以使用本地状态管理和生命周期方法 函数组件只能是无状态组件 因为函数组件使用便利优雅 已经被广泛使用 后期如果函数组件需要承担一些副作用 只能把它重构成类组件 hooks 的出现就不需要重构了 它帮助函数组

    2025年10月4日
    0
  • java之模糊查询「建议收藏」

    java之模糊查询「建议收藏」1.场景还原由于项目中有很多地方设置了搜索框,所以搜索框之模糊查询势在必得;今晚笔者将详细讲解java之模糊查询的细节及要点,希望能给大伙带来启发。2.实现方案后台代码:①UserInfo实体类的定义publicclassUserInfo{privateStringusername;privateIntegerage;pr

    2022年5月30日
    43
  • 单点登录sso的实现原理(单点登录原理)

    什么是单点登录一个账户在多个系统上实现单一用户的登录为什么用单点登录单点登录可以做到在不记录用户密码的情况下,实现不同系统之间的资源共享,自动登录不安全,单点登录,一处登录,处处都可用,不用做多余的登录操作引用一个很经典的案例比如现在有OA系统、门户系统、人力资源管理系统、档案管理系统、生产管理系统、xx系统等,这么多个系统在一个公司里面,如果一个用户需要使用这么多个系统,那每天都要登录…

    2022年4月14日
    44
  • 使用fiddler对手机APP进行抓包

    使用fiddler对手机APP进行抓包在做手机或移动端APP的接口测试时,需要从开发人员那里获取接口文档,接口文档应该包括完整的功能接口、接口请求方式、接口请求URL、接口请求参数、接口返回参数。如果当前项目没有接口文档,则可以使用fiddler对APP进行抓包确认。在手机上对APP进行操作,然后在Fiddler中可以抓取对应的网络交互信息(一个功能中可能设计多个接口的交互)。在抓取的信息中可以看到接口请求方式、接口请求URL、接口请

    2022年5月16日
    84
  • 百科知识题库_趣味知识竞赛题库及答案

    百科知识题库_趣味知识竞赛题库及答案.西印度群岛位于哪个大洋的西岸?大西洋2.七大洲中面积第二大的是哪个洲?非洲3.“知之为知之,不知为不知,是知也。”是古代的哪位大教育家对学生讲的话?孔子4.“不以规矩,不能成方圆”是出自古代哪位著名儒家思想家之口?孟子5.我国法律规定年满多少周岁就有选举权和被选举权?18岁6.我国民航法规定,乘坐民航班机年满多少周岁的人不能购买儿童票?12岁7.演唱《桃花朵朵开》的马来西

    2025年8月28日
    6
  • 如何知道一个网站的后台地址_看我如何攻破LOL钓鱼网站后台查清背后的大量账号被盗号的真相…

    如何知道一个网站的后台地址_看我如何攻破LOL钓鱼网站后台查清背后的大量账号被盗号的真相…说英雄联盟准备出手游,但内测资格一直没公开,有骗子利用这个机会,伪造官方给用户发送带有钓鱼链接的邮件来盗号。.方子就是其中一个受害者,除了他,我也去了英雄联盟的贴吧看了下,确实有很多人收到了这类邮件。由于反馈这事的人比较多,加上我平常也玩LOL,所以整理了下线索,开整。目前一共有两条线索。1.钓鱼邮件:j6****j9@***zol.com2.钓鱼网站:www.iku****.cn首先是发送钓鱼网…

    2022年7月26日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号