C语言函数手册(DOC)

合集下载

C语言标准库函数查询手册

C语言标准库函数查询手册

C语言标准库函数郝培林整理Aabort功能异常终止程序头文件stdlib.h语法void abort(void);abs功能整数的绝对值头文件stdlib.h语法int abs(int j);返回值整数 j 的绝对值。

如果不能表示 j 的绝对值,那么函数的行为是未定义的。

absread功能读磁盘绝对扇区函数头文件dos.h语法int absread(int drive,int num,int sectnum,void *buf)返回值0:成功;-1:失败。

abswrite功能写磁盘绝对扇区函数头文件dos.h语法int abswrite(int drive,int nsects,int lsect,void *buffer) drive=0(A 驱动器)、1(B 驱动器)、 nsects=要写的扇区数(最多 64K 个); lsect=起始逻辑扇区号; buffer=要写入数据的内存起始地址。

返回值0:成功;-1:失败。

acos功能反余弦头文件math.h语法math.hdouble acos(double x);返回值x 的反余弦值。

返回值的范围在 0 到π之间。

如果 x 的值不在−1 到+1 之间,那么就会发生定义域错误。

asctime功能把日期和时间转换成 ASCII 码头文件time.h语法char *asctime(const struct tm *timeptr);返回值指向以空字符结尾的字符串的指针。

asin功能反正弦头文件math.h语法double asin(double x);返回值x 的反正弦值。

返回值的范围在-π/2 到π/2 之间。

如果 x 的值不在-1 到+1 之间,那么就会发生定义域错误。

assert功能诊断表达式的真值头文件assert.h语法void assert(int expression);atan功能反正切头文件math.h 语法double atan(double x);返回值x 的反正切值。

(完整word版)C语言函数用法大全

(完整word版)C语言函数用法大全

