C语言常用的库函数.docx

上传人:小飞机 文档编号:3155214 上传时间:2023-03-11 格式:DOCX 页数:17 大小:41.53KB
返回 下载 相关 举报
C语言常用的库函数.docx_第1页
第1页 / 共17页
C语言常用的库函数.docx_第2页
第2页 / 共17页
C语言常用的库函数.docx_第3页
第3页 / 共17页
C语言常用的库函数.docx_第4页
第4页 / 共17页
C语言常用的库函数.docx_第5页
第5页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C语言常用的库函数.docx》由会员分享,可在线阅读,更多相关《C语言常用的库函数.docx(17页珍藏版)》请在三一办公上搜索。

1、C语言常用的库函数库函数并不是C语言的一部分,它是由编译系统根据一般用户的需要编制并提供给用户使用的一组程序。每一种C编译系统都提供了一批库函数,不同的编译系统所提供的库函数的数目和函数名以及函数功能是不完全相同的。ANSI C标准提出了一批建议提供的标准库函数。它包括了目前多数C编译系统所提供的库函数,但也有一些是某些C编译系统未曾实现的。考虑到通用性,本附录列出ANSI C建议的常用库函数。 由于C库函数的种类和数目很多,例如还有屏幕和图形函数、时间日期函数、与系统有关的函数等,每一类函数又包括各种功能的函数,限于篇幅,本附录不能全部介绍,只从教学需要的角度列出最基本的。读者在编写C程序时

2、可根据需要,查阅有关系统的函数使用手册。 1数学函数 使用数学函数时,应该在源文件中使用预编译命令: #include或#include math.h 函数名 acos 函数原型 double acos(double x); 功能 计算arccos x的值,其中-1=x=1 返回值 计算结果 计算结果 计算结果 计算结果 计算结果 计算结果 计算结果 asin double asin(double x); 计算arcsin x的值,其中-1=x=1 atan atan2 double atan(double x); double atan2(double x, double y); 计算arc

3、tan x的值 的值 计算arctan x/ycos double cos(double x); 计算cos x的值,其中x的单位为弧度 cosh double cosh(double x); 计算x的双曲余弦cosh x的值 exp double exp(double x); 求ex的值fabs double fabs(double x); 求x的绝对值 计算结果 该整数floor double floor(double x); 求出不大于x的最大整数 的双精度实数 返回余fmod double fmod(double x, double y); 求整除x/y的余数 数的双精度实数 把双精度

4、数val分解成数字部分(尾数)和frexp double frexp(double val, int *eptr); 以2为底的指数,即eptr指向的变量中 log double log(double x); 求lnx的值 val=x*2n,n存放在数字部分x 0.5=x1 计算结果 计算结果 val的小数部分 计算结果 计算结果 计算结果 计算结果 计算结果 计算结果 log10 double log10(double x); 求log10x的值 把双精度数val分解成数字部分和小数modf double modf(double val, int *iptr); 部分,把整数部分存放在ptr

5、指向的变量中 pow double pow(double x, double y); 求xy的值 sin sinh double sin(double x); double sinh(double x); 求sin x的值,其中x的单位为弧度 计算x的双曲正弦函数sinh x的值 sqrt double sqrt (double x); 计算,其中x0 tan double tan(double x); 计算tan x的值,其中x的单位为弧度 tanh double tanh(double x); 计算x的双曲正切函数tanh x的值 2字符函数 在使用字符函数时,应该在源文件中使用预编译命令

6、: #include或#include ctype.h 函数名 isalnum isalpha 函数原型 int isalnum(int ch); int isalpha(int ch); 功能 检查ch是否字母或数字 检查ch是否字母 检查ch是否控制字符iscntrl int iscntrl(int ch); (其ASCII码在0和0xlF之间) isdigit int isdigit(int ch); 检查ch是否数字 检查ch是否是可打印isgraph int isgraph(int ch); 字符(其ASCII码在0x21和0x7e之间),不包括空格 islower int islo

7、wer(int ch); 检查ch是否是小写字母(az) 检查ch是否是可打印isprint int isprint(int ch); 字符(其ASCII码在0x21和0x7e之间),不包括空格 检查ch是否是标点字ispunct int ispunct(int ch); 符(不包括空格)即除字母、数字和空格以外的所有可打印字符 检查ch是否空格、跳isspace int isspace(int ch); 格符(制表符)或换行符 isupper int isupper(int ch); 检查ch是否大写字母(AZ) 检查ch是否一个16isxdigit int isxdigit(int ch)

8、; 进制数字 (即09,或A到F,af) tolower int tolower(int ch); 将ch字符转换为小写字母 返回ch对应的小写字母 是,返回1,否则返回0 是大写字母返回1,否则返回0 是,返回1,否则返回0 是标点返回1,否则返回0 是可打印字符返回1,否则返回0 是小字母返回1,否则返回0 是可打印字符返回1,否则返回0 是数字返回1,否则返回0 是控制字符返回1,否则返回0 返回值 是字母或数字返回1,否则返回0 是字母返回1,否则返回0 toupper int toupper(int ch); 将ch字符转换为大写字母 返回ch对应的大写字母 3字符串函数 使用字符串

