C库函数
1.数学函数
头文件为#include<>或者#include""
函数名 | 函数原型 | 功能 | 返回值 | 说明 |
abs | int abs(int x) | 求整数x的绝对值 | 计算结果 | |
acos | double acos(double x) | 计算cos-1(x)的值 | 计算结果 | X应在-1到1范围内 |
asin | double asin(double x) | 计算sin-1(x)的值 | 计算结果 | X应在-1到1范围内 |
atan | double atan(double x) | 计算tan-1(x)的值 | 计算结果 | |
Atan2 | double atan2(double x,double y) | 计算tan-1(x/y)的值 | 计算结果 | |
cos | double cos(double x) | 计算cos(x)的值 | 计算结果 | X的单位为弧度 |
cosh | double cosh(double x) | 计算x的双曲余弦函数cosh(x)的值 | 计算结果 | |
exp | double exp(double x) | 求ex的值 | 计算结果 | |
fabs | double fabs(double x) | 求x的绝对值 | 计算结果 | |
floor | double floor(double x) | 求出不大于x的最大整数 | 该整数的双精度实数 | |
fmod | double fmod(double x,double y) | 求整除x/y的余数 | 返回余数的双精度实数 | |
frexp | double frexp(double val, int *eptr) | 把双精度数val分解为数字部分(尾数)x和以2为底的指数n,即val=x*2n n存放在eptr指向的变量中 | 返回数字部分x ≤x<1 | |
log | double log(double x) | 求logex,即ln x | 计算结果 | |
log10 | double log10(double x) | 求log10x | 计算结果 | |
modf | Double modf(double val, double *iptr) | 把双精度数val分解为整数部分和小数部分,把整数部分存到iptr | Val的小数部分 | |
pow | double pow(double x,double y) | 计算xy的值 | 计算结果 | |
rand | Int rand(void) | 产生随机-90到32767间的随机整数 | 随机整数 | |
sin | Double sin(double x) | 计算sin x的值 | 计算结果 | X单位为弧度 |
sinh | double sinh(double x) | 计算x的双曲正弦函数sinh(x)的值 | 计算结果 | |
sqrt | Double sqrt(double x) | 计算 | 计算结果 | X应≥0 |
tan | Double tan(double x) | 计算tan(x)的值 | 计算结果 | X单位为弧度 |
tanh | Double tanh(double x) | 计算x的双曲正切函数tanh(x)的值 | 计算结果 | |
2.字符函数和字符串函数
函数名 | 函数原型 | 功能 | 返回值 | 包含文件 |
isalnum | Int isalnum (int ch); | 检查ch是否是字母(alpha)或数字(numeric) | 是字母或数字返回1;否则返回0 | |
isalpha | Int isalpha(int ch); | 检查ch是否字母 | 是,返回1;不是,则返回0 | |
iscntrl | Int iscntrl (int ch); | 检查ch是否控制字符(其ASCII码在0和0x1F之间) | 是,返回1;不是,则返回0 | |
isdigit | Int isdigit (int ch); | 检查ch是否为数字(0~9) | 是,返回1;不是,则返回0 | |
isgraph | Int isgraph (int ch); | 检查ch是否可打印字符(其ASCII码在0x21和0x7E之间),不包括空格 | 是,返回1;不是,则返回0 | |
islower | Int islower (int ch); | 检查ch是否小写字母(a~z) | 是,返回1;不是,则返回0 | |
isprint | Intisprint (int ch); | 检查ch是否可打印字符,(包括空格),其ASCII码在0x20和0x7E之间, | 是,返回1;不是,则返回0 | |
ispunct | Int ispunct (int ch); | 检查ch是否标点字符(不包括空格),即除字母、数字和空格以外的所有可打印字符 | 是,返回1;不是,则返回0 | |
isspace | Int isspace (int ch); | 检查ch是否空格符、跳格符(制表符)或换行符 | 是,返回1;不是,则返回0 | |
isupper | Int isupper (int ch); | 检查ch是否大写字母(A~Z) | 是,返回1;不是,则返回0 | |
isxdigit | Intisxdigit (int ch); | 检查ch是否一个十六进制数字字符(即0~9,或A~F,或a~f) | 是,返回1;不是,则返回0 | |
strcat | char *strcat(char *str1,char *str2); | 把字符串str2接到str1后面,str1最后面的’\0’被取消 | Str1 | |
strchr | char *strchr(char *str,int ch); | 出str指向的字符串中第一次出现字符ch的位置 | 返回指向该位置的指针,如不到,则返回空指针 | |
strcmp | char *strcmp(char *str1,char *str2); | 比较两个字符串str1、str2 | Str1<str2,返回负数; Str1=str2,返回0;str1>str2,返回正数。 | |
strcpy | char *strcpy(char *str1,char *str2); | 把str2指向的字符串复制到str1中去 | 返回str1 | |
strlen | unsigned int strlen (char *str); | 统计字符串str中字符的个数(不包括终止符’\0’) | 返回字符个数 | |
strstr | char *strstr(char *str1,char *str2); | 出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符) | 返回该位置的指针,如不到,返回空指针 | |
tolower | int tolower(int ch); | 将ch字符转换为小写字母 | 返回ch所代表的字符的小写字母 | |
toupper | int toupper(int ch); | 将ch字符转换为大写字母 | 返回ch所代表的字符的大写字母 | |
3.输入输出函数
函数名 | 函数原型 | 功能 | 返回值 | 说明 |
Clearerr | Void clearerr (FILE *fp) | 使fp所指文件的错误,标志和文件结束标志置0 | 无 | |
Close | Int close(int fp) | 关闭文件 | 关闭成功返回0;不成功,返回1; | 非ANSI标准 |
Creat | Int creat(char *filename,int mode) | 以mode所指定的方式建立文件 | 成功则返回正数;否则返回-1 | 非ANSI标准 |
Eof | Int eof(int fd) | 检查文件是否结束 | 遇文件结束,返回1;否则返回0 | 非ANSI标准 |
Fclose | Int fclose(FILE *fp) | 关闭fp所指的文件,释放文件缓存区 | 有错则返回非0;否则返回0 | |
Feof | Int feof(FILE *fp) | 检查文件是否结束 | 遇文件结束符返回非0值;否则返回0 | |
Fgetc | Int fgetc(FILE *fp) | 从fp所指定的文件中取得下一个字符 | 返回所得到的字符,若读入错误,返回EOF | |
Fgets | Char *fgets(char *buf,int n,FILE *fp) | 从Fp指向的文件读取一个长度为(n-1)的字符串,存入起始地址为buf的空间 | 返回地址buf,若遇文件结束或出错,返回NULL | |
Fopen | FILE *fopen(char *filename,char * mode) | 以mode指定的方式打开名为filename的文件 | 成功,返回一个文件指针(文件信息区的起始地址);否则返回0 | |
Fprintf | Int fprintf(FILE *fp,char *format,args,...) | 把args的值以format指定的格式输出到fp指向的文件中 | 实际输出的字符数 | |
Fputc | Int fputc(char ch,FILE *fp) | 将字符ch输出到fp指向的文件中 | 成功,返回该字符;否则返回非0 | |
Fputs | Int fputs(char *str ,FILE *fp) | 将str指向的字符串输出到fp所指定的文件 | 成功返回0;若出错返回非0 | |
Fread | Int fread(char *pt,unsigned size,unsigned n,FILE *fp) | 从fp所指定的文件中读取长度为size的n个数据项,存到pt所指指向的内存区 | 返回所读的数据项个数,如遇文件结束或出错返回0 | |
Fscanf | Int fscanf(FILE *fp,char format, args,...) | 从fp指定的文件中按format给定的格式将输入数据送到args所指向的内存单元(args是指针) | 已输入的数据个数 | |
Fseek | Int fseek (FILE *fp, long offset,int base) | 将fp所指向的文件的位置指针移到以base所给出的位置为基准、以offset为位移量的位置 | 返回当前位置;否则,返回-1 | |
Ftell | Long ftell(FILE *fp) | 返回fp所指向的文件的读写位置 | 返回fp所指向的文件中读写位置 | |
Fwrite | Int fwrite(char *ptr,unsigned size,unsigned n,FILE *fp) | 把ptr所指向的n *size个字节输出到fp所指向的文件中 | 写到fp文件中的数据项的个数 | |
Getc | Int getc(FILE *fp) | 从fp所指向的文件中读入一个字符 | 返回所读的字符,若文件结束或出错,返回EOF | |
Getchar | Int getchar(void) | 从标准输入设备读取下一个字符 | 所读字符。若文件结束或出错,返回-1 | |
Getw | Int getw(FILE *fp) | 从fp所指向的文件中读取下一个字(整数) | 输入的整数。若文件结束或出错,返回-1 | 非ANSI标准 |
Open | Int open(char *filename,int mode) | 以mode指出的方式打开已存在的名为filename的文件 | 返回文件号(整数);如打开失败,返回-1 | 非ANSI标准 |
Printf | Int printf(char *format,args,...) | 按format指向的格式字符串所规定的格式,将输出表列args的值输出到标准输出设备 | 输出字符的个数,若出错,返回负数 | Format可以是一个字符串,或字符数组的起始地址 |
Putc | Int putc(char ch,FILE *fp) | 把一个字符ch输出到fp所指的文件中 | 输出的字符ch,若出错,返回EOF | |
Putchar | Int putchar (char ch) | 把字符ch输出到标准输出设备 | 输出的字符ch,若出错,返回EOF | c++trunc函数 |
Puts | Int puts(char *str) | 把str指向的字符串输出到标准输出设备,将’\0’转换为回车换行 | 返回换行符,若失败,返回EOF | |
Putw | Int putw(int w,FILE *fp) | 将一个整数w(即一个字)写到fp指向的文件中 | 返回输出的整数,若出错,返回EOF | 非ANSI标准 |
Read | Int read(int fd,char *buf,unsigned count) | 从文件号fd所指示的文件中读count个字节到由buf指示的缓冲区中 | 返回真正读入的字节个数,如遇文件结束返回0,出错返回-1 | 非ANSI标准 |
Rename | Int rename(char *oldname,char *newname) | 把由oldname所指的文件名,改为由newname所指的文件名 | 成功返回0;出错返回-1 | |
Rewind | Void rewind(FILE *fp) | 把fp指示的文件中的位置指针置于文件开头位置,兵清除文件结束标志和错误标志 | 无 | |
Scanf | Int scanf(char *format,args,...) | 从标准输入设备按format指向的格式字符串所规定的格式,输入数据给args所指向的单元 | 读入并赋给args的数据个数,遇文件结束返回EOF,出错返回0 | Args为指针 |
Write | Int write(int fd,char *buf,unsigned count) | 从buf指示的缓冲区输出count个字符到fd所标志的文件中 | 返回实际输出的字节数,如出错返回-1 | 非ANSI标准 |
4.动态存储分配函数
函数名 | 函数原型 | 功能 | 返回值 |
Calloc | Void *calloc(unsigned n,unsign size) | 分配n个数据项的内存连续空间,每个数据项的大小为size | 分配内存单元的起始地址,如不成功,返回0 |
free | Void free(void *p) | 释放p所指的内存区 | 无 |
malloc | Void *malloc (unsigned size) | 分配size字节的存储区 | 所分配的内存区起始地址,如内存不够,返回0 |
Realloc | Void *realloc(void *p, Unsigned size) | 将p所指出的已分配内存区的大小改为size,size可以比原来分配的空间大或小 | 返回指向该内存区的指针 |
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论