函数名: stpcpy功能: 拷贝一个字符串到另一个用法: char *stpcpy(char *destin, char *source); 程序例:#include <stdio.h>#include <string.h>int main(void){char string[10];char *str1 = "abcdefghi";stpcpy(string, str1);printf("%s\n", string);return 0;}函数名: strcat功能: 字符串拼接函数用法: char *strcat(char *destin, char *source); 程序例:#include <string.h>#include <stdio.h>int main(void){char destination[25];char *blank = " ", *c = "C++", *Borland = "Borland";strcpy(destination, Borland);strcat(destination, blank);strcat(destination, c);printf("%s\n", destination);return 0;}函数名: strchr功能: 在一个串中查找给定字符的第一个匹配之处\用法: char *strchr(char *str, char c);程序例:#include <string.h>#include <stdio.h>{char string[15];char *ptr, c = 'r';strcpy(string, "This is a string");ptr = strchr(string, c);if (ptr)printf("The character %c is at position: %d\n", c, ptr-string);elseprintf("The character was not found\n");return 0;}函数名: strcmp功能: 串比较用法: int strcmp(char *str1, char *str2);看Asic码,str1>str2,返回值> 0;两串相等,返回0程序例:#include <string.h>#include <stdio.h>{char *buf1 = "aaa", *buf2 = "bbb", *buf3 = "ccc";int ptr;ptr = strcmp(buf2, buf1);if (ptr > 0)printf("buffer 2 is greater than buffer 1\n");elseprintf("buffer 2 is less than buffer 1\n");ptr = strcmp(buf2, buf3);if (ptr > 0)printf("buffer 2 is greater than buffer 3\n");elseprintf("buffer 2 is less than buffer 3\n");return 0;}函数名: strncmpi功能: 将一个串中的一部分与另一个串比较, 不管大小写用法: int strncmpi(char *str1, char *str2, unsigned maxlen); 程序例:#include <string.h>#include <stdio.h>int main(void){char *buf1 = "BBB", *buf2 = "bbb";int ptr;ptr = strcmpi(buf2, buf1);if (ptr > 0)printf("buffer 2 is greater than buffer 1\n");if (ptr < 0)printf("buffer 2 is less than buffer 1\n");if (ptr == 0)printf("buffer 2 equals buffer 1\n");return 0;}函数名: strcpy功能: 串拷贝用法: char *strcpy(char *str1, char *str2); 程序例:#include <stdio.h>#include <string.h>int main(void){char string[10];char *str1 = "abcdefghi";strcpy(string, str1);printf("%s\n", string);return 0;}函数名: strcspn功能: 在串中查找第一个给定字符集内容的段用法: int strcspn(char *str1, char *str2); 程序例:#include <stdio.h>#include <string.h>#include <alloc.h>int main(void){char *string1 = "1234567890";char *string2 = "747DC8";int length;length = strcspn(string1, string2);printf("Character where strings intersect is at position %d\n", length);return 0;}函数名: strdup功能: 将串拷贝到新建的位置处用法: char *strdup(char *str);程序例:#include <stdio.h>#include <string.h>#include <alloc.h>int main(void){char *dup_str, *string = "abcde";dup_str = strdup(string);printf("%s\n", dup_str);free(dup_str);return 0;}函数名: stricmp功能: 以大小写不敏感方式比较两个串用法: int stricmp(char *str1, char *str2);程序例:#include <string.h>#include <stdio.h>int main(void){char *buf1 = "BBB", *buf2 = "bbb";int ptr;ptr = stricmp(buf2, buf1);if (ptr > 0)printf("buffer 2 is greater than buffer 1\n");if (ptr < 0)printf("buffer 2 is less than buffer 1\n");if (ptr == 0)printf("buffer 2 equals buffer 1\n");return 0;}函数名: strerror功能: 返回指向错误信息字符串的指针用法: char *strerror(int errnum);程序例:#include <stdio.h>#include <errno.h>int main(void){char *buffer;buffer = strerror(errno);printf("Error: %s\n", buffer);return 0;}函数名: strcmpi功能: 将一个串与另一个比较, 不管大小写用法: int strcmpi(char *str1, char *str2);程序例:#include <string.h>#include <stdio.h>int main(void){char *buf1 = "BBB", *buf2 = "bbb";int ptr;ptr = strcmpi(buf2, buf1);if (ptr > 0)printf("buffer 2 is greater than buffer 1\n");if (ptr < 0)printf("buffer 2 is less than buffer 1\n");if (ptr == 0)printf("buffer 2 equals buffer 1\n");return 0;}函数名: strncmp功能: 串比较用法: int strncmp(char *str1, char *str2, int maxlen);程序例:#include <string.h>#include <stdio.h>int main(void){char *buf1 = "aaabbb", *buf2 = "bbbccc", *buf3 = "ccc";int ptr;ptr = strncmp(buf2,buf1,3);if (ptr > 0)printf("buffer 2 is greater than buffer 1\n");elseprintf("buffer 2 is less than buffer 1\n");ptr = strncmp(buf2,buf3,3);if (ptr > 0)printf("buffer 2 is greater than buffer 3\n");elseprintf("buffer 2 is less than buffer 3\n");return(0);}函数名: strncmpi功能: 把串中的一部分与另一串中的一部分比较, 不管大小写用法: int strncmpi(char *str1, char *str2);程序例:#include <string.h>#include <stdio.h>int main(void){char *buf1 = "BBBccc", *buf2 = "bbbccc";int ptr;ptr = strncmpi(buf2,buf1,3);if (ptr > 0)printf("buffer 2 is greater than buffer 1\n");if (ptr < 0)printf("buffer 2 is less than buffer 1\n");if (ptr == 0)printf("buffer 2 equals buffer 1\n");return 0;}函数名: strncpy功能: 串拷贝用法: char *strncpy(char *destin, char *source, int maxlen); 程序例:#include <stdio.h>#include <string.h>int main(void){char string[10];char *str1 = "abcdefghi";strncpy(string, str1, 3);string[3] = '\0';printf("%s\n", string);return 0;}函数名: strnicmp功能: 不注重大小写地比较两个串用法: int strnicmp(char *str1, char *str2, unsigned maxlen); 程序例:#include <string.h>#include <stdio.h>int main(void){char *buf1 = "BBBccc", *buf2 = "bbbccc";int ptr;ptr = strnicmp(buf2, buf1, 3);if (ptr > 0)printf("buffer 2 is greater than buffer 1\n");if (ptr < 0)printf("buffer 2 is less than buffer 1\n");if (ptr == 0)printf("buffer 2 equals buffer 1\n");return 0;}函数名: strnset功能: 将一个串中的所有字符都设为指定字符用法: char *strnset(char *str, char ch, unsigned n); 程序例:#include <stdio.h>#include <string.h>int main(void){char *string = "abcdefghijklmnopqrstuvwxyz";char letter = 'x';printf("string before strnset: %s\n", string);strnset(string, letter, 13);printf("string after strnset: %s\n", string);return 0;}函数名: strpbrk功能: 在串中查找给定字符集中的字符用法: char *strpbrk(char *str1, char *str2);程序例:#include <stdio.h>#include <string.h>int main(void){char *string1 = "abcdefghijklmnopqrstuvwxyz";char *string2 = "onm";char *ptr;ptr = strpbrk(string1, string2);if (ptr)printf("strpbrk found first character: %c\n", *ptr);elseprintf("strpbrk didn't find character in set\n");return 0;}函数名: strrchr功能: 在串中查找指定字符的最后一个出现用法: char *strrchr(char *str, char c);程序例:#include <string.h>#include <stdio.h>int main(void){char string[15];char *ptr, c = 'r';strcpy(string, "This is a string");ptr = strrchr(string, c);if (ptr)printf("The character %c is at position: %d\n", c, ptr-string);elseprintf("The character was not found\n");return 0;}函数名: strrev功能: 串倒转用法: char *strrev(char *str);程序例:#include <string.h>#include <stdio.h>int main(void){char *forward = "string";printf("Before strrev(): %s\n", forward);strrev(forward);printf("After strrev(): %s\n", forward);return 0;}函数名: strset功能: 将一个串中的所有字符都设为指定字符用法: char *strset(char *str, char c);程序例:#include <stdio.h>#include <string.h>int main(void){char string[10] = "123456789";char symbol = 'c';printf("Before strset(): %s\n", string);strset(string, symbol);printf("After strset(): %s\n", string);return 0;}函数名: strspn功能: 在串中查找指定字符集的子集的第一次出现用法: int strspn(char *str1, char *str2);程序例:#include <stdio.h>#include <string.h>#include <alloc.h>int main(void){char *string1 = "1234567890";char *string2 = "123DC8";int length;length = strspn(string1, string2);printf("Character where strings differ is at position %d\n", length);return 0;}函数名: strstr功能: 在串中查找指定字符串的第一次出现用法: char *strstr(char *str1, char *str2);程序例:#include <stdio.h>#include <string.h>int main(void){char *str1 = "Borland International", *str2 = "nation", *ptr;ptr = strstr(str1, str2);printf("The substring is: %s\n", ptr);return 0;}函数名: strtod功能: 将字符串转换为double型值用法: double strtod(char *str, char **endptr);程序例:#include <stdio.h>#include <stdlib.h>int main(void){char input[80], *endptr;double value;printf("Enter a floating point number:");gets(input);value = strtod(input, &endptr);printf("The string is %s the number is %lf\n", input, value);return 0;}函数名: strtok功能: 查找由在第二个串中指定的分界符分隔开的单词用法: char *strtok(char *str1, char *str2);程序例:#include <string.h>#include <stdio.h>int main(void){char input[16] = "abc,d";char *p;/* strtok places a NULL terminatorin front of the token, if found */p = strtok(input, ",");if (p) printf("%s\n", p);/* A second call to strtok using a NULLas the first parameter returns a pointerto the character following the token */p = strtok(NULL, ",");if (p) printf("%s\n", p);return 0;}函数名: strtol功能: 将串转换为长整数用法: long strtol(char *str, char **endptr, int base); 程序例:#include <stdlib.h>#include <stdio.h>int main(void){char *string = "87654321", *endptr;long lnumber;/* strtol converts string to long integer */lnumber = strtol(string, &endptr, 10);printf("string = %s long = %ld\n", string, lnumber);return 0;}函数名: strupr功能: 将串中的小写字母转换为大写字母用法: char *strupr(char *str);程序例:#include <stdio.h>#include <string.h>int main(void){char *string = "abcdefghijklmnopqrstuvwxyz", *ptr;/* converts string to upper case characters */ptr = strupr(string);printf("%s\n", ptr);return 0;}函数名: swab功能: 交换字节用法: void swab (char *from, char *to, int nbytes); 程序例:#include <stdlib.h>#include <stdio.h>#include <string.h>char source[15] = "rFna koBlrna d";char target[15];int main(void){swab(source, target, strlen(source));printf("This is target: %s\n", target);return 0;}。

c语言math函数库手册

c语言math函数库手册

