C语言函数大全 F
C语言文件操作函数大全

C语言文件操作函数13.1C语言文件1,两种文件存取方式(输入,输出方式)顺序存取直接存取2,数据的两种存放形式文本文件二进制文件13.2文件指针定义文件类型指针变量的一般形式:FILE *指针变量名;例如:FILE *fp1,*fp2;13.3打开文件在使用文件之前,需打开文件.在C里使用fopen函数打开文件.格式为:fopen(文件名,文件使用方式);此函数返回一个指向FILE类型的指针.如:FILE *fp;fp=fopen("file_1","r");如果调用成功,fp就指向file_1,否则返回为NULL,所以为了保证文件的正确使用,要进行测试.采用如下语句:If((fp=fopen("file_1","r"))==NULL){printf("Cannot open this file\n");exit(0);}最常用的文件使用方式及其含义如下:1,"r".为读而打开文本文件.(不存在则出错) 2,"rb".为读而打开二进制文件.3,"w".为写而打开文本文件.(若不存在则新建,反之,则从文件起始位置写,原内容将被覆盖) 4,"wb".为写而打开二进制文件.5,"a".为在文件后面添加数据而打开文本文件.(若不存在,则新建;反之,在原文件后追加)6,"ab".为在文件后面添加数据而打开一个二进制文件.最常用的文件使用方式及其含义如下:7,"r+".为读和写而打开文本文件.(读时,从头开始;在写数据时,新数据只覆盖所占的空间,其后不变) 8,"rb+".为读和写而打开二进制文件.只是在随后的读写时,可以由位置函数设置读和写的起始位置. 9,"w+".首先建立一个新文件,进行写操作,随后可以从头开始读.(若文件存在,原内容将全部消失) 10,"wb+".功能与"w+"同.只是在随后的读写时,可以由位置函数设置读和写的起始位置.最常用的文件使用方式及其含义如下:11,"a+".功能与"a"相同;只是在文件尾部添加新的数据后,可以从头开始读.12,"ab+".功能与"a+"相同;只是在文件尾部添加新数据之后,可以由位置函数设置开始读的起始位置. 13.4关闭文件当文件的读写操作完成之后,使用fclose函数关闭文件.格式如下:fclose(文件指针)如:fclose(fp);13.5调用fgetc和fputc函数进行输入和输出1,调用fputc函数输出一个字符功能是:将字符ch写到文件指针fp所指的文件中去.当输出成功,putc函数返回所输出的字符;否则,返回一个EOF值.EOF是在stdio.h库函数文件中定义的符号常量,其值等于-1.13.5调用fgetc和fputc函数进行输入和输出例如:把从键盘输入的文本按原样输出到名为file_1.dat文件中,用字符@作为键盘输入结束标志. #includeVoid main(){FILE *fpout;char ch;if(fpout=fpopen("file_1","w")==NULL){printf("Cannot open this file!\n");exit(0);}ch=getchar();while(ch!='@'){ fputc(ch,fpout); ch=getchar(); }fclose(fpout);}2.调用fgetc函数输入一个字符功能是:从pf指定的文件中读如一个字符,并把它作为函数值返回.例如:把一个已存在磁盘上的file_1.dat文本文件中的内容,原样输出到终端屏幕上.#includevoid main(){FILE *fpin;char ch;if((fpin=fopen("file_1.dat","r"))==NULL){ printf("Cann't open this file!\n");exit(0);} ch=fgetc(fpin);while (ch!=EOF){ putchar(ch); ch=fgetc(fpin);}fclose(fpin);}13.6判断文件结束函数feofEOF可以作为文本文件的结束标志,但不能作为二进制文件的结束符.feof函数既可以判断二进制文件,又可以判断文本文件.例:编写程序,用于把一个文本文件(源)复制到另一个文件(目的)中,源文件名和目的文件名由命令行输入.命令形式如下:可执行程序名源文件名目的文件名#includevoid filecopy(FILE* ,FILE *);void main(int argc,char *argv[]){FILE *fpin,*fpout;if(argc==3){ fpin=fopen(argv[1],"r");fpout=fopen(argv[2],"w");filecopy(fpin,fpout);fclose(fpin);fclose(fpout);}else if(argc>3)printf("The file names too many!!\n";elseprintf("There are no file names for input or output!!\n );}void filecopy(FILE *fpin,FILE *fpout){char ch;ch=getc(fpin);while(!feof(fpin)){putc(ch,fpout); ch=getc(fpin);}}13.7fscanf函数和fprintf函数1,fscanf函数fscanf只能从文本文件中按格式输入,和scanf函数相似,只不过输入的对象是磁盘上文本文件中的数据.调用形式为:fscanf(文件指针,格式控制字符串,输入项表)例如:fscanf(fp,"%d%d",&a,&b);fscanf(stdin,"%d%d",&a,&b);等价于scanf("%d%d",&a,&b);3.fprintf函数fprintf函数按格式将内存中的数据转换成对应的字符,并以ASCII代码形式输出到文本文件中.Fprintf 函数和printf函数相似,只是将输出的内容按格式存放到磁盘的文本文件中.调用形式如下:fprintf(文件指针,格式控制字符串,输出项表)如:fprintf(fp,"%d %d",x,y);以下语句 fprintf(stdout,"%d %d",x,y)13.8fgets函数和fputs函数1,fgets函数fgets函数用来从文件中读入字符串.调用形式如下: fgets(str,n,fp);函数功能是:从fp所指文件中读入n-1个字符放入str 为起始地址的空间内;如果在未读满n-1个字符时,则遇到换行符或一个EOF结束本次读操作,并已str作为函数值返回. 13.8fgets函数和fputs函数2,fputs函数fput函数把字符串输出到文件中.函数调用形式如下: fputs(str,fp);注意:为了便于读入,在输出字符串时,应当人为的加诸如"\n"这样的字符串.#include <stdio.h>#include <iostream>int main(int argc, char *argv[]){char arr[10] ;char *ap = "hello!" ;FILE *fp ;if ((fp = fopen("hello.txt", "wt+")) == NULL) {printf("error!") ;exit(1) ;}fputs(ap, fp) ;rewind(fp) ; //fgets(arr, 10, fp) ;printf("%s\n", arr) ;fclose(fp) ;return 0 ;}13.9fread函数和fwrite函数例如有如下结构体:struct st{char num[8];float mk[5];}pers[30];以下循环将把这30个元素中的数据输出到fp所指文件中.for(i=0;i<30;i++)fwrite(&pers[i],sizeof(struct st),1,fp);13.9fread函数和fwrite函数以下语句从fp所指的文件中再次将每个学生数据逐个读入到pers数组中.i=0;fread(&pers[i],sizeof(struct st),1,fp);while(!feof(fp)){ i++;fread(&pers[i],sizeof(struct st),1,fp);}13.10文件定位函数1,fseek函数fseek函数用来移动文件位置指针到指定的位置上,接着的读或写操作将从此位置开始.函数的调用形式如下:fseek(pf,offset,origin)pf:文件指针offset:以字节为单位的位移量,为长整形.origin:是起始点,用来指定位移量是以哪个位置为基准的.1,fseek函数位移量的表示方法标识符数字代表的起始点SEEK_SET 0 文件开始SEEK_END 2 文件末尾SEEK_CUR 1 文件当前位置假设pf已指向一个二进制文件,则;fseek(pf,30L,SEEK_SET)fseek(pf,-10L*sizeof(int),SEEK_END)对于文本文件,位移量必须是0;如:fseek(pf,0L,SEEK_SET)fseek(pf,0L,SEEK_END)2. ftell函数ftell函数用以获得文件当前位置指针的位置,函数给出当前位置指针相对于文件开头的字节数.如;long t;t=ftell(pf);当函数调用出错时,函数返回-1L.我们可以通过以下方式来测试一个文件的长度: fseek(fp,0L,SEEK_END);t=ftell(fp);3.rewind函数调用形式为:rewind(pf);函数没有返回值.函数的功能是使文件的位置指针回到文件的开头.13.10文件应用在磁盘上的test.txt文件中放有10个不小于2的正整数,用函数调用方式编写程序.要求实现:1,在被调函数prime中,判断和统计10个整数中的素数以及个数.2,在主函数中将全部素数追加到磁盘文件test.txt的尾部,同时输出到屏幕上.#include#includeInt prime(int a[],int n){int I,j,k=0,flag=0;for(i=0;i { for(j=2;j if(a[i]%j==0){ flag=0; break;}else flag=1;if(flag){a[k]=a[i];k++;}}return k; }void main(){int n,I,a[10];FILE *fp;fp=fopen("test1-2.txt","r+");for(n=0;n<10;n++)fscanf(fp,"%d",&a[n]);n=prime(a,n);fseek(fp,o,2);for(i=0;i {printf("%3d",a[i]);fprintf(fp,"%3d",a[i]);}fclose(fp);}文件操作函数全clearerr(清除文件流的错误旗标)相关函数feof表头文件#include<stdio.h>定义函数void clearerr(FILE * stream);函数说明clearerr()清除参数stream指定的文件流所使用的错误旗标。
C语言函数大全(f开头)

函数大全(f开头)61double fabs(double x);返回双精度x的绝对值。
void far *farcalloc(unsigned long nunits,unsigned long unitsz);堆中给含有nu从远nits个元素的,每个元素占用unitsz个字节长的数组分配存贮区。
成功是返回指向新分配的内存块的指针;若存贮空间不够,返回NULL。
unsigned long farcoreleft(void);返回远堆中未用存贮区的大小。
void farfree(void far *block);释放远堆中以前所分配内存块。
void far *farmalloc(unsigned long nbytes);从远堆分配长nbytes字节的内存块,返回新地址。
void far *farrealloc(void far *oldblock,unsigned long nbytes);调整已分配的内存块的大小为nbytes。
需要的话,可把块中的内容复制到新位置。
要注意:所有的可用的RAM可被分配,大于64K的块可被分配。
远指针用于存取被分配的块。
返回重新分配的内存块的地址。
若存贮块重新分配失败,返回NULL。
struct fcb {char fcb_drive; /* 0 = default, 1 = A, 2 = B */char fcb_name[8]; /* File name */char fcb_ext[3]; /* File extension */short fcb_curblk; /* Current block number */short fcb_recsize; /* Logical record size in bytes */long fcb_filsize; /* File size in bytes */short fcb_date; /* Date file was last written */char fcb_resv[10]; /* Reserved for DOS */char fcb_currec; /* Current record in block */long fcb_random; /* Random record number */};int fclose(FILE *stream);关闭一个流。
C语言字符串函数大全