9、中函数时,应该在源文件中使用预编译命令: #include或#include string.h 函数名 函数原型 void memchr(void *buf, char ch, unsigned count); 功能 在buf的前count个字符里搜索字符ch首次出现的位置 返回值 返回指向buf中ch的第一次出现的位置指针。若没有找到ch,返回NULL buf1buf2,为正数 memchr memcmp int memcmp(void *buf1, void *buf2, unsigned count); 按字典顺序比较由buf1和buf2指向的数组的前count个字符 将from指向的数

10、组中的前count个字符拷贝到to指向的数组中。From和to指向的数组不允许重叠 将from指向的数组中的前count个字符拷贝到to指向的数组中。From和to指向的数组不允许重叠 将字符ch拷贝到buf指向的数组前count个字符中。 把字符str2接到str1后面,取消原来str1最后面的串结束符“0” 找出str指向的字符串中第一次出现字符ch的位置 memcpy void *memcpy(void *to, void *from, unsigned count); 返回指向to的指针 memove void *memove(void *to, void *from, unsigne

11、d count); void *memset(void *buf, char ch, unsigned count); char *strcat(char *str1, char *str2); char *strchr(char *str,int ch); 返回指向to的指针 memset strcat 返回buf 返回str1 返回指向该位置的指针,如找不到,则应返回NULL 若str1str2,为正数 strcpy 把str2指向的字符串拷贝到str1中去 统计字符串str中字符的个数(不包括终止符“0”) 把字符串str2指向的字符串中最多count个字符连到串str1后面,并以NUL

12、L结尾 返回str1 strlen 返回字符个数 strncat char *strncat(char *str1, char *str2, unsigned count); 返回str1 strncmp int strncmp(char *str1,*str2, unsigned count); char *strncpy(char *str1,*str2, unsigned count); void *setnset(char *buf, char ch, unsigned count); void *setset(void *buf, char ch); char *strstr(cha

13、r *str1,*str2); 比较字符串str1和str2中至多前count个字符 把str2指向的字符串中最多前count个字符拷贝到串str1中去 将字符ch拷贝到buf指向的数组前count个字符中。 将buf所指向的字符串中的全部字符都变为字符ch 寻找str2指向的字符串在str1指向的字符串中首次出现的位置 若str1str2,为正数 返回str1 strncpy strnset 返回buf strset strstr 返回buf 返回str2指向的字符串首次出向的地址。否则返回NULL 4输入输出函数 在使用输入输出函数时,应该在源文件中使用预编译命令: #include或#i

14、nclude stdio.h 函数名 clearerr close creat eof fclose feof ferror fflush 函数原型 void clearer(FILE *fp); int close(int fp); int creat(char *filename, int mode); int eof(int fp); int fclose(FILE *fp); int feof(FILE *fp); int ferror(FILE *fp); int fflush(FILE *fp); 功能 清除文件指针错误指示器 关闭文件(非ANSI标准) 以mode所指定的方式建立

15、文件(非ANSI标准) 判断fp所指的文件是否结束 关闭fp所指的文件,释放文件缓冲区 检查文件是否结束 测试fp所指的文件是否有错误 将fp所指的文件的全部控制信息和数据存盘 从fp所指的文件读取一个长度为(n-1)的字符串,存入起始地址为buf的空间 无 关闭成功返回0,不成功返回-1 成功返回正数,否则返回-1 文件结束返回1,否则返回0 关闭成功返回0,不成功返回非0 文件结束返回非0,否则返回0 无错返回0,否则返回非0 存盘正确返回0,否则返回非0 返回值 fgets fgetc fopen char *fgets(char *buf, int n, FILE *fp); int

16、fgetc(FILE *fp); FILE *fopen(char *filename, char *mode); int fprintf(FILE *fp, char *format,args,); 返回地址buf。若遇文件结束或出错则返回EOF 从fp所指的文件中取得下一个字符 返回所得到的字符。出错返回EOF 以mode指定的方式打开名为filename的文件 把args的值以format指定的格式输出到fp所指的文件中 成功,则返回一个文件指针,否则返回0 实际输出的字符数 fprintf fputc fputs int fputc(char ch, FILE *fp); 将字符ch输

17、出到fp所指的文件中 int fputs(char str, FILE *fp); int fread(char *pt, unsigne将str指定的字符串输出到fp所指的文件中 从fp所指定文件中读取长度为size的n个数据项,存到pt所指向的内存区 从fp指定的文件中按给定的format格式将读入的数据送到args所指向的内存变量中(args是指针) 将fp指定的文件的位置指针移到base所指出的位置为基准、以offset为位移量的位置 成功则返回该字符,出错返回EOF 成功则返回0,出错返回EOF fread d size, unsigned n, FILE *fp); int fsc