函数名称: abs函数原型: int abs(int x);函数功能: 求整数x的绝对值函数返回: 计算结果参数说明:所属文件: <>,<>使用范例:#include <>#include <>int main(){int number=-1234;printf("number: %d absolute value: %d",number,abs(number)); return 0;}@函数名称: fabs函数原型: double fabs(double x);函数功能: 求x的绝对值.函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){float number=;printf("number: %f absolute value: %f",number,fabs(number)); return 0;}@函数名称: cabs函数原型: double cabs(struct complex znum)函数功能: 求复数的绝对值函数返回: 复数的绝对值参数说明: zuum为用结构struct complex表示的复数,定义如下:struct complex{double m;double n;}所属文件: <>#include <>#include <>int main(){struct complex z;double val;=;=;val=cabs(z);printf("The absolute value of %.2lfi %.2lfj is %.2lf",,,val); return 0;}@函数名称: ceil函数原型: double ceil(double num)函数功能: 得到不小于num的最小整数函数返回: 用双精度表示的最小整数参数说明: num-实数所属文件: <>#include <>#include <>int main(){double number=;double down,up;down=floor(number);up=ceil(number);printf("original number %",number);printf("number rounded down %",down);printf("number rounded up %",up);return 0;}@函数名称: sin函数原型: double sin(double x);函数功能: 计算sinx的值.正弦函数函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result,x=;result=sin(x);printf("The sin() of %lf is %lf",x,result); return 0;}@函数名称: cos函数原型: double cos(double x);函数功能: 计算cos(x)的值.余弦函数.函数返回: 计算结果参数说明: x的单位为弧度所属文件: <>使用范例:#include <>#include <>int main()double result;double x=;result=cos(x);printf("The cosine of %lf is %lf",x,result);return 0;}@函数名称: tan函数原型: double tan(double x);函数功能: 计算tan(x)的值,即计算角度x的正切数值函数返回: 计算结果参数说明: x>=0单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result,x;x=;result=tan(x);printf("The tan of %lf is %lf",x,result);return 0;}@函数名称: asin函数原型: double asin(double x);函数功能: 计算sin^-1(x)的值.反正弦值函数函数返回: 计算结果参数说明: x应在 -1 到 1 范围内.单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=asin(x);printf("The arc sin of %lf is %lf",x,result); return 0;}@函数名称: acos函数原型: double acos(double x);函数功能: 计算cos^-1(x)的值,反余弦函数函数返回: 计算结果参数说明: x应在-1到1范围内.切记单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=acos(x);printf("The arc cosine of %lf is %lf",x,result); return 0;}@函数名称: atan函数原型: double atan(double x);函数功能: 计算tan^-1(x)的值.函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=atan(x);printf("The arc tangent of %lf is %lf",x,result);return 0;}@函数名称: atan2函数原型: double atan2(double x,double y);函数功能: 计算tan^-1/(x/y)的值.求x/y的反正切值.函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=,y=;result=atan2(y,x);printf("The arc tangent ratio of %lf is %lf",(y/x),result); return 0;}@函数名称: sinh函数原型: double sinh(double x);函数功能: 计算x的双曲正弦函数sinh(x)的值.函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result,x=;result=sinh(x);printf("The hyperbolic sin() of %lf is %lf",x,result); return 0;}@函数名称: cosh函数原型: double cosh(double x);函数功能: 计算x的双曲余弦cosh(x)的值.函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=cosh(x);printf("The hyperboic cosine of %lf is %lf",x,result); return 0;}@函数名称: tanh函数原型: double tanh(double x);函数功能: 计算x的双曲正切函数tanh(x)的值.函数返回: 计算结果参数说明: x>=0所属文件: <>使用范例:#include <>#include <>int main(){double result,x;x=;result=tanh(x);printf("The hyperbolic tangent of %lf is %lf",x,result); return 0;}@函数名称: exp函数原型: double exp(double x);函数功能: 求e的x次幂函数返回: 计算结果.幂的值参数说明: x-指数所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=exp(x);printf("'e' raised to the power of %lf(e^%lf)=%lf",x,x,result); return 0;}@函数名称: floor函数原型: double floor(double x);函数功能: 求出不大于x的最大整数.函数返回: 该整数的双精度实数参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double number=;double down,up;down=floor(number);up=ceil(number);printf("original number %",number);printf("number rounded down %",down);printf("number rounded up %",up);return 0;}@函数名称: fmod函数原型: double fmod(double x,double y);函数功能: 求整数x/y的余数函数返回: 返回余数的双精度数.x/y的余数值.参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double x=,y=;double result;result=fmod(x,y);printf("The remainder of (%lf/%lf) is %lf",x,y,result);return 0;}@函数名称: frexp函数原型: double frexp(double val,int *eptr);函数功能: 把双精度数val分解为数字部分(尾数)x和以2为底的指数n,即val=x*2^n,n存放在eptr指向的变量中.函数返回: 返回数字部分x,<=x且x<1参数说明: val-待分解的数所属文件: <>使用范例:#include <>#include <>int main(){double mantissa,number;int exponent;number=;mantissa=frexp(number,&exponent);printf("The number %lf is",number);printf("%lf times two to the",mantissa);printf("power of %d",exponent);return 0;}@函数名称: log函数原型: double log(double x);函数功能: 求logeX(e指的是以e为底),即计算x的自然对数(ln X) 函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=log(x);printf("The natural log of %lf is %lf",x,result);return 0;}@函数名称: log10函数原型: double log10(double x);函数功能: 求log10x(10指的是以10为底).计算x的常用对数函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=log10(x);printf("The common log of %lf is %lf",x,result);return 0;}@函数名称: modf函数原型: double modf(double val,double *iptr);函数功能: 把双精度数val分解为整数部分和小数部分,把整数部分存到iptr指向的单元. 函数返回: val的小数部分参数说明: val 待分解的数所属文件: <>使用范例:#include <>#include <>int main(){double fraction,integer;double number=;fraction=modf(number,&integer);printf("The whole and fractional parts of %lf are %lf and%lf",number,integer,fraction);}@函数名称: pow函数原型: double pow(double x,double y);函数功能: 计算以x为底数的y次幂,即计算x^y的值. 函数返回: 计算结果参数说明: x-底数,y-幂数所属文件: <>使用范例:#include <>#include <>int main(){double x=,y=;printf("%lf raised to %lf is %lf",x,y,pow(x,y)); return 0;}@函数名称: sqrt函数原型: double sqrt(double x);函数功能: 计算x的开平方.函数返回: 计算结果参数说明: x>=0所属文件: <>#include <>#include <>int main(){double x=,result;result=sqrt(x);printf("The square root of %lf is %lf",x,result); return 0;}@函数名称: hypot函数原型: double hypot(double x,double y)函数功能: 已知直角三角形两个直角边长度,求斜边长度函数返回: 斜边长度参数说明: x,y-直角边长度所属文件: <>#include <>#include <>int main(){double result;double x=;double y=;result=hypot(x,y);printf("The hypotenuse is: %lf",result);return 0;}@函数名称: poly函数原型: double poly(double x,int degree,double coeffs[])函数功能: 计算多项式函数返回: 多项式的计算结果参数说明: 计算c[n]*x^n+c[n-1]x^n-1+.....+c[1]*x+c[0]所属文件: <>#include <>#include <>int main(){double array[]={,,,};double result;result=poly,3,array);printf("The polynomial: x**3 - **2 + 5x - 1 at is %lf",result); return 0;}@函数名称: matherr函数原型: int matherr(struct exception *e)函数功能: 数学错误计算处理程序函数返回:参数说明: 该函数不能被直接调用,而是被库函数_matherr()调用所属文件: <>#include<>int matherr(struct exception *a){return 1;}@函数名称: ldexp函数原型: double ldexp(double x,int exponent)函数功能: 计算x*2的exponent次幂,即2*pow(2,exponent)的数值函数返回:参数说明:所属文件: <>#include <>#include <>int main(){double value;double x=2;value=ldexp(x,3);printf("The ldexp value is: %lf",value);return 0;}int abs(int i) 返回整型参数i的绝对值double cabs(struct complex znum) 返回复数znum的绝对值double fabs(double x) 返回双精度参数x的绝对值long labs(long n) 返回长整型参数n的绝对值double exp(double x) 返回指数函数ex的值double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中double ldexp(double value,int exp); 返回value*2exp的值double log(double x) 返回logex的值double log10(double x) 返回log10x的值double pow(double x,double y) 返回xy的值double pow10(int p) 返回10p的值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+y2double 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转换成长整型数,并返回这个数,错误返回0 double 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() 返回浮点状态字。

C语言函数参考手册

C语言函数参考手册