今天总结了下C语言字符串函数。
C语言字符串函数总结:1.字符处理库(ctype)中的函数2.stdio中的字符串和字符输入/输出的函数3.通用实用库stdlib中的字符串转换函数4.字符串处理库string中的字符串处理函数C语言的字符串实际上是存储单个字符的数组,结尾包含一个结束该字符串的特别的字符("空字符",用'\0'表示)。
char string1[]="first"实际上有6个元素。
char color="blue" char * p="blue"注意p[i]不能修改,若需修改应用字符数组。
一、.字符处理库(ctype)中的函数#include<ctype.h>函数原型:int f(int c)isdigit, isalpha, isalnum, isxdigit, islower, isupper, tolower, toupper, isspace,空白字符:新行符\n, 空格,回车''\r",水平制表符"\t", 垂直制表符"\v" isctrl, ispunct, isprint, isalpha二、stdio中的字符串和字符输入/输出的函数int getchar(void) 从标准输入设备读取字符以整数返回char * get(char * s) 从标准输入设备读入字符到数组s直到遇到新行符和文件结束符为止,然后再数组后追加NULL字符int putchar(int c) 打印字符int puts(const char * s) 打印字符串s和新行符int sprintf(char * s, const char * format) 与printf区别在于输出结果存放在s中int sscanf(char * s, const char * format); 与scanf区别在于从数组s读取数据示例1 字符串反转#include <stdio.h> void reverse(char *s) {if(s[0] == '\0') return;else{reverse(&s[1]); putchar(s[0]);}}int main(){char s[100];gets(s);reverse(s);return 0;}输入:sf输出:fs示例2 sscanf和sprintf #include<stdio.h>int main(){int x=1;double y=2.1;char s[100];sprintf(s,"Hello!%d, %f", x, y);puts(s);sscanf(s,"%d%f",&x,&y);printf("x:%d, y:%f", x, y);return 0;}输出:Hello!1, 2.100000x:1, y:2.100000三、stdlib中的字符串转换函数#include<stdlib.h>1. atoi(将字符串转换成整型数)定义函数int atoi(const char *nptr); 函数说明atoi()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。
C语言函数大全[表格形式]
![C语言函数大全[表格形式]](https://img.taocdn.com/s3/m/fd83bcab8762caaedd33d43c.png)
int abs(int i)
返回整型参 数i的绝对 值
doubl e cabs(struc t compl ex znum)
返回复数znum的绝 对值
doubl e fabs(doubl e x)
返回双精度 参数x的绝 对值
清除浮点状 态字并返回 原来的浮点 状态
void _fpre set()
重新初使化 浮点数学程 序包
unsig ned int _stat us87()
返回浮点状 态字
目录函数,所在函数库 为dir.h、dos.h
int chdir (char *path)
使指定的目 录path(如:"C:\\WPS")变成当前的 工作目录,成功返回0
char *ltoa(long value ,char *strin g,int radix )
将长整型数value转换成字符 串并返回该 字符串,radix为转换时所 用基数
char *itoa(int value ,char *strin g,int radix )
将整数value转换 成字符串存 入string,radix为转换时所 用基数
返回x的双 曲余弦cosh(x)值,x为弧度
doubl e sinh(doubl e x)
返回x的双 曲正弦sinh(x)值,x为弧度
doubl e tanh(doubl e x)
返回x的双 曲正切tanh(x)值,x为弧度
doubl e hypot (doubl e x,doubl e y)
返回直角三 角形斜边的 长度(z),x和y为直 角边的长度,z2=x2+y2
C语言常用数学函数

常用数学函数abs(计算整型数的绝对值)相关函数labs, fabs表头文件#include<stdlib.h>定义函数int abs (int j)函数说明abs()用来计算参数j的绝对值,然后将结果返回。
返回值返回参数j的绝对值结果。
范例#ingclude <stdlib.h>main(){int ansert;answer = abs(-12);printf("|-12| = %d\n", answer);}执行|-12| = 12acos(取反余弦函数数值)相关函数asin , atan , atan2 , cos , sin , tan表头文件#include <math.h>定义函数double acos (double x);函数说明acos()用来计算参数x的反余弦值,然后将结果返回。
参数x范围为-1至1之间,超过此范围则会失败。
返回值返回0至PI之间的计算结果,单位为弧度,在函数库中角度均以弧度来表示。
错误代码EDOM参数x超出范围。
附加说明使用GCC编译时请加入-lm。
范例#include <math.h>main (){double angle;angle = acos(0.5);printf("angle = %f\n", angle);}执行angle = 1.047198asin(取反正弦函数值)相关函数acos , atan , atan2 , cos , sin , tan表头文件#include <math.h>定义函数double asin (double x)函数说明asin()用来计算参数x的反正弦值,然后将结果返回。
参数x范围为-1至1之间,超过此范围则会失败。
返回值返回-PI/2之PI/2之间的计算结果。
错误代码EDOM参数x超出范围附加说明使用GCC编译时请加入-lm范例#include<math.h>main(){double angle;angle = asin (0.5);printf("angle = %f\n",angle);}执行angle = 0.523599atan(取反正切函数值)相关函数acos,asin,atan2,cos,sin,tan表头文件#include<math.h>定义函数double atan(double x);函数说明atan()用来计算参数x的反正切值,然后将结果返回。
C语言库函数大全

C语言库函数大全absread()读磁盘绝对扇区函数原形:int absread(int drive,int num,int sectnum,void *buf)功能:从drive指定的驱动器磁盘上,sectnum指定的逻辑扇区号开始读取(通过DOS中断0x25读取)num个(最多64K个)扇区的内容,储存于buf所指的缓冲区中。
参数:drive=0对应A盘,drive=1对应B盘。
返回值:0:成功;-1:失败。
头文件:dos.habswrite()写磁盘绝对扇区函数原形:int abswrite(int drive,int nsects,int lsect,void *buffer)drive=0(A驱动器)、1(B驱动器)、nsects=要写的扇区数(最多64K个);lsect=起始逻辑扇区号;buffer=要写入数据的内存起始地址。
功能:将指定内容写入(调用DOS中断0x26)磁盘上的指定扇区,即使写入的地方是磁盘的逻辑结构、文件、FAT表和目录结构所在的扇区,也照常进行。
返回值:0:成功;-1:失败。
头文件:dos.hatof()将字符串转换成浮点数的函数原形:double atof(const char *s)功能:把s所指向的字符串转换成double类型。
s格式为:符号数字.数字 E符号数字返回值:字符串的转换值。
头文件:math.h、stdlib.hatoi()将字符串转换成整型数的函数原形:int atoi(const char *s)功能:把s所指向的字符串转换成int类型。
s格式为:符号数字返回值:字符串的转换值。
若出错则返回0。
头文件:stdlib.hatol()将字符串转换成长整型数的函数原形:long atol(const char *s)功能:把s所指向的字符串转换成long int类型。
s格式为:符号数字返回值:字符串的转换值。
若出错则返回0。
头文件:stdlib.hbcd()把一个数转换成对应的BCD码的函数原形:bcd bcd(int x)bcd bcd(double x)bcd bcd(double x,int decimals)注意:BCD码的精度可达17位。
CC++——C语言库函数大全

CC++——C语⾔库函数⼤全本⽂转载⾃:https:///yanfan0916/article/details/6450442###;1. 分类函数: ctype.hint isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回⾮0值,否则返回0int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回⾮0值,否则返回0int isascii(int ch) 若ch是字符(ASCII码中的0-127)返回⾮0值,否则返回0int iscntrl(int ch) 若ch是作废字符(0x7F)或普通控制字符(0x00-0x1F),返回⾮0值,否则返回0int isdigit(int ch) 若ch是数字('0'-'9')返回⾮0值,否则返回0int isgraph(int ch) 若ch是可打印字符(不含空格)(0x21-0x7E)返回⾮0值,否则返回0int islower(int ch) 若ch是⼩写字母('a'-'z')返回⾮0值,否则返回0int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回⾮0值,否则返回0int ispunct(int ch) 若ch是标点字符(0x00-0x1F)返回⾮0值,否则返回0int isspace(int ch) 若ch是空格(' '),⽔平制表符('/t'),回车符('/r'),⾛纸换⾏('/f'), 垂直制表符('/v'),换⾏符('/n'),返回⾮0值,否则返回0int isupper(int ch) 若ch是⼤写字母('A'-'Z')返回⾮0值,否则返回0int isxdigit(int ch) 若ch是16进制数('0'-'9','A'-'F','a'-'f')返回⾮0值,否则返回0int tolower(int ch) 若ch是⼤写字母('A'-'Z')返回相应的⼩写字母('a'-'z')int toupper(int ch) 若ch是⼩写字母('a'-'z')返回相应的⼤写字母('A'-'Z')2. 数学函数: math.h 、 stdlib.h 、string.h 、float.hint abs(int i) 返回整型参数i的绝对值double cabs(struct complex znum) 返回复数znum的绝对值double fabs(double x) 返回双精度参数x的绝对值long labs(long n) 返回长整型参数n的绝对值double exp(double x) 返回指数函数e^x的值double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中double ldexp(double value,int exp); 返回value*2exp的值double log(double x) 返回ln(x)的值double log10(double x) 返回log10(x)的值double pow(double x,double y) 返回x^y的值double pow10(int p) 返回10^p的值double sqrt(double x) 返回x的正平⽅根double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度double atan(double x) 返回x的反正切tan-1(x)值,x为弧度double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度double cos(double x) 返回x的余弦cos(x)值,x为弧度double sin(double x) 返回x的正弦sin(x)值,x为弧度double tan(double x) 返回x的正切tan(x)值,x为弧度double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度double hypot(double x,double y) 返回直⾓三⾓形斜边的长度(z), x和y为直⾓边的长度,z2=x2+y2 double ceil(double x) 返回不⼩于x的最⼩整数double floor(double x) 返回不⼤于x的最⼤整数void srand(unsigned seed) 初始化随机数发⽣器int rand() 产⽣⼀个随机数并返回这个数double poly(double x,int n,double c[])从参数产⽣⼀个多项式double modf(double value,double *iptr)将双精度数value分解成尾数和阶double fmod(double x,double y) 返回x/y的余数double frexp(double value,int *eptr) 将双精度数value分成尾数和阶double atof(char *nptr) 将字符串nptr转换成浮点数并返回这个浮点数double atoi(char *nptr) 将字符串nptr转换成整数并返回这个整数double atol(char *nptr) 将字符串nptr转换成长整数并返回这个整数char *ecvt(double value,int ndigit,int *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *fcvt(double value,int ndigit,int *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *gcvt(double value,int ndigit,char *buf)将数value转换成字符串并存于buf中,并返回buf的指针char *ultoa(unsigned long value,char *string,int radix)将⽆符号整型数value转换成字符串并返回该字符串,radix为转换时所⽤基数char *ltoa(long value,char *string,int radix)将长整型数value转换成字符串并返回该字符串,radix为转换时所⽤基数char *itoa(int value,char *string,int radix)将整数value转换成字符串存⼊string,radix为转换时所⽤基数double atof(char *nptr) 将字符串nptr转换成双精度数,并返回这个数,错误返回0int atoi(char *nptr) 将字符串nptr转换成整型数, 并返回这个数,错误返回0long atol(char *nptr) 将字符串nptr转换成长整型数,并返回这个数,错误返回0double strtod(char *str,char **endptr)将字符串str转换成双精度数,并返回这个数,long strtol(char *str,char **endptr,int base)将字符串str转换成长整型数,并返回这个数, int matherr(struct exception *e)⽤户修改数学错误返回信息函数(没有必要使⽤)double _matherr(_mexcep why,char *fun,double *arg1p,double *arg2p,double retval)⽤户修改数学错误返回信息函数(没有必要使⽤)unsigned int _clear87() 清除浮点状态字并返回原来的浮点状态void _fpreset() 重新初使化浮点数学程序包unsigned int _status87() 返回浮点状态字3. ⽬录函数: dir.h 、 dos.hint chdir(char *path) 使指定的⽬录path(如:"C://WPS")变成当前的⼯作⽬录,成功返回0int findfirst(char *pathname,struct ffblk *ffblk,int attrib)查找指定的⽂件,成功返回0pathname为指定的⽬录名和⽂件名,如"C://WPS//TXT"ffblk为指定的保存⽂件信息的⼀个结构,定义如下:┏━━━━━━━━━━━━━━━━━━┓┃struct ffblk ┃┃{ ┃┃ char ff_reserved[21]; /*DOS保留字*/ ┃┃ char ff_attrib; /*⽂件属性*/ ┃┃ int ff_ftime; /*⽂件时间*/ ┃┃ int ff_fdate; /*⽂件⽇期*/ ┃┃ long ff_fsize; /*⽂件长度*/ ┃┃ char ff_name[13]; /*⽂件名*/ ┃┃} ┃┗━━━━━━━━━━━━━━━━━━┛attrib为⽂件属性,由以下字符代表┏━━━━━━━━━┳━━━━━━━━┓┃FA_RDONLY 只读⽂件┃FA_LABEL 卷标号┃┃FA_HIDDEN 隐藏⽂件┃FA_DIREC ⽬录┃┃FA_SYSTEM 系统⽂件┃FA_ARCH 档案┃┗━━━━━━━━━┻━━━━━━━━┛例:struct ffblk ff;findfirst("*.wps",&ff,FA_RDONLY);int findnext(struct ffblk *ffblk) 取匹配finddirst的⽂件,成功返回0void fumerge(char *path,char *drive,char *dir,char *name,char *ext)此函数通过盘符drive(C:、A:等),路径dir(/TC、/BC/LIB等),⽂件名name(TC、WPS等),扩展名ext(.EXE、.COM等)组成⼀个⽂件名存与path中.int fnsplit(char *path,char *drive,char *dir,char *name,char *ext)此函数将⽂件名path分解成盘符drive(C:、A:等),路径dir(/TC、/BC/LIB等),⽂件名name(TC、WPS等),扩展名ext(.EXE、.COM等),并分别存⼊相应的变量中. int getcurdir(int drive,char *direc) 此函数返回指定驱动器的当前⼯作⽬录名称drive 指定的驱动器(0=当前,1=A,2=B,3=C等)direc 保存指定驱动器当前⼯作路径的变量成功返回0char *getcwd(char *buf,iint n) 此函数取当前⼯作⽬录并存⼊buf中,直到n个字节长为为⽌.错误返回NULLint getdisk() 取当前正在使⽤的驱动器,返回⼀个整数(0=A,1=B,2=C等)int setdisk(int drive) 设置要使⽤的驱动器drive(0=A,1=B,2=C等),返回可使⽤驱动器总数int mkdir(char *pathname) 建⽴⼀个新的⽬录pathname,成功返回0int rmdir(char *pathname) 删除⼀个⽬录pathname,成功返回0char *mktemp(char *template) 构造⼀个当前⽬录上没有的⽂件名并存于template中char *searchpath(char *pathname) 利⽤MSDOS找出⽂件filename所在路径,,此函数使⽤DOS的PATH变量,未找到⽂件返回NULL4. 进程函数: stdlib.h 、 process.hvoid abort() 此函数通过调⽤具有出⼝代码3的_exit写⼀个终⽌信息于stderr,并异常终⽌程序。
C语言函数大全

C语言函数目录:A函数名: abort功能: 异常终止一个进程函数名: abs功能: 求整数的绝对值函数名: absread, abswirte功能: 绝对磁盘扇区读、写数据函数名: access功能: 确定文件的访问权限函数名: acos功能: 反余弦函数函数名: allocmem功能: 分配DOS存储段函数名: arc功能: 画一弧线函数名: asctime功能: 转换日期和时间为ASCII码函数名: asin功能: 反正弦函数函数名: assert功能: 测试一个条件并可能使程序终止函数名: atan功能: 反正切函数函数名: atan2功能: 计算Y/X的反正切值函数名: atexit功能: 注册终止函数函数名: atof功能: 把字符串转换成浮点数函数名: atoi功能: 把字符串转换成长整型数函数名: atol功能: 把字符串转换成长整型数B函数名: bar功能: 画一个二维条形图函数名: bar3d功能: 画一个三维条形图函数名: bdos功能: DOS系统调用函数名: bdosptr功能: DOS系统调用函数名: bioscom功能: 串行I/O通信函数名: biosdisk功能: 软硬盘I/O函数名: biosequip功能: 检查设备函数名: bioskey功能: 直接使用BIOS服务的键盘接口函数名: biosmemory功能: 返回存储块大小函数名: biostime功能: 读取或设置BIOS时间函数名: brk功能: 改变数据段空间分配函数名: bsearch功能: 二分法搜索C函数名: cabs功能: 计算复数的绝对值函数名: calloc功能: 分配主存储器函数名: ceil功能: 向上舍入函数名: cgets功能: 从控制台读字符串函数名: chdir功能: 改变工作目录函数名: _chmod, chmod功能: 改变文件的访问方式函数名: chsize功能: 改变文件大小函数名: circle功能: 在给定半径以(x, y)为圆心画圆函数名: cleardevice功能: 清除图形屏幕函数名: clearerr功能: 复位错误标志函数名: clearviewport功能: 清除图形视区函数名: _close, close功能: 关闭文件句柄函数名: clock功能: 确定处理器时间函数名: closegraph功能: 关闭图形系统函数名: clreol功能: 在文本窗口中清除字符到行末功能: 清除文本模式窗口函数名: clrscr函数名: coreleft功能: 返回未使用内存的大小函数名: cos功能: 余弦函数函数名: cosh功能: 双曲余弦函数函数名: country功能: 返回与国家有关的信息函数名: cprintf功能: 送格式化输出至屏幕函数名: cputs功能: 写字符到屏幕函数名: _creat creat功能: 创建一个新文件或重写一个已存在的文件函数名: creatnew功能: 创建一个新文件函数名: creattemp功能: 创建一个新文件或重写一个已存在的文件函数名: cscanf功能: 从控制台执行格式化输入函数名: ctime功能: 把日期和时间转换为字符串函数名: ctrlbrk功能: 设置Ctrl-Break处理程序D函数名: delay功能: 将程序的执行暂停一段时间(毫秒)函数名: delline功能: 在文本窗口中删去一行函数名: detectgraph功能: 通过检测硬件确定图形驱动程序和模式函数名: difftime功能: 计算两个时刻之间的时间差函数名: disable功能: 屏蔽中断函数名: div功能: 将两个整数相除, 返回商和余数函数名: dosexterr功能: 获取扩展DOS错误信息函数名: dostounix功能: 转换日期和时间为UNIX时间格式函数名: drawpoly功能: 画多边形函数名: dup功能: 复制一个文件句柄函数名: dup2功能: 复制文件句柄E函数名: ecvt功能: 把一个浮点数转换为字符串函数名: ellipse功能: 画一椭圆函数名: enable功能: 开放硬件中断函数名: eof功能: 检测文件结束函数名: exec...功能: 装入并运行其它程序的函数函数名: exit功能: 终止程序F函数名: fabs功能: 返回浮点数的绝对值函数名: farcalloc功能: 从远堆栈中申请空间函数名: farcoreleft功能: 返回远堆中未作用存储区大小函数名: farfree功能: 从远堆中释放一块函数名: farmalloc功能: 从远堆中分配存储块函数名: farrealloc功能: 调整远堆中的分配块函数名: fclose功能: 关闭一个流函数名: fcloseall功能: 关闭打开流函数名: fcvt功能: 把一个浮点数转换为字符串函数名: fdopen功能: 把流与一个文件句柄相接函数名: feof功能: 检测流上的文件结束符函数名: ferror功能: 检测流上的错误函数名: fflush功能: 清除一个流函数名: fgetc功能: 从流中读取字符函数名: fgetchar功能: 从流中读取字符函数名: fgetpos功能: 取得当前文件的句柄函数名: fgets功能: 从流中读取一字符串函数名: filelength功能: 取文件长度字节数函数名: fillellipse功能: 画出并填充一椭圆函数名: fillpoly功能: 画并填充一个多边形函数名: findfirst, findnext功能: 搜索磁盘目录; 取得下一个匹配的findfirst模式的文件函数名: floodfill功能: 填充一个有界区域函数名: floor功能: 向下舍入函数名: flushall功能: 清除所有缓冲区函数名: fmod功能: 计算x对y的模, 即x/y的余数函数名: fnmerge功能: 建立新文件名函数名: fopen功能: 打开一个流函数名: fprintf功能: 传送格式化输出到一个流中函数名: FP_OFF功能: 获取远地址偏移量函数名: FP_SEG功能: 获取远地址段值函数名: fputc功能: 送一个字符到一个流中函数名: fputchar功能: 送一个字符到标准输出流(stdout)中函数名: fputs功能: 送一个字符到一个流中函数名: fread功能: 从一个流中读数据函数名: free功能: 释放已分配的块函数名: freemem功能: 释放先前分配的DOS内存块函数名: freopen功能: 替换一个流函数名: frexp功能: 把一个双精度数分解为尾数的指数函数名: fscanf功能: 从一个流中执行格式化输入函数名: fseek功能: 重定位流上的文件指针函数名: fsetpos功能: 定位流上的文件指针函数名: fstat功能: 获取打开文件信息函数名: ftell功能: 返回当前文件指针函数名: fwrite功能: 写内容到流中G函数名: gcvt功能: 把浮点数转换成字符串函数名: geninterrupt功能: 产生一个软中断函数名: getarccoords功能: 取得最后一次调用arc的坐标函数名: getaspectratio功能: 返回当前图形模式的纵横比函数名: getbkcolor功能: 返回当前背景颜色函数名: getc功能: 从流中取字符函数名: getcbrk功能: 获取Control_break设置函数名: getch功能: 从控制台无回显地取一个字符函数名: getchar功能: 从stdin流中读字符函数名: getche功能: 从控制台取字符(带回显)函数名: getcolor功能: 返回当前画线颜色函数名: getcurdir功能: 取指定驱动器的当前目录函数名: getcwd功能: 取当前工作目录函数名: getdate功能: 取DOS日期函数名: getdefaultpalette功能: 返回调色板定义结构函数名: getdisk功能: 取当前磁盘驱动器号函数名: getdrivername功能: 返回指向包含当前图形驱动程序名字的字符串指针函数名: getdta功能: 取磁盘传输地址函数名: getenv功能: 从环境中取字符串函数名: getfat, getfatd功能: 取文件分配表信息函数名: getfillpattern功能: 将用户定义的填充模式拷贝到内存中函数名: getfillsettings功能: 取得有关当前填充模式和填充颜色的信息函数名: getftime功能: 取文件日期和时间函数名: getgraphmode功能: 返回当前图形模式函数名: getftime功能: 取文件日期和时间函数名: getgraphmode功能: 返回当前图形模式函数名: getimage功能: 将指定区域的一个位图存到主存中函数名: getlinesettings功能: 取当前线型、模式和宽度函数名: getmaxcolor功能: 返回可以传给函数setcolor的最大颜色值函数名: getmaxx功能: 返回屏幕的最大x坐标函数名: getmaxy功能: 返回屏幕的最大y坐标函数名: getmodename功能: 返回含有指定图形模式名的字符串指针函数名: getmoderange功能: 取给定图形驱动程序的模式范围函数名: getpalette功能: 返回有关当前调色板的信息函数名: getpass功能: 读一个口令函数名: getpixel功能: 取得指定像素的颜色函数名: gets功能: 从流中取一字符串函数名: gettext功能: 将文本方式屏幕上的文本拷贝到存储区函数名: gettextinfo功能: 取得文本模式的显示信息函数名: gettextsettings功能: 返回有关当前图形文本字体的信息函数名: gettime功能: 取得系统时间函数名: getvect功能: 取得中断向量入口函数名: getverify功能: 返回DOS校验标志状态函数名: getviewsetting功能: 返回有关当前视区的信息函数名: getw功能: 从流中取一整数函数名: getx功能: 返回当前图形位置的x坐标函数名: gety功能: 返回当前图形位置的y坐标函数名: gmtime功能: 把日期和时间转换为格林尼治标准时间(GMT)函数名: gotoxy功能: 在文本窗口中设置光标函数名: gotoxy功能: 在文本窗口中设置光标函数名: graphdefaults功能: 将所有图形设置复位为它们的缺省值函数名: grapherrormsg功能: 返回一个错误信息串的指针函数名: graphresult功能: 返回最后一次不成功的图形操作的错误代码函数名: _graphfreemem功能: 用户可修改的图形存储区释放函数函数名: _graphgetmem功能: 用户可修改的图形存储区分配函数H函数名: harderr功能: 建立一个硬件错误处理程序函数名: hardresume功能: 硬件错误处理函数函数名: highvideo功能: 选择高亮度文本字符函数名: hypot功能: 计算直角三角形的斜边长I函数名: imagesize功能: 返回保存位图像所需的字节数函数名: initgraph功能: 初始化图形系统函数名: inport功能: 从硬件端口中输入函数名: insline功能: 在文本窗口中插入一个空行函数名: installuserdriver功能: 安装设备驱动程序到BGI设备驱动程序表中函数名: installuserfont功能: 安装未嵌入BGI系统的字体文件(CHR)函数名: int86功能: 通用8086软中断接口函数名: int86x功能: 通用8086软中断接口函数名: intdos功能: 通用DOS接口函数名: intdosx功能: 通用DOS中断接口函数名: intr功能: 改变软中断接口函数名: ioctl功能: 控制I/O设备函数名: isatty功能: 检查设备类型函数名: itoa功能: 把一整数转换为字符串K函数名: kbhit功能: 检查当前按下的键函数名: keep功能: 退出并继续驻留L函数名: labs功能: 取长整型绝对值函数名: ldexp功能: 计算value*2的幂函数名: ldiv功能: 两个长整型数相除, 返回商和余数函数名: lfind功能: 执行线性搜索函数名: line功能: 在指定两点间画一直线函数名: linerel功能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线函数名: localtime功能: 把日期和时间转变为结构函数名: lock功能: 设置文件共享锁函数名: log功能: 对数函数ln(x)函数名: log10功能: 对数函数log函数名: longjump功能: 执行非局部转移函数名: lowvideo功能: 选择低亮度字符函数名: lrotl, _lrotl功能: 将无符号长整型数向左循环移位函数名: lsearch功能: 线性搜索函数名: lseek功能: 移动文件读/写指针Mmain()主函数函数名: memccpy功能: 从源source中拷贝n个字节到目标destin中函数名: malloc功能: 内存分配函数函数名: memchr功能: 在数组的前n个字节中搜索字符函数名: memcpy功能: 从源source中拷贝n个字节到目标destin中函数名: memicmp功能: 比较两个串s1和s2的前n个字节, 忽略大小写函数名: memmove功能: 移动一块字节函数名: memset功能: 设置s中的所有字节为ch, s数组的大小由n给定函数名: mkdir功能: 建立一个目录函数名: mktemp功能: 建立唯一的文件名函数名: MK_FP功能: 设置一个远指针函数名: modf功能: 把数分为指数和尾数函数名: movedata功能: 拷贝字节函数名: moverel功能: 将当前位置(CP)移动一相对距离函数名: movetext功能: 将屏幕文本从一个矩形区域拷贝到另一个矩形区域函数名: moveto功能: 将CP移到(x, y)函数名: movemem功能: 移动一块字节N函数名: normvideo功能: 选择正常亮度字符函数名: nosound功能: 关闭PC扬声器O函数名: open功能: 打开一个文件用于读或写函数名: outport功能: 输出整数到硬件端口中函数名: outportb功能: 输出字节到硬件端口中函数名: outtext功能: 在视区显示一个字符串函数名: outtextxy功能: 在指定位置显示一字符串P函数名: parsfnm功能: 分析文件名函数名: peek功能: 检查存储单元函数名: peekb功能: 检查存储单元函数名: perror功能: 系统错误信息函数名: pieslice功能: 绘制并填充一个扇形函数名: poke功能: 存值到一个给定存储单元函数名: pokeb功能: 存值到一个给定存储单元函数名: poly功能: 根据参数产生一个多项式函数名: pow功能: 指数函数(x的y次方)函数名: pow10功能: 指数函数(10的p次方)函数名: printf功能: 产生格式化输出的函数函数名: putc功能: 输出一字符到指定流中函数名: putch功能: 输出字符到控制台函数名: putchar功能: 在stdout上输出字符函数名: putenv功能: 把字符串加到当前环境中函数名: putimage功能: 在屏幕上输出一个位图函数名: putpixel功能: 在指定位置画一像素函数名: puts功能: 送一字符串到流中函数名: puttext功能: 将文本从存储区拷贝到屏幕函数名: putw功能: 把一字符或字送到流中Q函数名: qsort功能: 使用快速排序例程进行排序R函数名: raise功能: 向正在执行的程序发送一个信号函数名: rand功能: 随机数发生器函数名: randbrd功能: 随机块读函数名: randbwr功能: 随机块写函数名: random功能: 随机数发生器函数名: randomize功能: 初始化随机数发生器函数名: read功能: 从文件中读函数名: realloc功能: 重新分配主存函数名: rectangle功能: 画一个矩形函数名: registerbgidriver功能: 登录已连接进来的图形驱动程序代码函数名: remove功能: 删除一个文件函数名: rename功能: 重命名文件函数名: restorecrtmode功能: 将屏幕模式恢复为先前的imitgraph设置函数名: rewind功能: 将文件指针重新指向一个流的开头函数名: rmdir功能: 删除DOS文件目录S函数名: sbrk功能: 改变数据段空间位置函数名: scanf功能: 执行格式化输入函数名: searchpath功能: 搜索DOS路径函数名: sector功能: 画并填充椭圆扇区函数名: segread功能: 读段寄存器值函数名: setactivepage功能: 设置图形输出活动页函数名: setallpallette功能: 按指定方式改变所有的调色板颜色函数名: setaspectratio功能: 设置图形纵横比函数名: setbkcolor功能: 用调色板设置当前背景颜色函数名: setblock功能: 修改先前已分配的DOS存储段大小函数名: setbuf功能: 把缓冲区与流相联函数名: setcbrk功能: 设置Control-break函数名: setcolor功能: 设置当前画线颜色函数名: setdate功能: 设置DOS日期函数名: setdisk功能: 设置当前磁盘驱动器函数名: setdta功能: 设置磁盘传输区地址函数名: setfillpattern功能: 选择用户定义的填充模式函数名: setfillstyle功能: 设置填充模式和颜色函数名: setftime功能: 设置文件日期和时间函数名: setgraphbufsize功能: 改变内部图形缓冲区的大小函数名: setgraphmode功能: 将系统设置成图形模式且清屏函数名: setjmp功能: 非局部转移函数名: setlinestyle功能: 设置当前画线宽度和类型函数名: setmem功能: 存值到存储区函数名: setmode功能: 设置打开文件方式函数名: setpalette功能: 改变调色板的颜色函数名: setrgbpalette功能: 定义IBM8514图形卡的颜色函数名: settextjustify功能: 为图形函数设置文本的对齐方式函数名: settextstyle功能: 为图形输出设置当前的文本属性函数名: settextstyle功能: 为图形输出设置当前的文本属性函数名: settime功能: 设置系统时间函数名: setusercharsize功能: 为矢量字体改变字符宽度和高度函数名: setvbuf功能: 把缓冲区与流相关函数名: setvect功能: 设置中断矢量入口函数名: setverify功能: 设置验证状态函数名: setviewport功能: 为图形输出设置当前视口函数名: setvisualpage功能: 设置可见图形页号函数名: setwritemode功能: 设置图形方式下画线的输出模式函数名: signal功能: 设置某一信号的对应动作函数名: sin功能: 正弦函数函数名: sinh功能: 双曲正弦函数函数名: sleep功能: 执行挂起一段时间函数名: sopen功能: 打开一共享文件函数名: sound功能: 以指定频率打开PC扬声器函数名: spawnl功能: 创建并运行子程序函数名: spawnle功能: 创建并运行子程序函数名: sprintf功能: 送格式化输出到字符串中函数名: sqrt功能: 计算平方根函数名: srand功能: 初始化随机数发生器函数名: sscanf功能: 执行从字符串中的格式化输入函数名: stat功能: 读取打开文件信息函数名: _status87功能: 取浮点状态函数名: stime功能: 设置时间函数名: stpcpy功能: 拷贝一个字符串到另一个函数名: strcat功能: 字符串拼接函数函数名: strchr功能: 在一个串中查找给定字符的第一个匹配之处\函数名: strcmp功能: 串比较函数名: strncmpi功能: 将一个串中的一部分与另一个串比较, 不管大小写函数名: strcpy功能: 串拷贝函数名: strcspn功能: 在串中查找第一个给定字符集内容的段函数名: strdup功能: 将串拷贝到新建的位置处函数名: stricmp功能: 以大小写不敏感方式比较两个串函数名: strerror功能: 返回指向错误信息字符串的指针函数名: strcmpi功能: 将一个串与另一个比较, 不管大小写函数名: strncmp功能: 串比较函数名: strncmpi功能: 把串中的一部分与另一串中的一部分比较, 不管大小写函数名: strncpy功能: 串拷贝函数名: strnicmp功能: 不注重大小写地比较两个串函数名: strnset功能: 将一个串中的所有字符都设为指定字符函数名: strpbrk功能: 在串中查找给定字符集中的字符函数名: strrchr功能: 在串中查找指定字符的最后一个出现函数名: strrev功能: 串倒转函数名: strset功能: 将一个串中的所有字符都设为指定字符函数名: strspn功能: 在串中查找指定字符集的子集的第一次出现函数名: strstr功能: 在串中查找指定字符串的第一次出现函数名: strtod功能: 将字符串转换为double型值函数名: strtok功能: 查找由在第二个串中指定的分界符分隔开的单词函数名: strtol功能: 将串转换为长整数函数名: strupr功能: 将串中的小写字母转换为大写字母函数名: swab功能: 交换字节函数名: system功能: 发出一个DOS命令T函数名: tan功能: 正切函数函数名: tanh功能: 双曲正切函数函数名: tell功能: 取文件指针的当前位置函数名: textattr功能: 设置文本属性函数名: textbackground功能: 选择新的文本背景颜色函数名: textcolor功能: 在文本模式中选择新的字符颜色函数名: textheight功能: 返回以像素为单位的字符串高度函数名: textmode功能: 将屏幕设置成文本模式函数名: textwidth功能: 返回以像素为单位的字符串宽度函数名: time功能: 取一天的时间函数名: tmpfile功能: 以二进制方式打开暂存文件函数名: tmpnam功能: 创建一个唯一的文件名函数名: tolower功能: 把字符转换成小写字母函数名: toupper功能: 把字符转换成大写字母函数名: tzset功能: UNIX时间兼容函数U函数名: ultoa功能: 转换一个无符号长整型数为字符串函数名: ungetc功能: 把一个字符退回到输入流中函数名: ungetch功能: 把一个字符退回到键盘缓冲区中函数名: unixtodos功能: 把日期和时间转换成DOS格式函数名: unlink功能: 删掉一个文件函数名: unlock功能: 解除文件共享锁V函数名: vfprintf功能: 送格式化输出到一流中函数名: vfscanf功能: 从流中执行格式化输入函数名: vprintf功能: 送格式化输出到stdout中函数名: vscanf功能: 从stdin中执行格式化输入函数名: vsprintf功能: 送格式化输出到串中函数名: vsscanf功能: 从流中执行格式化输入W函数名: wherex功能: 返回窗口内水平光标位置函数名: wherey功能: 返回窗口内垂直光标位置函数名: window功能: 定义活动文本模式窗口函数名: write功能: 写到一文件中A函数名: abort功能: 异常终止一个进程用法: void abort(void);程序例:#include <stdio.h>#include <stdlib.h>int main(void){printf("Calling abort()¥n");abort();return 0; /* This is never reached */}函数名: abs功能: 求整数的绝对值用法: int abs(int i);程序例:#include <stdio.h>#include <math.h>int main(void){int number = -1234;printf("number: %d absolute value: %d¥n", number, abs(number));return 0;}函数名: absread, abswirte功能: 绝对磁盘扇区读、写数据用法: int absread(int drive, int nsects, int sectno, void *buffer); int abswrite(int drive, int nsects, in tsectno, void *buffer);程序例:/* absread example */#include <stdio.h>#include <conio.h>#include <process.h>#include <dos.h>int main(void){int i, strt, ch_out, sector;char buf[512];printf("Insert a diskette into drive A and press any key¥n"); getch();sector = 0;if (absread(0, 1, sector, &buf) != 0){perror("Disk problem");exit(1);}printf("Read OK¥n");strt = 3;for (i=0; i<80; i++){ch_out = buf[strt+i];putchar(ch_out);}printf("¥n");return(0);}函数名: access功能: 确定文件的访问权限用法: int access(const char *filename, int amode); 程序例:#include <stdio.h>#include <io.h>int file_exists(char *filename);int main(void){printf("Does NOTEXIST.FIL exist: %s¥n",file_exists("NOTEXISTS.FIL") ? "YES" : "NO"); return 0;}int file_exists(char *filename){return (access(filename, 0) == 0);}函数名: acos功能: 反余弦函数用法: double acos(double x);程序例:#include <stdio.h>#include <math.h>int main(void){double result;double x = 0.5;result = acos(x);printf("The arc cosine of %lf is %lf¥n", x, result);return 0;}函数名: allocmem功能: 分配DOS存储段用法: int allocmem(unsigned size, unsigned *seg);程序例:#include <dos.h>#include <alloc.h>#include <stdio.h>int main(void){unsigned int size, segp;int stat;size = 64; /* (64 x 16) = 1024 bytes */stat = allocmem(size, &segp);if (stat == -1)printf("Allocated memory at segment: %x¥n", segp); elseprintf("Failed: maximum number of paragraphs available is %u¥n",stat);return 0;}函数名: arc功能: 画一弧线用法: void far arc(int x, int y, int stangle, int endangle, int radius); 程序例:#include <graphics.h>#include <stdlib.h>#include <stdio.h>#include <conio.h>int main(void){/* request auto detection */int gdriver = DETECT, gmode, errorcode;int midx, midy;int stangle = 45, endangle = 135;int radius = 100;/* initialize graphics and local variables */initgraph(&gdriver, &gmode, "");/* read result of initialization */errorcode = graphresult(); /* an error occurred */if (errorcode != grOk){printf("Graphics error: %s¥n", grapherrormsg(errorcode));printf("Press any key to halt:");getch();exit(1); /* terminate with an error code */}midx = getmaxx() / 2;midy = getmaxy() / 2;setcolor(getmaxcolor());/* draw arc */arc(midx, midy, stangle, endangle, radius); /* clean up */getch();closegraph();return 0;}函数名: asctime功能: 转换日期和时间为ASCII码用法: char *asctime(const struct tm *tblock); 程序例:#include <stdio.h>#include <string.h>#include <time.h>int main(void){struct tm t;char str[80];/* sample loading of tm structure */t.tm_sec = 1; /* Seconds */t.tm_min = 30; /* Minutes */t.tm_hour = 9; /* Hour */。
(完整版)C语言函数大全

功能: 异常终止一个进程用法: void abort(void)函数名: abs功能: 求整数的绝对值用法: int abs(int i)函数名: absread, abswirte功能: 绝对磁盘扇区读、写数据用法: int absread(int drive, int nsects, int sectno, void *buffer) int abswrite(int drive, int nsects, in tsectno, void *buffer函数名: access功能: 确定文件的访问权限用法: int access(const char *filename, int amode)函数名: acos功能:反余弦函数用法: double acos(double x)函数名: allocmem功能: 分配DOS存储段用法:int allocmem(unsigned size, unsigned *seg)函数名: arc功能: 画一弧线用法:void far arc(int x, int y, int stangle, int endangle, int radius)函数名: asctime功能: 转换日期和时间为ASCII码用法:char *asctime(const struct tm *tblock)函数名: asin功能:反正弦函数用法: double asin(double x)函数名: assert功能: 测试一个条件并可能使程序终止用法:void assert(int test)函数名: atan功能: 反正切函数用法: double atan(double x)功能: 计算Y/X的反正切值用法: double atan2(double y, double x)函数名:atexit功能: 注册终止函数用法: int atexit(atexit_t func)函数名: atof功能: 把字符串转换成浮点数用法:double atof(const char *nptr)函数名: atoi功能: 把字符串转换成长整型数用法: int atoi(const char *nptr)函数名: atol功能: 把字符串转换成长整型数用法: long atol(const char *nptr)函数名: bar功能: 画一个二维条形图用法: void far bar(int left, int top, int right, int bottom)函数名: bar3d功能: 画一个三维条形图用法:void far bar3d(int left, int top, int right, int bottom,int depth, int topflag)函数名: bdos功能: DOS系统调用用法: int bdos(int dosfun, unsigned dosdx, unsigned dosal)函数名:bdosptr功能:DOS系统调用用法: int bdosptr(int dosfun, void *argument, unsigned dosal)函数名:bioscom功能: 串行I/O通信用法:int bioscom(int cmd, char abyte, int port)函数名:biosdisk功能: 软硬盘I/O用法:int biosdisk(int cmd, int drive, int head, int track, int sectorint nsects, void *buffer)函数名:biosequip功能: 检查设备用法:int biosequip(void)函数名:bioskey功能: 直接使用BIOS服务的键盘接口用法:int bioskey(int cmd)函数名:biosmemory功能: 返回存储块大小用法:int biosmemory(void)函数名:biosprint功能: 直接使用BIOS服务的打印机I/O用法:int biosprint(int cmd, int byte, int port)函数名:biostime功能: 读取或设置BIOS时间用法: long biostime(int cmd, long newtime)函数名: brk功能: 改变数据段空间分配用法:int brk(void *endds)函数名:bsearch功能: 二分法搜索用法:void *bsearch(const void *key, const void *base, size_t *nelem, size_t width, int(*fcmp)(const void *, const *))函数名: cabs功能: 计算复数的绝对值用法: double cabs(struct complex z);函数名:calloc功能:分配主存储器用法:void *calloc(size_t nelem, size_t elsize);函数名: ceil功能: 向上舍入用法: double ceil(double x);函数名: cgets功能: 从控制台读字符串用法: char *cgets(char *str)函数名:chdir功能: 改变工作目录用法: int chdir(const char *path);函数名:_chmod, chmod功能: 改变文件的访问方式用法: int chmod(const char *filename, int permiss);函数名:chsize功能: 改变文件大小用法: int chsize(int handle, long size);函数名: circle功能: 在给定半径以(x, y)为圆心画圆用法: void far circle(int x, int y, int radius);函数名: cleardevice功能: 清除图形屏幕用法: void far cleardevice(void);函数名:clearerr功能: 复位错误标志用法:void clearerr(FILE *stream);函数名: clearviewport功能: 清除图形视区用法: void far clearviewport(void);函数名:_close, close功能: 关闭文件句柄用法:int close(int handle);函数名: clock功能:确定处理器时间用法: clock_t clock(void);函数名:closegraph功能: 关闭图形系统用法: void far closegraph(void);函数名:clreol功能: 在文本窗口中清除字符到行末用法:void clreol(void)函数名:clrscr功能: 清除文本模式窗口用法:void clrscr(void);函数名: coreleft功能: 返回未使用内存的大小用法:unsigned coreleft(void);函数名: cos功能: 余弦函数用法:double cos(double x);函数名:cosh功能: 双曲余弦函数用法: dluble cosh(double x);函数名: country功能: 返回与国家有关的信息用法: struct COUNTRY *country(int countrycode, struct country *country); 函数名: cprintf功能: 送格式化输出至屏幕用法:int cprintf(const char *format[, argument, ...]);函数名: cputs功能: 写字符到屏幕用法: void cputs(const char *string);函数名: _creat creat功能: 创建一个新文件或重写一个已存在的文件用法: int creat (const char *filename, int permiss)函数名:creatnew功能: 创建一个新文件用法:int creatnew(const char *filename, int attrib);函数名: cscanf功能: 从控制台执行格式化输入用法:int cscanf(char *format[,argument, ...]);函数名: ctime功能: 把日期和时间转换为字符串用法:char *ctime(const time_t *time);功能: 设置Ctrl-Break处理程序用法: void ctrlbrk(*fptr)(void);函数名: delay功能: 将程序的执行暂停一段时间(毫秒)用法: void delay(unsigned milliseconds);函数名: delline功能: 在文本窗口中删去一行用法: void delline(void);函数名:detectgraph功能: 通过检测硬件确定图形驱动程序和模式用法: void far detectgraph(int far *graphdriver, int far *graphmode); 函数名: difftime功能: 计算两个时刻之间的时间差用法: double difftime(time_t time2, time_t time1);函数名: disable功能: 屏蔽中断用法:void disable(void);函数名: div功能: 将两个整数相除, 返回商和余数用法:div_t (int number, int denom);函数名: dosexterr功能: 获取扩展DOS错误信息用法:int dosexterr(struct DOSERR *dblkp);函数名: dostounix功能: 转换日期和时间为UNIX时间格式用法: long dostounix(struct date *dateptr, struct time *timeptr);函数名: drawpoly功能: 画多边形用法: void far drawpoly(int numpoints, int far *polypoints);函数名:dup功能: 复制一个文件句柄用法: int dup(int handle);函数名:dup2功能: 复制文件句柄用法: int dup2(int oldhandle, int newhandle);功能: 把一个浮点数转换为字符串用法: char ecvt(double value, int ndigit, int *decpt, int *sign);函数名: ellipse功能: 画一椭圆用法:void far ellipse(int x, int y, int stangle, int endangle,int xradius, int yradius);函数名: enable功能: 开放硬件中断用法: void enable(void);函数名: eof功能: 检测文件结束用法: int eof(int *handle);函数名: exec...功能: 装入并运行其它程序的函数用法: int execl(char *pathname, char *arg0, arg1, ..., argn, NULL); int execle(char *pathname, char *arg0, arg1, ..., argn, NULL,char *envp[]);int execlp(char *pathname, char *arg0, arg1, .., NULL);int execple(char *pathname, char *arg0, arg1, ..., NULL,char *envp[]);int execv(char *pathname, char *argv[]);int execve(char *pathname, char *argv[], char *envp[]);int execvp(char *pathname, char *argv[]);int execvpe(char *pathname, char *argv[], char *envp[]);函数名:exit功能: 终止程序用法: void exit(int status);函数名: exp功能: 指数函数用法: double exp(double x);函数名: gcvt功能: 把浮点数转换成字符串用法: char *gcvt(double value, int ndigit, char *buf);函数名: geninterrupt功能: 产生一个软中断函数名: getarccoords功能: 取得最后一次调用arc的坐标用法: void far getarccoords(struct arccoordstype far *arccoords); 函数名: getaspectratio功能: 返回当前图形模式的纵横比用法: void far getaspectratio(int far *xasp, int far *yasp);函数名: getbkcolor功能: 返回当前背景颜色用法: int far getbkcolor(void);函数名: getc功能: 从流中取字符用法: int getc(FILE *stream);函数名: getcbrk功能: 获取Control_break设置用法: int getcbrk(void);函数名: getch功能: 从控制台无回显地取一个字符用法: int getch(void);函数名: getchar功能: 从stdin流中读字符用法: int getchar(void);函数名: getche功能: 从控制台取字符(带回显)用法: int getche(void);函数名: getcolor功能: 返回当前画线颜色用法: int far getcolor(void);函数名: getcurdir功能: 取指定驱动器的当前目录用法: int getcurdir(int drive, char *direc);函数名: getcwd功能: 取当前工作目录用法: char *getcwd(char *buf, int n);函数名: getdate功能: 取DOS日期函数名: getdefaultpalette功能: 返回调色板定义结构用法: struct palettetype *far getdefaultpalette(void);函数名: getdisk功能: 取当前磁盘驱动器号用法: int getdisk(void);函数名: getdrivername功能: 返回指向包含当前图形驱动程序名字的字符串指针用法: char *getdrivename(void);函数名: getdta功能: 取磁盘传输地址用法: char far *getdta(void);函数名: getenv功能: 从环境中取字符串用法: char *getenv(char *envvar);函数名: getfat, getfatd功能: 取文件分配表信息用法: void getfat(int drive, struct fatinfo *fatblkp);函数名: getfillpattern功能: 将用户定义的填充模式拷贝到内存中用法: void far getfillpattern(char far *upattern);函数名: getfillsettings功能: 取得有关当前填充模式和填充颜色的信息用法: void far getfillsettings(struct fillsettingstype far *fillinfo); 函数名: getftime功能: 取文件日期和时间用法: int getftime(int handle, struct ftime *ftimep);函数名: getgraphmode功能: 返回当前图形模式用法: int far getgraphmode(void);函数名: getftime功能: 取文件日期和时间用法: int getftime(int handle, struct ftime *ftimep);函数名: getgraphmode功能: 返回当前图形模式用法: int far getgraphmode(void);函数名: getimage功能: 将指定区域的一个位图存到主存中用法: void far getimage(int left, int top, int right, int bottom,void far *bitmap);函数名: getlinesettings功能: 取当前线型、模式和宽度用法: void far getlinesettings(struct linesettingstype far *lininfo): 函数名: getmaxx功能: 返回屏幕的最大x坐标用法: int far getmaxx(void);函数名: getmaxy功能: 返回屏幕的最大y坐标用法: int far getmaxy(void);函数名: getmodename功能: 返回含有指定图形模式名的字符串指针用法: char *far getmodename(int mode_name);函数名: getmoderange功能: 取给定图形驱动程序的模式范围用法: void far getmoderange(int graphdriver, int far *lomode,int far *himode);函数名: getpalette功能: 返回有关当前调色板的信息用法: void far getpalette(struct palettetype far *palette);函数名: getpass功能: 读一个口令用法: char *getpass(char *prompt);函数名: getpixel功能: 取得指定像素的颜色用法: int far getpixel(int x, int y);函数名: gets功能: 从流中取一字符串用法: char *gets(char *string);函数名: gettext功能: 将文本方式屏幕上的文本拷贝到存储区用法: int gettext(int left, int top, int right, int bottom, void *destin);函数名: gettextinfo功能: 取得文本模式的显示信息用法: void gettextinfo(struct text_info *inforec);函数名: gettextsettings功能: 返回有关当前图形文本字体的信息用法: void far gettextsettings(struct textsettingstype far *textinfo); 函数名: gettime功能: 取得系统时间用法: void gettime(struct time *timep);函数名: getvect功能: 取得中断向量入口用法: void interrupt(*getvect(int intr_num));函数名: getverify功能: 返回DOS校验标志状态用法: int getverify(void);函数名: getviewsetting功能: 返回有关当前视区的信息用法: void far getviewsettings(struct viewporttype far *viewport); 函数名: getw功能: 从流中取一整数用法: int getw(FILE *strem);函数名: getx功能: 返回当前图形位置的x坐标用法: int far getx(void);函数名: gety功能: 返回当前图形位置的y坐标用法: int far gety(void);函数名: gmtime功能: 把日期和时间转换为格林尼治标准时间(GMT)用法: struct tm *gmtime(long *clock);函数名: gotoxy功能: 在文本窗口中设置光标用法: void gotoxy(int x, int y);函数名: gotoxy功能: 在文本窗口中设置光标用法: void gotoxy(int x, int y);函数名: graphdefaults功能: 将所有图形设置复位为它们的缺省值用法: void far graphdefaults(void);函数名: grapherrormsg功能: 返回一个错误信息串的指针用法: char *far grapherrormsg(int errorcode);函数名: graphresult功能: 返回最后一次不成功的图形操作的错误代码用法: int far graphresult(void);函数名: _graphfreemem功能: 用户可修改的图形存储区释放函数用法: void far _graphfreemem(void far *ptr, unsigned size);函数名: _graphgetmem功能: 用户可修改的图形存储区分配函数用法: void far *far _graphgetmem(unsigned size);函数名: harderr功能: 建立一个硬件错误处理程序用法: void harderr(int (*fptr)());函数名: hardresume功能: 硬件错误处理函数用法: void hardresume(int rescode);函数名: highvideo功能: 选择高亮度文本字符用法: void highvideo(void);函数名: hypot功能: 计算直角三角形的斜边长用法: double hypot(double x, double y);函数名: imagesize功能: 返回保存位图像所需的字节数用法: unsigned far imagesize(int left, int top, int right, int bottom); 函数名: initgraph功能: 初始化图形系统用法: void far initgraph(int far *graphdriver, int far *graphmode函数名: inport功能: 从硬件端口中输入用法: int inp(int protid);函数名: insline功能: 在文本窗口中插入一个空行用法: void insline(void);函数名: installuserdriver功能: 安装设备驱动程序到BGI设备驱动程序表中用法: int far installuserdriver(char far *name, int (*detect)(void));函数名: installuserfont功能: 安装未嵌入BGI系统的字体文件(CHR)用法: int far installuserfont(char far *name);函数名: int86功能: 通用8086软中断接口用法: int int86(int intr_num, union REGS *inregs, union REGS *outregs) 函数名: int86x功能: 通用8086软中断接口用法: int int86x(int intr_num, union REGS *insegs, union REGS *outregs, 函数名: intdos功能: 通用DOS接口用法: int intdos(union REGS *inregs, union REGS *outregs);函数名: intdosx功能: 通用DOS中断接口用法: int intdosx(union REGS *inregs, union REGS *outregs,struct SREGS *segregs);函数名: intr功能: 改变软中断接口用法: void intr(int intr_num, struct REGPACK *preg);函数名: ioctl功能: 控制I/O设备用法: int ioctl(int handle, int cmd[,int *argdx, int argcx]);函数名: isatty功能: 检查设备类型用法: int isatty(int handle);函数名: itoa功能: 把一整数转换为字符串用法: char *itoa(int value, char *string, int radix);函数名: kbhit功能: 检查当前按下的键用法: int kbhit(void);函数名: keep功能: 退出并继续驻留用法: void keep(int status, int size);函数名: kbhit功能: 检查当前按下的键用法: int kbhit(void);函数名: keep功能: 退出并继续驻留用法: void keep(int status, int size);函数名: labs用法: long labs(long n);函数名: ldexp功能: 计算value*2的幂用法: double ldexp(double value, int exp);函数名: ldiv功能: 两个长整型数相除, 返回商和余数用法: ldiv_t ldiv(long lnumer, long ldenom);函数名: lfind功能: 执行线性搜索用法: void *lfind(void *key, void *base, int *nelem, int width,int (*fcmp)());函数名: line功能: 在指定两点间画一直线用法: void far line(int x0, int y0, int x1, int y1);函数名: linerel功能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线用法: void far linerel(int dx, int dy);函数名: localtime功能: 把日期和时间转变为结构用法: struct tm *localtime(long *clock);函数名: lock功能: 设置文件共享锁用法: int lock(int handle, long offset, long length);函数名: log功能: 对数函数ln(x)用法: double log(double x);函数名: log10功能: 对数函数log用法: double log10(double x);函数名: longjump功能: 执行非局部转移用法: void longjump(jmp_buf env, int val);函数名: lowvideo功能: 选择低亮度字符用法: void lowvideo(void);函数名: lrotl, _lrotl功能: 将无符号长整型数向左循环移位用法: unsigned long lrotl(unsigned long lvalue, int count);unsigned long _lrotl(unsigned long lvalue, int count);函数名: lsearch功能: 线性搜索用法: void *lsearch(const void *key, void *base, size_t *nelem,size_t width, int (*fcmp)(const void *, const void *));函数名: lseek功能: 移动文件读/写指针用法: long lseek(int handle, long offset, int fromwhere);main()主函数每一C 程序都必须有一main() 函数, 可以根据自己的爱好把它放在程序的某个地方。
C语言中常用函数大全

(三)文件函数
mode: r:打开已存在文件,准备从文件中读取数据 ,不能写入 r+ :可读可写
w:创建一个新文件,准备写入;如文件已存在,此文件将被 空文件覆盖 w+:增加“读取”操作
2;字符ar(int c) 正常返回字 符代码值,出错返回 E OF (2)int putc(int c,FILE*strea m) 正常返回字 符代码值,出错返回 E OF strea m==stdou t(1)=(2) (3)int puts(char*strea m) 自动回车换 行
a:打开已存在文件,准备在文件尾部追加数 据,不能读取。 如文件不存在,侧创建此文 件,准备写入。
a+:增加“读取”
t:打开一个文 本文件(缺省值) b:打开一个二 进制文件
一:文件的打开 与关闭 1:打开文件 FILE * fopen (char*filen ame, char*mode) Filename:是字符串,表示打开的文件名,文件名前可 以带路径。 Mode:也是字符串,表示打开文 件的方式。 功能----按指定方式 打开文件。 返回值----如果文件打开成功,返回“文件结构体 指针”,否者返回 N ULL(如:文件不存在 或则 写文件时不能创建 )。 Fopen(“A:\\user\\asd.txt”,”r+”); 2:关闭文件 Int*fclos e(FILE*filen ame) 正常关闭返 回0;否者返回 非 0。
With:指定输入数 据的宽度,遇空格、Tab、\n 结束
C语言中常用函数大全

(一)输入输出常用函数1,printf(1)有符号int%[-][+][0][width][.precision][l][h] d-:左对齐+:正数前加‘+’0:右对齐,acwidth<width,左补零.precision:至少输出位数。
若实际的位数>.precision,按实际输出,否者左边补零(2)无符号int%[-][#][0][width][.precision][l][h] u|o|x|X#:”%o %x/X”输出0,0x,0X.precision:同上,TC/BC包含0x/X,VC下不包含(3)实数输出%[-][+][#][0][width][.precision][l][L] f|e|E|g|G#:必须输出小数点.precision:小数位数(四舍五入)(4)字符和字符串的输出%[-][0][width] c %[-][0][width] [.precision] s.precision:S的前precision位2,scanf%[*][width] [l][h]TypeWith:指定输入数据的宽度,遇空格、Tab、\n结束*:抑制符scanf(“%2d%*2d%3d”,&num1,&num2) 输入123456789\n;num1==12,num2==567.注意:(1)指定width时,读取相应width位,但按需赋值Scanf(“%3c%3c”,&ch1,&ch2)输入a bc d efg ch1==a ch2==d(2)%c 输入单字符时“空格、转义字符”均是有效字符(二)ascll字符/字符串/文件函数1;字符非格式化输入函数(1)int getchar(void) 接受字符,以回车结束,回显(2)int getc(FILE*stream) 从stream中接受字符,以回车结束,回显stream=stdin时,(1)==(2)(3)int getche(void) 直接读取字符,回显conio.h(4)int getchar(void) 直接读取字符,不回显conio.h注意:(1,2)对于回车键返回‘\n’(3,4)对于回车键返回‘\r’2;字符/串非格式化输出函数(1)int putchar(int c) 正常返回字符代码值,出错返回EOF(2)int putc(int c,FILE*stream) 正常返回字符代码值,出错返回EOF stream==stdout(1)=(2)(3)int puts(char*stream) 自动回车换行1;字符串的赋值#include< string.h memory.h >Void *memset (void *s, char ch, unsigned n)将以S为首地址的,一片连续的N个字节内存单元赋值为CH.Void *memcpy ( void *d, void*s, unsigned n)将以S为首地址的一片连续的N个字节内存单元的值拷贝到以D为首地址的一片连续的内存单元中。
C语言库函数 - F开头

/* copy "Hello" into allocated memory */
/*
Note: movedata is used because you
might be in a small data model, in
程序例:
#include <stdio.h>
#include <alloc.h>
int main(void)
{
char far *fptr;
fptr = farmalloc(10);
printf("First address: %Fp\n", fptr);
fptr = farrealloc(fptr,20);
printf("New address : %Fp\n", fptr);
farfree(fptr);
return 0;
}
函数名: fclose
功 能: 关闭一个流
用 法: int fclose(FILE *stream);
程序例:
#include <string.h>
程序例:
#include <stdio.h>
int main(void)
{
int streams_closed;
/* open two streams */
fopen("DUMMY.ONE", "w");
fopen("DUMMY.TWO", "w");
C语言fopen等几个f函数用法

C语言函数fopen函数简介函数功能:打开一个文件函数原型:FILE * fopen(const char * path,const char * mode);相关函数:open,fclose,fopen_s[1],_wfopen所需库:<stdio.h>返回值:文件顺利打开后,指向该流的文件指针就会被返回。
若果文件打开失败则返回NULL,并把错误代码存在errno 中。
一般而言,打开文件后会作一些文件读取或写入的动作,若打开文件失败,接下来的读写动作也无法顺利进行,所以在fopen()后请作错误判断及处理。
参数说明:参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。
mode有下列几种形态字符串:r 打开只读文件,该文件必须存在。
r+ 打开可读写的文件,该文件必须存在。
rb+ 读写打开一个二进制文件,只允许读写数据。
rt+ 读写打开一个文本文件,允许读和写。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。
若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。
若文件不存在则建立该文件。
a 以附加的方式打开只写文件。
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
(EOF符保留)a+ 以附加方式打开可读写的文件。
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。
(原来的EOF符不保留)wb 只写打开或新建一个二进制文件;只允许写数据。
wb+ 读写打开或建立一个二进制文件,允许读和写。
wt+ 读写打开或着建立一个文本文件;允许读写。
at+ 读写打开一个文本文件,允许读或在文本末追加数据。
ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。
上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。
C语言函数大全(精简版)

字符串函数∙bcmp∙bcopy∙bzero∙memccpy ∙memchr ∙memcmp ∙memcpy ∙memicmp ∙memmove ∙memset ∙movmem ∙setmem ∙stpcpy ∙strcat ∙strchr ∙strcmp ∙strcmpi ∙strcpy ∙strcspn ∙strdup ∙stricmp ∙strlen ∙strlwr ∙strncat ∙strncmp ∙strncmpi ∙strncpy ∙strnicmp ∙strpbrk ∙strrev ∙strset ∙strstr ∙strtok ∙strupr数学函数∙abs∙acos∙asin∙atan∙atan2∙ceil∙cos∙cosh∙exp∙fabs∙floor∙fmod∙frexp∙hypot∙ldexp∙log∙log10∙modf∙pow∙pow10∙sin∙sinh∙sqrt∙tan∙tanh输入输出函数∙getchar∙kbhit∙printf∙putchar系统函数∙exit∙itoa字符函数∙isalnum∙isalpha∙iscntrl∙isdigit∙islower∙isascii∙isgraph∙isprint∙ispunct∙isspace∙isupper∙isxdigit∙toascii∙tolower∙toupper内存管理函数∙calloc∙free∙malloc∙reallocctype.h 字符函数isalnum功能:判断字符c是否为字母或数字说明:当c为数字0-9或字母a-z及A-Z时,返回非零值,否则返回零。
举例:printf("%c:%s\n",c,isalnum(c)?"yes":"no");isalpha功能:判断字符c是否为英文字母说明:当c为英文字母a-z或A-Z时,返回非零值,否则返回零。
c语言常用函数

bc mp(比较内存内容)相关函数b cmp,s trcas ecmp,strcm p,str coll,strnc mp,st rncas ecmp表头文件 #i nclud e<str ing.h>定义函数int b cmp ( cons t voi d *s1,cons t voi d * s2,int n);函数说明 bc mp()用来比较s1和s2所指的内存区间前n个字节,若参数n为0,则返回0。
返回值若参数s1 和s2所指的内存内容都完全相同则返回0 值,否则返回非零值。
附加说明建议使用memc mp()取代。
范例参考memc mp()。
bco py(拷贝内存内容)相关函数m emccp y,mem cpy,m emmov e,str cpy,c trncp y表头文件#incl ude <strin g.h>定义函数 vo id bc opy ( cons t voi d *sr c,voi d *de st ,i nt n);函数说明bcopy()与me mcpy()一样都是用来拷贝s rc所指的内存内容前n个字节到dest所指的地址,不过参数s rc与de st在传给函数时是相反的位置。
返回值附加说明建议使用memc py()取代范例 #i nclud e<str ing.h>mai n(){char dest[30]=”stri ng(a)”;ch ar sr c[30]=”str ing\0strin g”;i nt i;bcop y(src,dest,30);/* sr c指针放在前*/p rintf(bcop y():“)fo r(i=0;i<30;i++)prin tf(“%c”,de st[i]);me mcpy(destsrc,30); /*dest指针放在钱*/pr intf(…\nme mcpy() : “);fo r(i=0;i<30;i++)prin tf(“%c”,de st[i]);执行b copy() : s tring stri ngme mcpy() :st ringsringbze ro(将一段内存内容全清为零)相关函数m emset,swab表头文件#inclu de<st ring.h>定义函数 void bzer o(voi d *s,int n);函数说明 bzer o()会将参数s所指的内存区域前n个字节,全部设为零值。
C语言常用的库函数表

附录C C语言常用的库函数库函数并不是C语言的一部分,它是由编译系统根据一般用户的需要编制并提供给用户使用的一组程序。
每一种C编译系统都提供了一批库函数,不同的编译系统所提供的库函数的数目和函数名以及函数功能是不完全相同的。
ANSI C标准提出了一批建议提供的标准库函数。
它包括了目前多数C编译系统所提供的库函数,但也有一些是某些C编译系统未曾实现的。
考虑到通用性,本附录列出ANSI C建议的常用库函数。
由于C库函数的种类和数目很多,例如还有屏幕和图形函数、时间日期函数、与系统有关的函数等,每一类函数又包括各种功能的函数,限于篇幅,本附录不能全部介绍,只从教学需要的角度列出最基本的。
读者在编写C程序时可根据需要,查阅有关系统的函数使用手册。
1.数学函数使用数学函数时,应该在源文件中使用预编译命令:#include <math.h>或#include "math.h"函数名函数原型功能返回值acos double acos(doublex);计算arccos x的值,其中-1<=x<=1计算结果asin double asin(doublex);计算arcsin x的值,其中-1<=x<=1计算结果atan double atan(doublex);计算arctan x的值计算结果atan2doubleatan2(double x,double y);计算arctan x/y的值计算结果cos double cos(doublex);计算cos x的值,其中x的单位为弧度计算结果cosh double cosh(doublex);计算x的双曲余弦cosh x的值计算结果exp double exp(doublex);求ex的值计算结果fabs double fabs(doublex);求x的绝对值计算结果floor doublefloor(double x);求出不大于x的最大整数该整数的双精度实数fmod double fmod(doublex, double y);求整除x/y的余数返回余数的双精度实数frexp doublefrexp(double val,int *eptr);把双精度数val分解成数字部分(尾数)和以2为底的指数,即val=x*2n,n存放在eptr指向的变量中数字部分x0.5<=x<1log double log(doublex);求lnx的值计算结果log10doublelog10(double x);求log10x的值计算结果modf double modf(doubleval, int *iptr);把双精度数val分解成数字部分和小数部分,把整数部分存放在ptr指向的变量中val的小数部分pow double pow(doublex, double y);求xy的值计算结果sin double sin(doublex);求sin x的值,其中x的单位为弧度计算结果sinh double sinh(doublex);计算x的双曲正弦函数sinh x的值计算结果sqrt double sqrt(double x);计算,其中x≥0计算结果tan double tan(doublex);计算tan x的值,其中x的单位为弧度计算结果tanh double tanh(doublex);计算x的双曲正切函数tanh x的值计算结果2.字符函数在使用字符函数时,应该在源文件中使用预编译命令:#include <ctype.h>或#include "ctype.h"函数名函数原型功能返回值isalnum int isalnum(intch);检查ch是否字母或数字是字母或数字返回1,否则返回0isalpha int isalpha(intch);检查ch是否字母是字母返回1,否则返回0iscntrl int iscntrl(intch);检查ch是否控制字符(其ASCII码在0和0xlF之间)是控制字符返回1,否则返回0isdigit int isdigit(intch);检查ch是否数字是数字返回1,否则返回0isgraph int isgraph(intch);检查ch是否是可打印字符(其ASCII码在0x21和0x7e之间),不包括空格是可打印字符返回1,否则返回0islower int islower(intch);检查ch是否是小写字母(a~z)是小字母返回1,否则返回0isprint int isprint(intch);检查ch是否是可打印字符(其ASCII码在0x21和0x7e之间),不包括空格是可打印字符返回1,否则返回0ispunct int ispunct(intch);检查ch是否是标点字符(不包括空格)即除字母、数字和空格以外的所有可打印字符是标点返回1,否则返回0isspace int isspace(intch);检查ch是否空格、跳格符(制表符)或换行符是,返回1,否则返回0isupper int isupper(intch);检查ch是否大写字母(A~Z)是大写字母返回1,否则返回0isxdigit intisxdigit(intch);检查ch是否一个16进制数字(即0~9,或A到F,a~f)是,返回1,否则返回0tolower int tolower(intch);将ch字符转换为小写字母返回ch对应的小写字母toupper int toupper(intch);将ch字符转换为大写字母返回ch对应的大写字母3.字符串函数使用字符串中函数时,应该在源文件中使用预编译命令:#include <string.h>或#include "string.h"函数名函数原型功能返回值memchr void memchr(void *buf, char ch,unsigned count);在buf 的前count 个字符里搜索字符ch首次出现的位置返回指向buf 中ch 的第一次出现的位置指针。
C语言求定积分的通用函数

//功能:返回 f(x)在积分区间[a,b]的值
//参数:FunCallBack 指向用于计算 f(x)的函数
//
a 积分区间的起始值
//
b 积分区间的结束值
//
dx 横坐标的间隔数,越小计算结果越准确
double Calculate(double (*FunCallBack)(double x), double a,double b,double dx)
C 语言求定积分的通用函数
对于一重定积分来说其求解可以使用梯形法进行求解,计算公式如下所示:
其中,f(x)为被积函数,为横坐标的两点间的间隔,越小,则计算出的结果 越精确。对于求解此类问题可以使用 C 语言中的回调函数编写通用的计算函数, 代码如下:
#include <stdio.h> #include <stdlib.h> #include<math.h>
{ double doui;
double total = i = a; doui <= b; doui += dx) {
total += FunCallBack(doui)*dx; } return total; }
double f2(double x) {
return x*x; }
double f(double x) {
return x; }
double f3(double x) {
return x*x*x ; }
int main() {
double total; total = (Calculate(f, 2, 3, 0.000001)); printf("total = %lf\n", total);
C语言fopen等几个f函数用法

C语言函数fopen函数简介函数功能:打开一个文件函数原型:FILE * fopen(const char * path,const char * mode);相关函数:open,fclose,fopen_s[1],_wfopen所需库:<stdio.h>返回值:文件顺利打开后,指向该流的文件指针就会被返回。
若果文件打开失败则返回NULL,并把错误代码存在errno 中。
一般而言,打开文件后会作一些文件读取或写入的动作,若打开文件失败,接下来的读写动作也无法顺利进行,所以在fopen()后请作错误判断及处理。
参数说明:参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。
mode有下列几种形态字符串:r 打开只读文件,该文件必须存在。
r+ 打开可读写的文件,该文件必须存在。
rb+ 读写打开一个二进制文件,只允许读写数据。
rt+ 读写打开一个文本文件,允许读和写。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。
若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。
若文件不存在则建立该文件。
a 以附加的方式打开只写文件。
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
(EOF符保留)a+ 以附加方式打开可读写的文件。
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。
(原来的EOF符不保留)wb 只写打开或新建一个二进制文件;只允许写数据。
wb+ 读写打开或建立一个二进制文件,允许读和写。
wt+ 读写打开或着建立一个文本文件;允许读写。
at+ 读写打开一个文本文件,允许读或在文本末追加数据。
ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。
上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。
C语言常用函数大全

C语⾔常⽤函数⼤全⼀、数学函数调⽤数学函数时,要求在源⽂件中包下以下命令⾏:#include <math.h>函数原型说明功能返回值说明int abs( int x)求整数x的绝对值计算结果double fabs(double x)求双精度实数x的绝对值计算结果double acos(double x)计算cos-1(x)的值计算结果x在-1~1范围内double asin(double x)计算sin-1(x)的值计算结果x在-1~1范围内double atan(double x)计算tan-1(x)的值计算结果double atan2(double x)计算tan-1(x/y)的值计算结果double cos(double x)计算cos(x)的值计算结果x的单位为弧度double cosh(double x)计算双曲余弦cosh(x)的值计算结果double exp(double x)求e x的值计算结果double fabs(double x)求双精度实数x的绝对值计算结果double floor(double x)求不⼤于双精度实数x的最⼤整数double fmod(double x,double y)求x/y整除后的双精度余数double frexp(double val,int *exp)把双精度val分解尾数和以2为底的指数n,即val=x*2n,n存放在exp所指的变量中返回位数x 0.5≤x<1double log(double x)求㏑x计算结果x>0 double log10(double x)求log10x计算结果x>0double modf(double val,double*ip)把双精度val分解成整数部分和⼩数部分,整数部分存放在ip所指的变量中返回⼩数部分double pow(double x,double y)计算x y的值计算结果double sin(double x)计算sin(x)的值计算结果x的单位为弧度double sinh(double x)计算x的双曲正弦函数sinh(x)的值计算结果double sqrt(double x)计算x的开⽅计算结果x≥0double tan(double x)计算tan(x)计算结果double tanh(double x)计算x的双曲正切函数tanh(x)的值计算结果⼆、字符函数调⽤字符函数时,要求在源⽂件中包下以下命令⾏:#include <ctype.h>函数原型说明功能返回值int isalnum(int ch)检查ch是否为字母或数字是,返回1;否则返回0int isalpha(int ch)检查ch是否为字母是,返回1;否则返回0int iscntrl(int ch)检查ch是否为控制字符是,返回1;否则返回0int isdigit(int ch)检查ch是否为数字是,返回1;否则返回0int isgraph(int ch)检查ch是否为ASCII码值在ox21到ox7e的可打印字符(即不包含空格字符)是,返回1;否则返回0int islower(int ch)检查ch是否为⼩写字母是,返回1;否则返回0int isprint(int ch)检查ch是否为包含空格符在内的可打印字符是,返回1;否则返回0int ispunct(int ch)检查ch是否为除了空格、字母、数字之外的可打印字符是,返回1;否则返回0int isspace(int ch)检查ch是否为空格、制表或换⾏符是,返回1;否则返回0int isupper(int ch)检查ch是否为⼤写字母是,返回1;否则返回0int isxdigit(int ch)检查ch是否为16进制数是,返回1;否则返回0int tolower(int ch)把ch中的字母转换成⼩写字母返回对应的⼩写字母int toupper(int ch)把ch中的字母转换成⼤写字母返回对应的⼤写字母三、字符串函数调⽤字符函数时,要求在源⽂件中包下以下命令⾏:#include <string.h>函数原型说明功能返回值char *strcat(char *s1,char *s2)把字符串s2接到s1后⾯s1所指地址char *strchr(char *s,int ch)在s所指字符串中,找出第⼀次出现字符ch的位置返回找到的字符的地址,找不到返回NULLint strcmp(char *s1,char *s2)对s1和s2所指字符串进⾏⽐较s1<s2,返回负数;s1= =s2,返回0;s1>s2,返回正数char *strcpy(char *s1,char *s2)把s2指向的串复制到s1指向的空间s1 所指地址unsigned strlen(char *s)求字符串s的长度返回串中字符(不计最后的'\0')个数char *strstr(char *s1,char *s2)在s1所指字符串中,找出字符串s2第⼀次出现的位置返回找到的字符串的地址,找不到返回NULL四、输⼊输出函数调⽤字符函数时,要求在源⽂件中包下以下命令⾏:#include <stdio.h>函数原型说明功能返回值void clearer(FILE *fp)清除与⽂件指针fp有关的所有出错信息⽆int fclose(FILE *fp)关闭fp所指的⽂件,释放⽂件缓冲区出错返回⾮0,否则返回0int feof (FILE *fp)检查⽂件是否结束遇⽂件结束返回⾮0,否则返回0int fgetc (FILE *fp)从fp所指的⽂件中取得下⼀个字符出错返回EOF,否则返回所读字符char *fgets(char *buf,int n, FILE *fp)从fp所指的⽂件中读取⼀个长度为n-1的字符串,将其存⼊buf所指存储区返回buf所指地址,若遇⽂件结束或出错返回NULLFILE *fopen(char *filename,char*mode)以mode指定的⽅式打开名为filename的⽂件成功,返回⽂件指针(⽂件信息区的起始地址),否则返回NULLint fprintf(FILE *fp, char *format, args,…)把args,…的值以format指定的格式输出到fp指定的⽂件中实际输出的字符数int fputc(char ch, FILE *fp)把ch中字符输出到fp指定的⽂件中成功返回该字符,否则返回EOFint fputs(char *str, FILE *fp)把str所指字符串输出到fp所指⽂件成功返回⾮负整数,否则返回-1(EOF)int fread(char *pt,unsigned size,unsigned n, FILE *fp)从fp所指⽂件中读取长度size为n个数据项存到pt所指⽂件读取的数据项个数int fscanf (FILE *fp, char *format,args,…)从fp所指的⽂件中按format指定的格式把输⼊数据存⼊到args,…所指的内存中已输⼊的数据个数,遇⽂件结束或出错返回0int fseek (FILE *fp,long offer,int base)移动fp所指⽂件的位置指针成功返回当前位置,否则返回⾮0long ftell (FILE *fp)求出fp所指⽂件当前的读写位置读写位置,出错返回 -1Lint fwrite(char *pt,unsignedsize,unsigned n, FILE *fp)把pt所指向的n*size个字节输⼊到fp所指⽂件输出的数据项个数int getc (FILE *fp)从fp所指⽂件中读取⼀个字符返回所读字符,若出错或⽂件结束返回EOF int getchar(void)从标准输⼊设备读取下⼀个字符返回所读字符,若出错或⽂件结束返回-1char *gets(char *s)从标准设备读取⼀⾏字符串放⼊s所指存储区,⽤’\0’替换读⼊的换⾏符返回s,出错返回NULLint printf(char *format,args,…)把args,…的值以format指定的格式输出到标准输出设备输出字符的个数int putc (int ch, FILE *fp)同fputc同fputcint putchar(char ch)把ch输出到标准输出设备返回输出的字符,若出错则返回EOFint puts(char *str)把str所指字符串输出到标准设备,将’\0’转成回车换⾏符返回换⾏符,若出错,返回EOFint rename(char *oldname,char*newname)把oldname所指⽂件名改为newname所指⽂件名成功返回0,出错返回-1void rewind(FILE *fp)将⽂件位置指针置于⽂件开头⽆int scanf(char *format,args,…)从标准输⼊设备按format指定的格式把输⼊数据存⼊到args,…所指的内存中已输⼊的数据的个数五、动态分配函数和随机函数调⽤字符函数时,要求在源⽂件中包下以下命令⾏:#include <stdlib.h>函数原型说明功能返回值void *calloc(unsigned n,unsignedsize)分配n个数据项的内存空间,每个数据项的⼤⼩为size个字节分配内存单元的起始地址;如不成功,返回0void *free(void *p)释放p所指的内存区⽆void *free(void *p)释放p所指的内存区⽆void *malloc(unsigned size)分配size个字节的存储空间分配内存空间的地址;如不成功,返回0 void *realloc(void *p,unsigned size)把p所指内存区的⼤⼩改为size个字节新分配内存空间的地址;如不成功,返回0int rand(void)产⽣0~32767的随机整数返回⼀个随机整数void exit(int state)程序终⽌执⾏,返回调⽤过程,state为0正常终⽌,⾮0⾮正⽆常终⽌。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
}
int main(void)
{
/* save the old interrupt vector */
oldhandler = getvect(INTR);
/* install the new interrupt handler */
setvect(INTR, handler);
result = exp(x);
printf("'e' raised to the power \
of %lf (e ^ %lf) = %lf\n",
x, x, result);
return 0;
}
/*
reads chars from the file until hit EOF
*/
do
{
read(handle, &ch, 1);
printf("%c", c;
int main(void)
{
char *string;
double value;
int dec, sign;
int ndig = 10;
clrscr();
value = 9.876;
string = ecvt(value, ndig, &dec, &sign);
return 0;
}
函数名: eof
功 能: 检测文件结束
用 法: int eof(int *handle);
程序例:
#include <sys\stat.h>
#include <string.h>
#include <stdio.h>
#include <fcntl.h>
printf("string = %s dec = %d sign = %d\n",
string, dec, sign);
value = 0.6789e5; /* scientific
notation */
ndig = 5;
string = ecvt(value,ndig,&dec,&sign);
printf("string = %s dec = %d \
sign = %d\n", string, dec, sign);
value = -123.45;
ndig= 15;
string = ecvt(value,ndig,&dec,&sign);
char *envp[]);
int execlp(char *pathname, char *arg0, arg1, .., NULL);
int execple(char *pathname, char *arg0, arg1, ..., NULL,
char *envp[]);
S_IREAD | S_IWRITE);
/* write some data to the file */
write(handle, msg, strlen(msg));
/* seek to the beginning of the file */
lseek(handle, 0L, SEEK_SET);
/* loop until the counter exceeds 20 */
while (count < 20)
printf("count is %d\n",count);
/* reset the old interrupt handler */
setvect(INTR, oldhandler);
}
midx = getmaxx() / 2;
midy = getmaxy() / 2;
setcolor(getmaxcolor());
/* draw ellipse */
ellipse(midx, midy, stangle, endangle,
xradius, yradius);
perror("exec error");
exit(1);
}
函数名: exit
功 能: 终止程序
用 法: void exit(int status);
程序例:
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
initgraph(&gdriver, &gmode, "");
/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk)
/* an error occurred */
int main(void)
{
int status;
printf("Enter either 1 or 2\n");
status = getch();
/* Sets DOS errorlevel */
exit(status - '0');
/* Note: this line is never reached */
int xradius, int yradius);
程序例:
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
/* request auto detection */
/* The clock tick interrupt */
#define INTR 0X1C
void interrupt ( *oldhandler)(void);
int count=0;
void interrupt handler(void)
{
/*
disable interrupts during the handling of the interrupt
int gdriver = DETECT, gmode, errorcode;
int midx, midy;
int stangle = 0, endangle = 360;
int xradius = 100, yradius = 50;
/* initialize graphics, local variables */
return 0;
}
函数名: exp
功 能: 指数函数
用 法: double exp(double x);
程序例:
#include <stdio.h>
#include <math.h>
int main(void)
{
double result;
double x = 4.0;
*/
disable();
/* increase the global counter */
count++;
/*
re enable interrupts at the end of the handler
*/
enable();
/* call the old routine */
int execv(char *pathname, char *argv[]);
int execve(char *pathname, char *argv[], char *envp[]);
int execvp(char *pathname, char *argv[]);
int execvpe(char *pathname, char *argv[], char *envp[]);
{
printf("Graphics error: %s\n",
grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1);
/* terminate with an error code */
close(handle);
return 0;
}
函数名: exec...
功 能: 装入并运行其它程序的函数
用 法: int execl(char *pathname, char *arg0, arg1, ..., argn, NULL);
int execle(char *pathname, char *arg0, arg1, ..., argn, NULL,
#include <io.h>
int main(void)
{
int handle;
char msg[] = "This is a test";
char ch;
/* create a file */
handle = open("DUMMY.FIL",
O_CREAT | O_RDWR,
函数名: ecvt