18、anf(FILE *fp, char *format,args,); 返回所读的数据项个数,若文件结束或出错返回0 fscanf 以输入的数据个数 fseek ftell int fseek(FILE *fp, long offset, int base); long ftell(FILE *fp); int fwrite(char *ptr, unsign返回当前位置,否则返回-1 返回fp所指定的文件中的读写位置 返回文件中的读写位置,否则返回0 把ptr所指向的n*size个字节输出到fp所指向的文件中 从fp所指向的文件中的读出下一个字符 从标准输入设备中读取下一个字符 从标准输入设备

19、中读取字符串存入str指向的数组 以mode指定的方式打开已存在的名为filename的文件(非ANSI标准) 在format指定的字符串的控制下,将输出列表args的指输出到标准设备 把一个字符ch输出到fp所值的文件中 把字符ch输出到fp标准输出设备 把str指向的字符串输出到标准输出设备,将“0”转换为回车行 将一个整数i(即一个字)写到fp所指的文件中(非ANSI标准) 输出字符ch,若出错返回EOF 返回换行符,若失败返回EOF 返回换行符,若失败返回EOF 返回读出的字符,若文件出错或结束返回EOF 输出字符的个数。若出错返回负数 fwrite ed size, unsigned

20、 n, FILE *fp); 写到fp文件中的数据项的个数 getc int getc(FILE *fp); 返回读出的字符,若文件出错或结束返回EOF 返回字符,若文件出错或结束返回-1 成功返回str,否则返回NULL getchar gets int getchar; char *gets(char *str); open int open(char *filename, int mode); 返回文件号(正数),如打开失败返回-1 printf int printf(char *format,args,); prtc putchar puts int prtc(int ch, FILE

21、 *fp); int putchar(char ch); int puts(char *str); putw int putw(int w, FILE *fp); read int read(int fd, char *buf, unsigned count); int remove(char *fname); int remove(char *oname, char *nname); void rewind(FILE *fp); 从文件号fp所指定文件中读count个字节到由buf知识的缓冲区(非ANSI标准) 删除以fname为文件名的文件 把oname所指的文件名改为由nname所指的文

22、件名 将fp指定的文件指针置于文件头,并清除文件结束标志和错误标志 从标准输入设备按format指示的格式字符串规定的格式,输入数据给args所指示的单元。args为指针 丛buf指示的缓冲区输出count个字符到fd所指的文件中(非ANSI标准) 返回真正读出的字节个数,如文件结束返回0,出错返回-1 成功返回0,出错返回-1 成功返回0,出错返回-1 无 remove rename rewind scanf int scanf(char *format,args,); 读入并赋给args数据个数。如文件结束返回EOF,若出错返回0 write int write(int fd, char

23、*buf, unsigned count); 返回实际写入的字节数,如出错返回-1 5动态存储分配函数 在使用动态存储分配函数时,应该在源文件中使用预编译命令: #include或#include stdlib.h 函数名 callloc free malloc 函数原型 void *calloc(unsigned n, unsigned size); void free(void *p); void *malloc(unsigned size); void *realloc(void *p, unsigned size); 功能 分配n个数据项的内存连续空间,每个数据项的大小为size 释放

24、p所指内存区 分配size字节的内存区 将p所指的以分配的内存区的大小改为size。size可以比原来分配的空间大或小 返回值 分配内存单元的起始地址。如不成功,返回0 无 所分配的内存区地址,如内存不够,返回0 返回指向该内存区的指针。若重新分配失败,返回NULL realloc 6其他函数 有些函数由于不便归入某一类,所以单独列出。使用这些函数时,应该在源文件中使用预编译命令: #include或#include stdlib.h 函数名 函数原型 功能 返回值 abs atof int abs(int num); double atof(char *str); 计算整数num的绝对值 将

25、str指向的字符串转换为一个double型的值 将str指向的字符串转换为一个int型的值 将str指向的字符串转换为一个long型的值 中止程序运行。将status的值返回调用的过程 将整数n的值按照radix进制转换为等价的字符串,并将结果存入str指向的字符串中 计算long型整数num的绝对值 将长整数n的值按照radix进制转换为等价的字符串,并将结果存入str指向的字符串 产生0到RAND_MAX之间的伪随机数。RAND_MAX在头文件中定义 产生0到num之间的随机数。 初始化随机函数,使用时包括头文件time.h。 返回计算结果 返回双精度计算结果 atoi int atoi(

26、char *str); 返回转换结果 atol exit long atol(char *str); void exit(int status); 返回转换结果 无 itoa char *itoa(int n, char *str, int radix); long labs(long num); 返回一个指向str的指针 labs 返回计算结果 ltoa char *ltoa(long n, char *str, int radix); 返回一个指向str的指针 rand random randomize int rand; int random(int num); void randomize; 返回一个伪随机(整)数 返回一个随机(整)数

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号