C语言库函数学习


C语言库函数

[Toc]

1.数学函数

  • 使用数学函数时,应在源文件中使用预编译命令:
    #include<math.h> 
函数名 函数原型 功能 返回值
acos double acos(double x) 计算arccos x的值,其中-1<=x<=1 计算结果
asin double asin(double x) 计算arcsin x的值,其中-1<=x<=1 计算结果
atan double atan(double x) 计算arctan x的值 计算结果
atan2 double atan2(double x,double y) 计算arctan x/y的值 计算结果
cos double cos(double x) 计算cos x的值,其中x的单位为弧度 计算结果
cosh double cosh(double x) 计算x的双曲余弦cosh x的值 计算结果
exp double exp(double x) 求e^x的值 计算结果
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分解成数字部分(尾数)和以2为底的指数,即val=x * 2^n,n存放在eptr指向的变量中 数字部分x 0.5 <= x < 1
log double log(double x) 求ln x的值 计算结果
log10 double log10(double x) 求log10x的值 计算结果
modf double mof(double val,int * iptr) 把双精度数val分解成数字部分和小数部分,把整数部分存放在ptr指向的变量中 val的小数部分
pow double pow(double x,double y) 求x^y的值 计算结果
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) 计算tanh x的值,其中x的单位为弧度 计算结果