C语言函数参考手册一、概述C语言是一种通用的、面向过程的程序设计语言,广泛应用于系统编程和应用软件开发等领域。

在C语言中,函数是非常重要的组成部分,通过函数可以实现代码的模块化和重复使用。

本手册旨在为C语言开发者提供函数相关信息的参考,包括常用函数的用法、参数说明和返回值等。

二、函数的声明函数声明是指在使用函数之前,需要先声明函数的存在及函数的参数类型和返回值类型。

函数声明通常位于源文件的开头部分,以便在其他代码中使用。

1. 函数声明的一般格式如下:返回值类型函数名(参数列表);2. 示例:int max(int a, int b);void printHello();三、函数的定义函数定义是指实现函数的功能代码,并且包含函数的参数和返回值类型的明确说明。

函数定义通常位于源文件的主体部分。

1. 函数定义的一般格式如下:返回值类型函数名(参数列表) {函数体代码return 返回值;}2. 示例:int max(int a, int b) {if (a > b) {return a;} else {return b;}}void printHello() {printf("Hello, world!\n");}四、函数的参数函数的参数是指在函数的括号内声明的变量,用于接受调用函数时传递的值。

函数的参数可以有多个,也可以没有参数。

1. 参数的声明格式如下:参数类型参数名2. 示例:int add(int a, int b);void printName(char* name);五、函数的返回值函数的返回值是指函数执行完成后返回的结果。

返回值可以是任何数据类型,如整数、浮点数、字符等。

函数的返回值可以有多种情况,根据具体逻辑来确定。

1. 返回值的声明格式如下:返回值类型2. 示例:int max(int a, int b);double calculateAverage(int array[], int length);六、常用函数C语言提供了许多常用的函数库,通过这些函数可以实现各种功能。

C语言函数手册

C语言函数手册

《C语言函数手册》1 字符操作函数1.1 C语言isxdigit()函数:判断字符是否为16进制数字头文件:#include <ctype.h>定义函数:int isxdigit (int c);函数说明:检查参数c是否为16 进制数字,只要c为下列其中一个情况就检测成功。

16进制数字:0123456789ABCDEF。

返回值:若参数c 为16 进制数字,则返回非0,否则返回0。

附加说明:此为宏定义,非真正函数。

1.2 C语言isupper()函数:判断字符是否为大写英文字母头文件:#include <ctype.h>定义函数:int isupper(int c);函数说明:检查参数c是否为大写英文字母。

返回值:若参数c 为大写英文字母,则返回非0,否则返回0。

附加说明:此为宏定义,非真正函数。

1.3 C语言ispunct()函数:判断字符是否为标点符号或特殊字符头文件:#inlude <ctype.h>定义函数:int ispunct(int c);参数:c 为需要检测的字符。

返回值若:c 为标点符号或特殊符号(非空格、非数字和非英文字母)返回非0 值,否则返回0。

注意,此为宏定义,非真正函数。

1.4 C语言isspace()函数:判断字符是否为空白字符头文件:#include <ctype.h>定义函数:int isspace(int c);函数说明:检查参数c是否为空格字符,也就是判断是否为空格(' ')、定位字符(' \t ')、CR(' \r ')、换行(' \n ')、垂直定位字符(' \v ')或翻页(' \f ')的情况。

返回值:若参数c 为空白字符,则返回非0,否则返回0。

附加说明:此为宏定义,非真正函数。

1.5 C语言isprint()函数:判断字符是否为可打印字符头文件:#include <ctype.h>函数定义:int isprint(int c);参数:c 为需要被检测的字符。

C语言库函数手册

C语言库函数手册

C语言库函数手册分类函数,所在函数库为 ctype.hint isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0 int 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值,否则返回0 int 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')数学函数,所在函数库为 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+y2double 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() 返回浮点状态字目录函数,所在函数库为 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_H IDDEN 隐藏文件┃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变量,未找到文件返回NULL进程函数,所在函数库为stdlib.h、process.hvoid abort() 此函数通过调用具有出口代码3的_exit写一个终止信息于stderr,并异常终止程序。

(完整word版)C语言常用库函数(含详细用法)

(完整word版)C语言常用库函数(含详细用法)
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〈1
double log(double x)
把pt所指向的n*size个字节输入到fp所指文件
输出的数据项个数
int getc (FILE *fp)
从fp所指文件中读取一个字符
返回所读字符,若出错或文件结束返回EOF
int getchar(void)
从标准输入设备读取下一个字符
返回所读字符,若出错或文件结束返回—1
char *gets(char *s)
返回找到的字符串的地址,找不到返回NULL
四、输入输出函数
调用字符函数时,要求在源文件中包下以下命令行:
#include 〈stdio。h〉
函数原型说明
功能
返回值
void clearer(FILE *fp)
清除与文件指针fp有关的所有出错信息

int fclose(FILE *fp)
关闭fp所指的文件,释放文件缓冲区
char *strcpy(char *s1,char *s2)
把s2指向的串复制到s1指向的空间
s1所指地址
unsigned strlen(char *s)
求字符串s的长度
返回串中字符(不计最后的'\0')个数
char *strstr(char *s1,char *s2)
在s1所指字符串中,找出字符串s2第一次出现的位置
计算cos(x)的值

(完整版)C语言函数大全

(完整版)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语言标准函数库手册

c语言标准函数库手册

c语言标准函数库手册
《C语言标准函数库手册》是一本全面的参考资料,旨在帮助程序员更好地理解和使用C语言标准库中的函数。

这本手册详细介绍了每个函数的语法、参数、返回值、功能描述和示例代码。

通过阅读这本手册,程序员可以快速找到所需函数,了解其用法和注意事项,从而提高编程效率和代码质量。

手册按照C语言标准库的章节组织,方便读者查阅。

每个章节都详细介绍了该章节所包含的函数,包括函数名、函数原型、参数说明、返回值说明、功能描述和示例代码。

此外,手册还提供了丰富的表格和图示,帮助读者更好地理解函数之间的关系和用法。

除了标准库中的函数,手册还介绍了C语言中的一些常用库和工具,如数学库、字符串库、时间库等。

这些库和工具的使用可以帮助程序员更高效地编写代码,解决实际问题。

总之,《C语言标准函数库手册》是一本非常实用的参考资料,对于C语言程序员来说是必备的。

通过阅读这本手册,程序员可以更好地掌握C语言标准库的使用,提高编程技能和效率。

C语言库函数参考手册

C语言库函数参考手册

92 creat
int creat(char *filename,int permiss)
93 creatnew
int creatnew(char *filenamt,int attrib)
94 creattemp
int creattemp(char *filenamt,int attrib)
95 cscanf
99 DBL_DIG 100 DBL_EPSILON 101 DBL_MANT_DIG 102 DBL_MAX 103 DBL_MAX_EXP 104 DBL_MIN 105 DBL_MIN_EXP 106 delay 107 difftime 108 disable 109 div void delay(unsigned milliseconds) double difftime(time_t time2,time_t time1) void disable() div_t div(int numerator, int denominator);
110 dosexterr
int dosexterr(struct DOSERR *eblkp)
111 dostounix 112 dup
long dostounix(struct date *dateptr,struct time *timeptr) int dup(int handle)
113 dup2 114 enable 115 eof 116 exec„
int _creat(char *filename,int attrib) void _exit(int status) void _fpreset()
unsigned long _lrotl(unsigned long value,int count) unsigned long _lrotr(unsigned long value,int count) double _matherr(_mexcep why,char *fun,double *arg1p,double *arg2p,double retval)