2.字符函数

  • 在使用字符函数时,应该在源文件中使用预编译命令:
    #include <ctype.h>
    函数名 函数原型 功能 返回值
    isalnum int isalnum(int ch) 检查ch是否字母或数字 是则返回1,否则返回0
    isalpha int isalpha(int ch) 检查ch是否为字母 是字母返回1,否则返回0
    iscntrl int iscntrl(int ch) 检查ch是否控制字符(其ASCII码在0和0xLF之间) 是控制字符返回1,否则返回0
    isdigit int isdigit(int ch) 检查ch是否为数字 是数字返回1,否则返回0
    isgraph int isgraph(int ch) 检查ch是否可打印字符(其ASCII码在0x21和0x7e之间),不包括空格 可打印字符返回1,否则返回0
    islower int islower(int ch) 检查ch是否是小写字母(a~z) 是小写字母返回1,否则返回0
    isprint int print(int ch) 检查ch是否是可打印字符(其ASCII码在0x21和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 int isxdigit(int ch) 检查ch是否一个16进制数字(即09,或AF,a~f) 是返回1,否则返回0
    tolower int tolower(int ch) 将ch字符转换为小写字母 返回ch对应的小写字母
    toupper int toupper(int ch) 将ch字符转换为大写字母 返回ch对应的大写字母

3.字符串函数

  • 在使用字符串函数时,应该在源文件中使用预编译命令:
    #include <string.h>

4.输入输出函数

  • 在使用输入输出函数时,应该在源文件中使用预编译命令:
    #include <stdio.h>
函数名 函数原型 功能 返回值
clearerr void clearerr(FILE *fp) 清除文件指针错误提示器
close int close(int fp) 关闭文件(非ANSI标准) 关闭成功返回0,不成功返回-1
creat int creat(char*filename,int mode) 以mode所指定的方式建立文件(非ANSI标准) 成功返回正数,否则返回-1
eof int eof(int fp) 判断fp所指的文件是否结束 文件结束返回1,否则返回0
fclose int fclose(FILE * fp) 关闭fp所指的文件,释放文件缓冲区 关闭成功返回0,不成功返回非0
feof int feof(FILE * fp) 检查文件是否结束 结束返回非0,否则返回0
ferror int ferror(FILE * fp) 测试fp所指文件是否错误 无错返回0,否则返沪非0
fflush int fflush(FILE * fp) 将fp所指的文件的全部控制信息和数据存盘 存盘正确返回0,否则返回非0
fgets char *fgets(char *buf,int n,FILE *fp) 从fp所指的文件读取一个长度为(n-1)的字符串,存入起始地址为buf的空间 返回地址buf。若遇文件结束或出错则返回E0F
fopen FILE *fopen(char *filename, char *mode) 以mode指定的方式打开名为filename的文件 成功,则返回一个文件指针,否则返回0
fprintf int fprintf(FILE * fp, char *format,args,…) 把args的值以format指定的格式输出到fp所指的文件中 实际输出的字符数
fputc int putc(char ch,FILE * fp) 将字符ch输出到fp所指的文件中 成功返回该字符,出错返回E0F
fputs int fputs(char str,FILE * fp) 将str指定的字符串输出到fp所指的文件中 成功则返回0,出错则返回E0F
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所指定的文件中的读写位置 返回文件中的读写位置,否则返回0
fwrite int fwrite(char *ptr,unsigned size,unsigned n,FILE * fp) 把ptr所指向的的n * size个字节输出到fp所指向的文件中 写到fp文件中的数据项的个数
getc int getc(FILE * fp) 从fp所指向的文件中的独处下一个字符 返回读出的字符,若文件出错或结束返回E0F
getchar int getchar() 从标准输入设备中读取下一个字符 返回字符,若文件出错或结束返回-1
gets char *gets(char *str) 从标准输入设备中读取字符串存入str指向的数组 成功返回str,否则返回NULL
open int open(char *filename, int mode) 以mode指定的方式打开已存在的名为filename的文件(非ANSI标准) 返回文件号(正数),如打开失败返回-1
printf int printf(char *format,args,…) 在format指定的字符串的控制下,将输出列表args的指输出到标准设备 输出字符的个数。若出错返回负数
prtc int prtc(int ch,FILE *fp) 把一个字符ch输入到fp所指的文件中 输出字符ch,若出错返回E0F
putchar int putchar(char ch) 把字符ch输出到fp标准输出设备 返回换行符,若失败返回E0F
puts int puts(char *str) 把str指向的字符串输出到标准输入设备,将”/0”转换为回车行 返回换行符,若失败返回E0F
putw int putw(int w,FILE *fp) 将一个整数i(即一个字)写到fp所指文件中(非ANSI标准) 返回读出的字符,若文件出错或结束返回E0F
read int read(int fd,char *buf,unsigned count) 从文件号fp所指定的文件中读count个字节到buf知识的缓冲区(非ANSI标准) 返回真正读出的字节个数,如文件结束返回0,出错返回-1
remove int remove(char *fname) 删除以fname为文件名的文件 成功返回0,出错返回-1
rename int remove(char *oname,char *nname) 把oname所指的文件名改为y由nname所指的文件名 成功返回0,出错返回-1
rewind void rewind(FILE *fp) 将fp指定的文件指针置于文件头,并清除文件结束标志和错误标志
scanf int scanf(char *format,args,…) 从标准输入设备按format指示的格式字符串规定的格式,输入数据给args所指示的单元,args为指针 读入并附给args数据个数。如文件结束返回E0F,若出错返回0
write int write(int fd,char *buf,unsigned count) 从buf指示的缓冲区输出count个字符到fd所指的文件中(非ANSI标准) 返回实际输入的字节数,如出错返回-1

5.动态储存分配函数

  • 在使用动态储存分配函数时,应该在源文件中使用预编译命令:
    include <stdib.h>
    函数名 函数原型 功能 返回值
    calloc void *calloc(unsigned n,unsigned 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可比原来的空间大或小 返回指向该内存区的指针。若重新分配失败,则返回NULL

6.其他函数

  • 在使用这些函数时,应该在源文件中使用预编译命令:
    #include <stdlib.h>
    函数名 函数原型 功能 返回值
    abs int abs(int num) 计算整数num的绝对值 返回计算结果
    atof double atof(char *str) 将str指向的字符串转换为一个double型的指 返回双精度计算结果
    atoi int atoi(char *str) 将str指向的字符串转换为int型的值 返回转换结果
    atol long atol(cahr *str) 将str指向的字符串转换为一个long型的值 返回转换结果
    exit void exit(int status) 中止程序运行。将status的值返回调用的过程
    itoa char *itoa(int n,char *str,int radix) 将整数n的值按照radix进制转换为等价的字符串,并将结果存入str指向的字符串中 返回一个指向str的指针
    labs long labs(long num) 计算long型的整数num的绝对值 返回计算结果
    ltoa char *ltoa(long n,char *str,int radix) 将长整数n的值按照radix进制转换为等价的字符串,并将结果存入str指向的字符串 返回一个指向str的指针
    rand int rand() 产生0到RAND_MAX之间的伪随机数。RAND_MAX在头文件中定义(头文件为time.h) 返回一个伪随机(整)数
    random int random(int num) 产生0到num之间的随机数(头文件为time.h) 返回一个随机(整)数
    randomize void randomize() 初始化随机函数,使用时包括头文件time.h

文章作者: Doublenine
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Doublenine !
 上一篇
C语言位运算符学习 C语言位运算符学习
C语言运算符[Toc] 概念 位运算是指按二进制进行的运算。 C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。 ====================
下一篇 
C语言学习笔记 C语言学习笔记
C语言学习笔记 [TOC] 数据类型1.基本类型 整数型:int、short int、long int、long long int short int ≤ int ≤ long int≤ long long int 浮点型:float、
  目录