c语言标准库函数手册

c语言标准库函数手册

c语言标准库函数手册C语言标准库函数手册。

C语言标准库函数是C语言中非常重要的一部分,它包含了大量的函数,可以帮助程序员实现各种功能。

本手册将详细介绍C语言标准库中常用的函数,希望能够帮助读者更好地理解和应用这些函数。

一、stdio.h。

stdio.h是C语言标准库中的一个头文件,它包含了一些常用的输入输出函数。

其中,最常用的函数包括printf、scanf、fopen、fclose等。

这些函数可以帮助程序员实现输入输出操作,是C语言编程中必不可少的一部分。

1. printf。

printf函数是C语言中用来输出格式化字符串的函数,它可以根据格式化字符串中的格式化指令,将相应的数据输出到标准输出设备(通常是显示器)。

例如,可以使用printf("%d", num)来输出一个整数。

2. scanf。

scanf函数是C语言中用来输入数据的函数,它可以根据格式化字符串中的格式化指令,从标准输入设备(通常是键盘)中读取数据并存储到指定的变量中。

例如,可以使用scanf("%d", &num)来输入一个整数并存储到变量num中。

3. fopen和fclose。

fopen函数用来打开一个文件,并返回一个指向该文件的指针。

fclose函数用来关闭一个已打开的文件。

这两个函数在文件操作中非常常用,可以帮助程序员实现文件的读写操作。

二、stdlib.h。

stdlib.h是C语言标准库中的另一个头文件,它包含了一些常用的通用工具函数。

其中,最常用的函数包括malloc、free、rand、exit等。

这些函数可以帮助程序员实现动态内存分配、随机数生成、程序退出等功能。

1. malloc和free。

malloc函数用来在堆上分配指定大小的内存空间,并返回指向该空间的指针。

free函数用来释放之前分配的内存空间。

这两个函数在动态内存管理中非常重要,可以帮助程序员灵活地管理内存空间。

C语言库函数手册

C语言库函数手册

C语言库函数手册目录A. 分类函数[函数库为ctype.h] (1)B. 数学函数[函数库为math.h、stdlib.h、string.h、float.h] (2)C. 目录函数[函数库为dir.h、dos.h] (3)D. 进程函数[函数库为stdlib.h、process.h] (4)E. 转换子程序[函数库为math.h、stdlib.h、ctype.h、float.h] (6)F. 诊断函数[函数库为assert.h、math.h] (6)G. 输入输出子程序[函数库为io.h、conio.h、stat.h、dos.h、stdio.h、signal.h] (7)H. 接口子程序[函数库为dos.h、bios.h] (13)I. 操作函数[函数库为string.h、mem.h] (21)J. 存贮分配子程序[函数库为dos.h、alloc.h、malloc.h、stdlib.h、process.h] (23)K. 时间日期函数[函数库为time.h、dos.h] (24)int 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')int 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+y2double 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() 返回浮点状态字int chdir(char *path) 使指定的目录path(如:"C:\\WPS")变成当前的工作目录,成功返回0int findfirst(char *pathname,struct ffblk *ffblk,int attrib)查找指定的文件,成功int findnext(struct ffblk *ffblk) 取匹配finddirst的文件,成功返回0 void 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变量,未找到文件返回NULLD. 进程函数[函数库为stdlib.h、process.h]void abort() 此函数通过调用具有出口代码3的_exit写一个终止信息于stderr,并异常终止程序。

C语言文件操作函数大全(超详细)

C语言文件操作函数大全(超详细)

C语⾔⽂件操作函数⼤全(超详细)相关函数 open,fclose表头⽂件 #include<stdio.h>定义函数 FILE * fopen(const char * path,const char * mode);函数说明参数path字符串包含欲打开的⽂件路径及⽂件名,参数mode字符串则代表着流形态。

r 打开只读⽂件,该⽂件必须存在。

r+ 打开可读写的⽂件,该⽂件必须存在。

w 打开只写⽂件,若⽂件存在则⽂件长度清为0,即该⽂件内容会消失。

若⽂件不存在则建⽴该⽂件。

w+ 打开可读写⽂件,若⽂件存在则⽂件长度清为零,即该⽂件内容会消失。

若⽂件不存在则建⽴该⽂件。

a 以附加的⽅式打开只写⽂件。

若⽂件不存在,则会建⽴该⽂件,如果⽂件存在,写⼊的数据会被加到⽂件尾,即⽂件原先的内容会被保留。

a+ 以附加⽅式打开可读写的⽂件。

若⽂件不存在,则会建⽴该⽂件,如果⽂件存在,写⼊的数据会被加到⽂件尾后,即⽂件原先的内容会被保留。

复制代码代码如下:r Open text file for reading. The stream is positioned at the beginning of the file.r+ Open for reading and writing. The stream is positioned at the beginning of the file.w Truncate file to zero length or create text file for writing. The stream is positioned at the beginning of the file.w+ Open for reading and writing. The file is created if it does not exist, otherwise it is truncated. The stream is posi‐tioned at the beginning of the file.a Open for appending (writing at end of file). The file is created if it does not exist. The stream is positioned at theend of the file.a+ Open for reading and appending (writing at end of file). The file is created if it does not exist. The initial file posi‐tion for reading is at the beginning of the file, but output is always appended to the end of the file.上述的形态字符串都可以再加⼀个b字符,如rb、w+b或ab+等组合,加⼊b 字符⽤来告诉函数库打开的⽂件为⼆进制⽂件,⽽⾮纯⽂字⽂件。

常用的C语言函数手册.docx

常用的C语言函数手册.docx

常用的C语言函数手册函数说明abs()求绝对值(整数)asin()求反正弦的值(以弧度表示)atan()求反正切的值(以弧度表示)atan2()求反正切的值(以弧度表示)ceil()向上取整函数说明endgre nt()关闭文件(关闭组文件)en dpwent()关闭文件(关闭密码文件)en dutent()关闭文件(关闭utmp文件)fgetgrent()读取组格式函数fgetpwent()读取密码格式getegid()获得组识别码geteuid()获取用户识别码函数getgid()取得组识别码函数getgrent()从组文件中取得账号的数据getgrgid()从组文件中取得指定gid的数据getgrnam()从组文件屮取得指定组的数据getgroups()获取组代码函数getpw()取得指定用户的密码文件数据getpwent()从密码文件中取得账号的数据getpwuid()从密码文件中取得指定uid的数据getuid()取得真实的用户识别码getutent()从utmp文件屮取得账号登录数据getutid()从utmp文件中查找特定的记录getutli ne()文件查找函数(从utmp文件中查找特定的in itgroups()初始化组清单pututline()将utmp记录写入文件seteuid()设置有效的用户识别码setfsgid()设置文件系统的组识别码setfsuid()设置文件系统的用户识别码setgid()设置真实的组识别码setgrent()从头读取组文件中的组数据setgroups()设置组代码函数setpwent()从头读取密码文件中的账号数据setregid()设置真实及有效的组识别码setreuid()设置真实及有效的用户识别码setuid()设置真实的用户识别码setutent()从头读取utmp文件屮的登录数据utmpname()设置文件路径close()关闭文件creat()创建文件函数dup()复制文件描述词dup2()复制文件描述词fcntl()文件描述词操作函数flock()解除锁定文件fsync()将缓冲区数据写回磁盘lseek()移动文件的读写位置mkstempO建立临吋文件ope n()打开文件函数read()读文件函数(由已打开的文件读取数据)sync()写文件函数(将缓冲区数据写冋磁盘)write()写文件函数clearerr()清除文件流的错误旗标fclose()关闭打开的文件fdope n()将文件描述词转为文件指针feof()检查文件流是否读到了文件尾fflush()更新缓冲区fgetc()读文件函数(由文件中读取一个字符)fgets()读取文件字符串fileno()获取文件流所使用的文件描述词fputc()写文件函数(将一指定字符写入文件流中)fputs()写文件函数(将一指定的字符串写入文件fread()读文件函数(从文件流读取数据)freopen()打开文件函数,并获得文件句柄fseek()移动文件流的读写位置ftell()取得文件流的读取位置fwrite()写文件函数(将数据流写入文件中)mktempO产生唯一临时文件名setbuffer()设置文件流的缓冲区setli nebuf()设置文件流为线性缓冲区函数说明atexit()设置程序正常结束前调用的函数execl()执行文件函数execlp()从PATH环境变量屮查找文件并执行execv()执行文件函数execve()执行文件函数execvp()执行文件函数exit()结束进程_exit()结束进程执行getpgid()获取进程组识别码getpgrp()获取进程组识别码getpid()获取进程识别码getppid()取得父进程的进程识别码getpriority()取得程序进程执行优先权nice()改变进程优先顺序on _exit()设置程序正常结朿前调用的函数setpgid()设置进程组识别码函数setpgrp()设置进程组识别码setpriority()设置程序进程执行优先权system()执行shell命令wait()结束(中断)进程函数(常用)waitpid()中断(结束)进程函数(等待子进程中断或fprintf()输出函数(格式化输出数据至文件)fscanf()输入函数(比较常用)sacnf()字符串输入函数(最常用的输入函数)vfprintf()输出函数(格式化输出数据至文件)vfscanf()输入函数(先格式化字符串再输入)vprintf()输出函数vsca nf()字符串格式化输入函数vspri ntf()格式化字符串vsscanf()字符串输入函数vfork()建立新的进程函数说明access () 判断是否貝有存取文件的权限alphasort () 依字母顺序排序口录结构chdir () 改变当前的工作目录chmod() 修改文件权限cho wn () 改变文件所有者chroot () 改变文件根0录closedir () 关闭目录fchdir () 改变当前工作目录fchmod () 修改文件的权限fchown () 改变文件的所冇者ft runcate () 改变文件大小get cwd () 取得当前的工作目录link () 建立文件连接1 stat () 由文件描述词取得文件状态opendir () 打开冃录函数readdir () 读取目录函数readlinkO 取得符号连接所指的文件rewinddir () 重设读取目录的位置为开头位置seekdir () 设置下回读取目录的位置stat () 获取文件状态symlinkO 建立文件符号连接telldir () 取得目录流的读取位置truncate () 改变文件大小umask () 设置建立新文件时的权限遮罩unli nk() 删除文件utime () 修改文件的存取时间和更改时间utimes () 修改文件的存取时间和更改时间函数说明alarm()设置信号传送闹钟kiH()传送信号给指定的进程pause()让进程暂停直到信号出现sigaddset()增加一个信号至信号集sigdelset()从信号集里删除一个信号sigemptyset()初始化信号集sigfillset()将所有信号加入至信号集sigismember()测试某个信号是否已加入至信号signal()设置信号处理方式sigpending()查询被搁置的信号sigprocmask()查询或设置信号遮罩sleep()让进程暂停执行一段时间ferror()检查文件流是否有错误发生strerror()返回错误原因的描述字符串mkfifo()建立具名管道pclose()关闭管道I/Opopen()建立管道I/Osigacti on()查询或设置信号处理方式函数说明accept()接受socket连线bind()对socket定位conn ect()建立socket连线endprotoent()结束网络协议数据的读取en dservent()结束网络服务数据的读取getsockopt()取得socket状态htonl()将32位主机字符顺序转换成网络字符顺序htons()将16位主机字符顺序转换成网络字符顺序inet_addr()将网络地址转成二进制的数字inet at on()将网络地址转成网络一进制的数字inet_n toa()将网络一进制的数字转换成网络地址listen()等待连接ntohl()将32位网络字符顺序转换成主机字符顺序ntohs()将16位网络字符顺序转换成主机字符顺序recv()经socket接收数据recvfrom()经socket接收数据recvmsg()经socket接收数据send()经socket传送数据sen dmsg()经socket传送数据sendto()经socket传送数据setprotoent()打开网络协议的数据文件setsockopt()设置socket状态shutdown()终止socket通信socket()建立一个socket通信setservent()打开主机网络服务的数据文件函数说明getenv()取得环境变量内容putenv()改变或增加环境变量函数说明getopt()分析命令行参数isatty()判断文件描述词是否是为终端机ttyname() 返冋一终端机名称。

C语言库函数手册(二)

C语言库函数手册(二)
└───┴───────────────────────────────┘
int fclose(FILE *stream) 关闭一个流,可以是文件或设备(例如LPT1)
int fcloseall() 关闭所有除stdin或stdout外的流
int fflush(FILE *stream) 关闭一个流,并对缓冲区作处理
处理即对读的流,将流内内容读入缓冲区;
对写的流,将缓冲区内内容写入流。成功返回0
int fflushall() 关闭所有流,并对流各自的缓冲区作处理
处理即对读的流,将流内内容读入缓冲区;
对写的流,将缓冲区内内容写入流。成功返回0
unsigned FP_OFF(void far *farptr)本函数用来取远指针farptr的偏移量
unsigned FP_SEG(void far *farptr)本函数用来没置远指针farptr的段值
│main() │
│{ │
│ FILE *fp; │
│ fp=fopen("C:\\WPS\\WPS.EXE","r+b");│
FA_RDONLY只读 FA_HIDDEN隐藏 FA_SYSTEM系统
接口子程序,所在函数库为:dos.h、bios.h
unsigned sleep(unsigned seconds)暂停seconds微秒(百分之一秒)
int unlink(char *filename)删除文件filename
int fputs(char *string,FILE *stream) 将字符串string写入流stream中
int fread(void *ptr,int size,int nitems,FILE *stream) 从流stream中读入nitems

c语言函数-文档资料

c语言函数-文档资料

2、参与表达式的运算。这种方式要求函数是有返回值的。 例如: z=2*max(x,y); 是一个赋值表达式,把max的返回值赋予变量z。
3、函数作为另一个函数调用的实际参数出现。 这种情况是把该函数的返回值作为实参进行传送,因
此要求该函数必须是有返回值的。
§7.4 函数的嵌套调用 (P194) C语言的函数定义都是互相平行的、独立的,即在定义
函数时,一个函数内不能包含另一个函数。 C语言不能嵌套定义函数,但可以嵌套调用函数。即在
调用一个函数过程中,又调用另一个函数。
即被调函数可以作为主调函数去调用其它函数。
§7.5 函数的递归调用(P198)
在调用一个函数的过程中又出现直接或间接地调用该 函数本身,称为函数的递归调用。
1、被调函数为库函数 对库函数的调用不需要再作说明, 但必须把该函数的头
文件用include命令包含在源文件前部。
2、用户自定义的函数 一般应该在主调函数中对被调函数的返回值的类型做说明。 对被调函数的说明也有两种格式,
一种为传统格式,其一般格式为: 类型说明符 被调函数名();
另一种为现代格式,其一般形式为: 类型说明符 被调函数名(类型 形参,类型 形参…);
(3)、回传值类型和函数类型矛盾时,则以函数类型为准, 自动进行类型转换。
§7.3 函数的调用(P82) 一、函数调用的一般形式
函数名 (实参表列) 其中,实参以 “,” 分隔,形、实参数数量相等,类型一致。
从主调函数和被调函数之间数据传送的角度看又可分为 无参函数和有参函数两种。
(1)无参函数 函数定义、函数说明及函数调用中均不带参数。 主调函
在递归调用中, 主调函数又是被调函数。执行递归函 数将反复调用其自身。 每调用一次就进入新的一层。

c语言教学资料:04_函数.docx

c语言教学资料:04_函数.docx

本章主要内容:函数的定义、声明、调用函数形参和实参按值传递和按地址传递递归算法局部变暈和全局变暈变量存储类型内部函数和外部函数1.1函数概述函数是构成C 程序的基石,使用函数可以将程序分解成一个个的模块,每个模块实现一 个相对独立的功能,这些模块相互联系,共同组成了完成某项任务的程序。

在前儿章给出的 示例代码都是相对简单的程序,只有一个main()函数,实际上,随着问题规模的加大,要进 行的操作和处理的变量很多,程序的复杂度很高,如果程序不分模块,所有的操作都在main() 函数内完成,那么这只会使程序变成一团乱麻。

函数,是合理组织过程式程序的冇效手段。

引入函数的目的:方便结构化、模块化编程;解决代码的重复。

一个C 程序可由一个主函 数和若干个函数构成。

从软件工程的角度上说,降低程序复杂性的有效方法是合理的模块化。

也就是我们经常 说的“高内聚低耦合”。

在设计一个复杂的程序时,往往把整个程序划分为若干个功能较为 单一的模块,分别了以实现,再把所有的模块像搭积木一样搭起來,这种在程序设计中分而 治/的策略,被称为模块化程序设计方法。

在C 屮,模块就是一个个的函数,函数也是C 构造程序的重要的基本单位。

语句是构成程序的最基本单位,函数也是由语句构成的,从程序设计的角度上说,函数 (一系列语句)常被当成一个整体來看,这就降低了程序的复杂度。

函数从用户使用的角度可以分为:标准函数和用户口定义函数。

标准函数:即库函数。

由系统提供的设计好的函数,用户可以直接调用,例如: printf()—scanf()一fabs()—sqrt()一gets()一getchar()等等都是库函数。

用户自定义函数:用户自己根据需要定义的函数。

函数从形式上又可以分为:无参函数和有参函数。

实现一个函数主要分为3个步骤:函数的定义、函数的声明、函数的调用1.2函数的定义函数定义由函数头和函数体两部分组成, 返回类型函数名(形参列表)1>.返回类型:用来说明函数返回值的类型,如果没有返回值,则应声明为void 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、字符测试函数isupper()测试字符是否为大写英文字ispunct()测试字符是否为标点符号或特殊符号isspace()测试字符是否为空格字符isprint()测试字符是否为可打印字符islower()测试字符是否为小写字母isgraphis()测试字符是否为可打印字符isdigit()测试字符是否为阿拉伯数字iscntrl()测试字符是否为ASCII码的控制字符isascii()测试字符是否为ASCII码字符isalpha()测试字符是否为英文字母isalnum()测试字符是否为英文或数字isxdigit()测试字符是否为16进制数字二、字符串操作函数strtok()字符串分割函数strstr()字符串查找函数strspn()字符查找函数strrchr()定位字符串中最后出现的指定字符strpbrk()定位字符串中第一个出现的指定字符strncpy()复制字符串strncat()字符串连接函数strncasecmp()字符串比较函数(忽略大小写)strlen()字符串长度计算函数strdup()复制字符串strcspn()查找字符串strcpy()复制字符串strcoll()字符串比较函数(按字符排列次序)strcmp()字符串比较函数(比较字符串)strchr()字符串查找函数(返回首次出现字符的位置) strcat()连接字符串strcasecmp()字符串比较函数(忽略大小写比较字符串) rindex()字符串查找函数(返回最后一次出现的位置) index()字符串查找函数(返回首次出现的位置) toupper()字符串转换函数(小写转大写)tolower()字符串转换函数(大写转小写)toascii()将整数转换成合法的ASCII码字符strtoul()将字符串转换成无符号长整型数strtol()将字符串转换成长整型数strtod()将字符串转换成浮点数gcvt()将浮点型数转换为字符串(四舍五入) atol()将字符串转换成长整型数atoi()将字符串转换成整型数atof()将字符串转换成浮点型数三、内存管理函数memset()内存填入函数(将内存空间填入某值) memmove()内存复制函数memcpy()内存复制函数(复制内存内容) memcmp()内存比较函数memchr()在内存中查找特定字符memccpy()复制内存中的内容bzero()内存管理函数(将一段内存清零) bcopy()复制内存内容bcmp()内存操作函数(比较内存内容) munmap()解除内存映射mmap()建立内存映射malloc()分配一段内存空间getpagesize()取得内存分页大小free()释放内存空间calloc()配置内存空间四、日期时间函数time()取得本地时间(日期时间函数) settimeofday()设置当前时间戳mktime()将时间结构数据转换成经过的秒数localtime()获取当地目前时间和日期gmtime()获取当前时间和日期gettimeofday()获取当前时间ctime()将时间和日期以字符串格式表示asctime()将时间日期以字符串格式表示五、数学函数tanh()正切函数(取双曲线正切函数值)tan()正切函数sqrt()开方函数(取平方根值)sinh()正弦函数(取双曲线正玄函数值)sin()正弦函数pow()求次方函数(求一个数的N次方)log10()对数函数(求以10为底的对数值)log()对数函数(求以e为底的对数值)ldexp()次方函数(计算2的N次方的值)frexp()将浮点型数分为底数与指数exp()指数函数cosh()余弦函数(取双曲线余玄函数值)cos()余弦函数(取余玄函数值)ceil()取整函数(取不小于参数的最小整型数)atan2()反正切函数(取得反正切函数值)atan()反正切函数(取反正切函数值)asin()反正弦函数(取反正弦函数值)acos()反余弦函数(取反余弦函数数值)abs()求绝对值函数(适合整数求绝对值)六、文件操作函数ungetc()写文件函数(将指定字符写回文件流中)setvbuf()设置文件流的缓冲区setlinebuf()设置文件流为线性缓冲区setbuffer()设置文件流的缓冲区setbuf()设置文件流的缓冲区rewind()重设文件流的读写位置为文件开头putchar()字符输出函数(将指定的字符写到标准输出设备) putc()写文件函数(将一指定字符写入文件中) mktemp()产生唯一临时文件名gets()字符输入函数(由标准输入设备内读进一字符串) getchar()字符输入函数(由标准输入设备内读进一字符) getc()读文件函数(由文件中读取一个字符)fwrite()写文件函数(将数据流写入文件中)ftell()取得文件流的读取位置fseek()移动文件流的读写位置freopen()打开文件函数,并获得文件句柄fread()读文件函数(从文件流读取数据)fputs()写文件函数(将一指定的字符串写入文件内) fputc()写文件函数(将一指定字符写入文件流中)fopen()文件打开函数(结果为文件句柄)fileno()获取文件流所使用的文件描述词fgets()读取文件字符串fgetc()读文件函数(由文件中读取一个字符)fflush()更新缓冲区feof()检查文件流是否读到了文件尾fdopen()将文件描述词转为文件指针fclose()关闭打开的文件clearerr()清除文件流的错误旗标write()写文件函数sync()写文件函数(将缓冲区数据写回磁盘)read()读文件函数(由已打开的文件读取数据)open()打开文件函数mkstemp()建立临时文件lseek()移动文件的读写位置fsync()将缓冲区数据写回磁盘flock()解除锁定文件fcntl()文件描述词操作函数dup2()复制文件描述词dup()复制文件描述词creat()创建文件函数close()关闭文件utmpname()设置文件路径setutent()从头读取utmp文件中的登录数据setuid()设置真实的用户识别码setreuid()设置真实及有效的用户识别码setregid()设置真实及有效的组识别码setpwent()从头读取密码文件中的账号数据setgroups()设置组代码函数setgrent()从头读取组文件中的组数据setgid()设置真实的组识别码setfsuid()设置文件系统的用户识别码setfsgid()设置文件系统的组识别码seteuid()设置有效的用户识别码pututline()将utmp记录写入文件initgroups()初始化组清单getutline()文件查找函数(从utmp文件中查找特定的记录) getutid()从utmp文件中查找特定的记录getutent()从utmp文件中取得账号登录数据getuid()取得真实的用户识别码getpwuid()从密码文件中取得指定uid的数据getpwnam()从密码文件中取得指定账号的数据getpwent()从密码文件中取得账号的数据getpw()取得指定用户的密码文件数据getgroups()获取组代码函数getgrnam()从组文件中取得指定组的数据getgrgid()从组文件中取得指定gid的数据getgrent()从组文件中取得账号的数据getgid()取得组识别码函数geteuid()获取用户识别码函数getegid()获得组识别码fgetpwent()读取密码格式fgetgrent()读取组格式函数endutent()关闭文件(关闭utmp文件)endpwent()关闭文件(关闭密码文件)endgrent()关闭文件(关闭组文件)七、进程操作函数vsscanf()字符串输入函数vsprintf()格式化字符串vscanf()字符串格式化输入函数vprintf()输出函数vfscanf()输入函数(先格式化字符串再输入)vfprintf()输出函数(格式化输出数据至文件)sscanf()字符串输入函数sprintf()字符串复制函数(格式化字符串复制)sacnf()字符串输入函数(最常用的输入函数)printf()输出函数(最常用的输出函数)fscanf()输入函数(比较常用)fprintf()输出函数(格式化输出数据至文件)waitpid()中断(结束)进程函数(等待子进程中断或结束) wait()结束(中断)进程函数(常用)system()执行shell命令setpriority()设置程序进程执行优先权setpgrp()设置进程组识别码setpgid()设置进程组识别码函数on_exit()设置程序正常结束前调用的函数nice()改变进程优先顺序getpriority()取得程序进程执行优先权getppid()取得父进程的进程识别码getpid()获取进程识别码getpgrp()获取进程组识别码getpgid()获取进程组识别码_exit()结束进程执行vfork()建立新的进程exit()结束进程execvp()执行文件函数execve()执行文件函数execv()执行文件函数execlp()从PATH 环境变量中查找文件并执行execl()执行文件函数atexit()设置程序正常结束前调用的函数八、文件权限控制函数utimes()修改文件的存取时间和更改时间utime()修改文件的存取时间和更改时间unlink()删除文件umask()设置建立新文件时的权限遮罩truncate()改变文件大小telldir()取得目录流的读取位置symlink()建立文件符号连接stat()获取文件状态seekdir()设置下回读取目录的位置rewinddir()重设读取目录的位置为开头位置rename()更改文件名称或位置remove()删除文件函数readlink()取得符号连接所指的文件readdir()读取目录函数opendir()打开目录函数lstat()由文件描述词取得文件状态link()建立文件连接getcwd()取得当前的工作目录ftruncate()改变文件大小fstat()由文件描述词取得文件状态fchown()改变文件的所有者fchmod()改变文件的权限fchmod()修改文件的权限fchdir()改变当前工作目录closedir()关闭目录chroot()改变文件根目录chown()改变文件所有者chmod()修改文件权限chdir()改变当前的工作目录alphasort()依字母顺序排序目录结构access()判断是否具有存取文件的权限九、信号处理函数popen()建立管道I/Opclose()关闭管道I/Omkfifo()建立具名管道strerror()返回错误原因的描述字符串perror()打印出错误原因信息字符串ferror()检查文件流是否有错误发生sleep()让进程暂停执行一段时间sigprocmask()查询或设置信号遮罩sigpending()查询被搁置的信号signal()设置信号处理方式sigismember()测试某个信号是否已加入至信号sigfillset()将所有信号加入至信号集sigemptyset()初始化信号集sigdelset()从信号集里删除一个信号sigaddset()增加一个信号至信号集pause()让进程暂停直到信号出现sigaction()查询或设置信号处理方式kill()传送信号给指定的进程alarm()设置信号传送闹钟十、接口处理函数socket()建立一个socket通信shutdown()终止socket通信setsockopt()设置socket状态setprotoent()打开网络协议的数据文件setservent()打开主机网络服务的数据文件sendto()经socket传送数据sendmsg()经socket传送数据send()经socket传送数据recvmsg()经socket接收数据recvfrom()经socket接收数据recv()经socket接收数据ntohs()将16位网络字符顺序转换成主机字符顺序ntohl()将32位网络字符顺序转换成主机字符顺序listen()等待连接inet_ntoa()将网络二进制的数字转换成网络地址inet_aton()将网络地址转成网络二进制的数字inet_addr()将网络地址转成二进制的数字htons()将16位主机字符顺序转换成网络字符顺序htonl()将32位主机字符顺序转换成网络字符顺序getsockopt()取得socket 状态getsockopt()取得socket 状态endservent()结束网络服务数据的读取endprotoent()结束网络协议数据的读取connect()建立socket连线bind()对socket定位accept()接受socket连线十一、环境变量函数putenv()改变或增加环境变量getenv()取得环境变量内容十二、终端控制函数ttyname()返回一终端机名称select()I/O多工机制isatty()判断文件描述词是否是为终端机getopt()分析命令行参数。

相关文档
最新文档