C程序设计常用库函数.docx

合集下载

常用C库函数

常用C库函数

42 43 } /* end main */ According to isdigit: 8 is a digit # is not a digit According to isalpha: A is a letter b is a letter & is not a letter 4 is not a letter According to isalnum: A is a digit or a letter 8 is a digit or a letter # is not a digit or a letter According to isxdigit: F is a hexadecimal digit J is not a hexadecimal digit 7 is a hexadecimal digit $ is not a hexadecimal digit f is a hexadecimal digit
4
小写字符转换函数
• 小写字符转换函数用于将小写字符转换为大写字符,其 函数原型如下: • char toupper (char c); • 其中,c为待转换的小写字符。如果字符参数不在a~z 之间,则该函数将不起作用,而直接返回原字符。
ASCII字符转换函数
• ASCII字符转换函数用于将任何字符型参数缩小到有效 的ASCII范围之内,其函数原型如下: • char toascii (char c); • 其中,c为待转换的字符。该函数执行的操作是将形参数 值和0x7f做与运算,从而去掉第7位以上的所有位数。如 果形参已是有效的ASCII字符,则不作处理,直接返回 原字符。
概述
• • • • • • • math.h stdio.h stdlib.h malloc.h string.h assert.h ……

C语言库函数使用大全

C语言库函数使用大全

C语言库函数使用大全C语言是一种面向过程的编程语言,它提供了大量的库函数来方便开发者进行各种操作。

在本篇文章中,我将介绍一些常用的C语言库函数,并说明它们的使用方法。

1.字符串处理函数:- strlen:用于计算字符串的长度。

- strcat:用于将两个字符串连接起来。

- strcpy:用于将一个字符串复制到另一个字符串中。

- strcmp:用于比较两个字符串是否相等。

2.数学函数:- abs:返回一个整数的绝对值。

- sqrt:返回一个数的平方根。

- pow:计算一个数的指定次幂。

- rand:生成一个随机数。

3.输入输出函数:- printf:用于打印输出。

- scanf:用于接受用户的输入。

- getchar:用于从输入流中读取一个字符。

- putchar:用于将一个字符输出到屏幕上。

4.内存管理函数:- malloc:用于在堆中分配指定大小的内存块。

- free:用于释放之前分配的内存。

- calloc:可以在堆中分配指定数量和大小的内存,并将每个字节初始化为0。

- realloc:用于调整之前分配的内存块的大小。

5.时间日期函数:6.文件操作函数:- fopen:用于打开一个文件。

- fclose:用于关闭一个文件。

- fgets:从文件中读取一行字符串。

- fputs:向文件中写入一行字符串。

7.数组处理函数:- memset:将一个数组的所有元素设置为指定的值。

- memcpy:将一个数组的内容复制到另一个数组中。

- memmove:将一个数组的内容移动到另一个数组中,处理重叠情况。

- qsort:用于对数组进行快速排序。

这只是C语言库函数的一小部分,还有很多其他函数可供使用。

在实际开发中,根据需求选择适合的函数,可以提高代码的效率和可读性。

总结:C语言库函数提供了丰富的功能,可以帮助开发者简化编程过程。

在使用库函数时,需要仔细阅读函数的说明文档,并根据需求选择适合的函数和参数。

通过充分利用库函数,可以提高代码的开发效率和质量。

C语言库函数使用大全

C语言库函数使用大全

C语言库函数使用大全C语言是一种广泛应用的编程语言,它提供了许多常用的库函数来帮助开发人员简化编写代码的过程。

这些库函数涵盖了各种任务,包括字符串操作、数学计算、文件处理、内存管理等等。

在下面的文章中,我将为您介绍一些重要的C语言库函数。

字符串处理函数:- strlen(const char *str):返回字符串的长度,不包括空字符。

- strcpy(char *dest, const char *src):将源字符串复制到目标字符串。

- strcat(char *dest, const char *src):将源字符串追加到目标字符串的末尾。

- strcmp(const char *str1, const char *str2):比较两个字符串,并返回一个整数表示它们的关系。

- strncpy(char *dest, const char *src, size_t n):将源字符串的前n个字符复制到目标字符串。

数学函数:- sqrt(double x):计算并返回x的平方根。

- abs(int x):返回一个整数的绝对值。

- pow(double x, double y):计算并返回x的y次方。

- sin、cos、tan:分别计算并返回给定角度的正弦、余弦和正切值。

- rand(void):生成并返回一个随机数。

文件处理函数:- fopen(const char *path, const char *mode):打开一个文件,并返回一个指向该文件的指针。

- fclose(FILE *stream):关闭一个已打开的文件。

- fprintf(FILE *stream, const char *format, ...):将格式化的输出写入到一个文件中。

- fscanf(FILE *stream, const char *format, ...):从一个文件中读取格式化的输入。

内存管理函数:- malloc(size_t size):分配一块指定大小的内存空间,并返回指向该空间的指针。

C库函数大全

C库函数大全

函数名: disable
功 能: 屏蔽中断
用 法: void disable(void);
函数名: div
功 能: 将两个整数相除, 返回商和余数
用 法: div_t (int number, int denom);
函数名: dosexterr
功 能: 获取扩展DOS错误信息
用 法:int dosexterr(struct DOSERR *dblkp);
函数名: cgets
功 能: 从控制台读字符串
用 法: char *cgets(char *str)
函数名: chdir
功 能: 改变工作目录
用 法: int chdir(const char *path);
函数名: _chmod, chmod
功 能: 改变文件的访问方式
用 法: int chmod(const char *filename, int permiss);
功 能: 清除图形屏幕
用 法: void far cleardevice(void);
函数名: clearerr
功 能: 复位错误标志
用 法:void clearerr(FILE *stream);
函数名: clearviewport
功 能: 清除图形视区
用 法: void far clearviewport(void);
函数名: dup
功 能: 复制一个文件句柄
用 法: int dup(int handle);
函数名: dup2
功 能: 复制文件句柄
用 法: int dup2(int oldhandle, int newhandle);
函数名: ecvt
功 能: 把一个浮点数转换为字符串

c语言标准库函数大全

c语言标准库函数大全

c语言标准库函数大全C语言标准库函数大全。

C语言标准库函数是C语言程序设计中不可或缺的一部分,它包含了丰富的函数,可以帮助程序员完成各种任务,从输入输出到内存管理、字符串处理等。

本文将为大家详细介绍C语言标准库中常用的函数,希望能够帮助大家更好地理解和运用这些函数。

1. 输入输出函数。

输入输出函数是C语言程序设计中最基本的部分,它们可以帮助我们与用户进行交互,从而实现程序的输入和输出。

其中,printf和scanf是最常用的两个函数,它们分别用于输出和输入数据。

除此之外,还有一些其他的输入输出函数,如puts、gets、putc、getc等,它们分别用于输出字符串、输入字符串等操作。

2. 字符串处理函数。

在C语言标准库中,有许多用于处理字符串的函数,如strlen、strcpy、strcat、strcmp等。

这些函数可以帮助我们对字符串进行各种操作,比如计算字符串的长度、复制字符串、拼接字符串、比较字符串等。

字符串处理函数在实际的程序设计中非常常用,它们可以帮助我们高效地处理字符串数据。

3. 数学函数。

C语言标准库中还包含了丰富的数学函数,如sin、cos、tan、sqrt、pow等。

这些函数可以帮助我们进行各种数学运算,比如三角函数运算、开方运算、幂运算等。

数学函数在科学计算和工程计算中非常重要,它们可以帮助我们实现各种复杂的数学运算。

4. 内存管理函数。

内存管理函数是C语言程序设计中不可或缺的一部分,它们可以帮助我们对内存进行分配和释放。

其中,malloc和free是最常用的两个函数,它们分别用于分配和释放内存。

除此之外,还有一些其他的内存管理函数,如calloc、realloc等,它们分别用于分配多块内存、重新分配内存等操作。

5. 时间日期函数。

C语言标准库中还包含了一些用于处理时间日期的函数,如time、localtime、strftime等。

这些函数可以帮助我们获取当前的系统时间、将时间转换为字符串等操作。

VC库函数大全

VC库函数大全

附录2 常‎用库函数‎ M‎i cros‎o ft C‎为应用程序‎设计人员提‎供了大量的‎库函数,其‎功能覆盖了‎程序设计的‎方方面面,‎为每个程序‎员所必须掌‎握。

在本附‎录中,我们‎选列了其中‎较常用的库‎函数,供读‎者查询参考‎。

为了节省‎篇幅,我们‎只列出了函‎数原型和简‎单的功能说‎明。

如果在‎使用时对某‎库函数的功‎能、参数设‎置和返回值‎等仍有疑问‎,可以直接‎查看MSD‎N中的有关‎说明。

‎1.分类库‎函数,原型‎均在头文件‎c type‎.h中。

这‎组库函数实‎际上均为带‎参数的宏。

‎原型:‎i nt i‎s alph‎a(int‎c);‎功能:如‎果c为字母‎返回非0值‎,否则返回‎0。

原型‎:int‎isdi‎g it(i‎n t c)‎;功能:‎如果c为‎数字返回非‎0值,否则‎返回。

原‎型:in‎t isa‎l num(‎i nt c‎);功能‎:如果c‎为字母或数‎字返回非0‎值,否则返‎回0。

原‎型:in‎t isl‎o wer(‎i nt c‎);i‎n t is‎u pper‎(int ‎c);功‎能:如果‎c为小写(‎大写)字母‎返回非0值‎,否则返回‎0。

原型‎:int‎ispr‎i nt(i‎n t c)‎;功能‎:如果c‎为可打印字‎符(包括字‎母、数字、‎空格和各种‎符号等)返‎回非0值,‎否则返回0‎。

原型:‎int ‎i sspa‎c e(in‎t c);‎功能:‎如果c为空‎格、制表符‎、回车换行‎符等则返回‎非0值,否‎则返回0。

‎原型:‎i nt t‎o lowe‎r(int‎ch);‎int‎toup‎p er(i‎n t ch‎);功能‎:将字符‎转换为小写‎或大写字符‎。

2.目‎录操作函数‎,用于在程‎序中处理文‎件目录系统‎,原型均在‎头文件di‎r ect.‎h中。

原‎型:in‎t _ch‎d ir(‎c onst‎char‎*dir‎n ame ‎);功能‎:改变当‎前目录。

c语言的库函数

c语言的库函数

c语言的库函数C语言是一门广泛应用于编程的语言,其库函数也是编程过程中必不可少的一部分。

本文将介绍C语言常用的库函数及其作用。

1. <stdio.h>这是C语言中最常用的库函数之一,用于输入输出操作。

其中包括了printf()、scanf()等函数。

printf()函数用于输出内容到控制台或文件中,其格式为printf("输出格式", 输出变量)。

scanf()函数用于从控制台或文件中获取输入,其格式为scanf("输入格式", 输入变量)。

2. <stdlib.h>这是C语言中的标准库函数之一,用于动态存储分配、数学计算、排序和字符串处理等操作。

其中包括了malloc()、free()、rand()等函数。

malloc()函数用于动态分配内存,其格式为malloc(分配大小)。

free()函数用于释放动态分配的内存,其格式为free(需要释放的内存指针)。

rand()函数用于生成随机数,其格式为rand()。

3. <string.h>这是C语言中的字符串处理函数库,其中包括了strcpy()、strcat()、strlen()等函数。

strcpy()函数用于将一个字符串复制到另一个字符串中,其格式为strcpy(目标字符串, 源字符串)。

strcat()函数用于将一个字符串连接到另一个字符串的末尾,其格式为strcat(目标字符串, 源字符串)。

strlen()函数用于计算一个字符串的长度,其格式为strlen(字符串)。

4. <math.h>这是C语言中的数学函数库,其中包括了sin()、cos()、tan()等函数。

sin()函数用于计算正弦值,其格式为sin(弧度值)。

cos()函数用于计算余弦值,其格式为cos(弧度值)。

tan()函数用于计算正切值,其格式为tan(弧度值)。

5. <ctype.h>这是C语言中的字符处理函数库,其中包括了isalpha()、isdigit()、toupper()等函数。

C语言库函数表

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的值计算结果atan2double atan2(doublex,double y);计算arctan x/y的值计算结果cos double cos(double x);计算cos x的值,其中x的单位为弧度计算结果cosh double cosh(doublex);计算x的双曲余弦cosh x的值计算结果exp double exp(double x);求e x的值计算结果fabs double fabs(doublex);求实型x的绝对值计算结果floor double floor(doublex);求出不大于x的最大整数该整数的双精度实数fmod double fmod(double x,double y);求整除x/y的余数,%只适用于整型数据返回余数的双精度实数frexp double frexp(doubleval,int*eptr);把双精度数val分解成数字部分(尾数)和以2为底的指数,即val=x*2n,n存放在eptr指向的变量中数字部分x0.5<=x<1log double log(double x);求lnx的值计算结果log10double log10(doublex);求log10x的值计算结果modf double modf(doubleval,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(doublex);计算x的双曲正弦函数sinh x的值计算结果sqrt double sqrt(doublex);计算x,其中x≥0计算结果tan double tan(double x);计算tan x的值,其中x的单位为弧度计算结果tanh double tanh(doublex);计算x的双曲正切函数tanh x的值计算结果log10double log10(double);计算以10为底的对数计算结果log double log(double);以e为底的对数sqrt double sqrt(double);开平方cabs double cabs(structcomplex znum);求复数的绝对值ceil double ceil(double);取上整,返回不比x小的最小整数floor double floor(double);取下整,返回不比x大的最大整数,即高斯函数[x]2.字符函数在使用字符函数时,应该在源文件中使用预编译命令:#include<ctype.h>或#include"ctype.h"函数名函数原型功能返回值isalnum int isalnum(intch);检查ch是否字母或数字是字母或数字返回1,否则返回0isalpha int isalpha(intch);检查ch是否字母是字母返回1,否则返回iscntrl int iscntrl(intch);检查ch是否控制字符(其ASCII码在0和0xlF之间,数值为0-31)是控制字符返回1,否则返回0isdigit int isdigit(intch);检查ch是否数字(0-9)是数字返回1,否则返回isgraph int isgraph(intch);检查ch是否是可打印(显示)字符(0x21和0x7e之间),不包括空格是可打印字符返回非0,否则返回0islower int islower(intch);检查ch是否是小写字母(a~z)是小字母返回非0,否则返回0isprint int isprint(intch);检查ch是否是可打印字符(其ASCII码在0x21和0x7e之间),包括空格是可打印字符返回1,否则返回0ispunct int ispunct(intch);检查ch是否是标点字符(不包括空格)即除字母、数字和空格以外的所有可打印字符是标点返回1,否则返回isspace int isspace(intch);检查ch是否空格、跳格符(制表符)或换行符是,返回1,否则返回0isupper int isupper(intch);检查ch是否大写字母(A~Z)是大写字母返回1,否则返回0isxdigit int isxdigit(intch);检查ch是否一个16进制数字(即0~9,或A到F,a~f)是,返回1,否则返回0tolower int tolower(intch);将ch字符转换为小写字母返回ch对应的小写字母toupper int toupper(intch);将ch字符转换为大写字母返回ch对应的大写字母isascii int isascii(int ch)测试参数是否是ASCII码0-127是返回非0,否则返回03.字符串函数使用字符串中函数时,应该在源文件中使用预编译命令:#include<string.h>或#include"string.h"函数名函数原型功能返回值memchr void memchr(void*buf,char ch,unsigned count);在buf的前count个字符里搜索字符ch首次出现的位置返回指向buf中ch的第一次出现的位置指针。

C库函数大全

C库函数大全

分类函数,所在函数库为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值,否则返回0 int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回非0值,否则返回0 int 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')数学函数,所在函数库为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) 返回指数函数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转换成双精度数,并返回这个数,错误返回0 int 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() 返回浮点状态字目录函数,所在函数库为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等), 文件名n ame(TC、WPS等),扩展名ext(.EXE、.COM等),并分别存入相应的变量中.int getcurdir(int drive,char *direc)此函数返回指定驱动器的当前工作目录名称。

C语言图形库函数.docx

C语言图形库函数.docx

1•初始化图形系统函数名:ini tgraph功能:初始化图形系统用法:void far initgraph(int far *graphdriver, int far *grciphmode, char far *pathtodriver);程序例:^include <graphics. h>★include <stdlib. h>^include <stdio. h> #includo <conio・ h> int main(void){/* request auto detection */int gdriver = DETEC1\ gmode, errorcode;/* initialize graphics mode */initgraph(&gdriver, &gmode,"“);/* read result of initialization */errorcode 二graphresult():if (errorcode != grOk) /* an error occurred */(prin tf (''Graphics error: %s\n: grapherrormsg (errorcode)):printf("Press any key to halt:"):getch ();exi t(1); /* return wi th error code *//* draw a line */line(0, 0, gctmaxx0, gctmaxy());/* clean up */getch ();closegraph ();return 0;2.#include〈graphics・ h>★include <stdlib. h>^include <stdio. h>#include <conio.h> irH main(void){/* request auto detection */int gdriver = DETECT, gmode, errorcode; int maxx, mcixy;/* our polygon array */int polyL1OJ;/* initialhe graphics and local variables */initgraph(&gdriver, &gmode,;/* read result of initialization */ errorcode = graphresult();if (errorcode != grOk)/* an error occurred */{printf(^Graphics error: %s\n", \ grapherrormsg(orrorcode));prin订("Press any key to halt/); getch ();/♦ terminate with an error code */ exi t (1);}meixx = getmeixx ();mcixy = getmcixy 0 ;poly[0] = 20; /* 1st vertext */poly[1] = maxy / 2;poly[2] = maxx - 20; /* 2nd */ poly[3] = 20;poly [4] = maxx - 50; /* 3rd */ poly [5] = maxy - 20;poly[6] = maxx / 2;/* 4th */poly[7] = maxy / 2;/*drawpoly doesn't automatically close the polygon, so we close il・poly [8] = poly[0]:poly[9] = poly[l]:/* draw the polygon */ drawpoly(5, poly);/* clean up */ getchO ; elosegraph ();return 0;}#include <graphics・h> #include <stdlib. h> #includo <stdio・h> ^include <conio.h> int main(void)/* request auto detection */int gdriver = DETECT, gmode, errorcode;int midx, midy;ini stangle = 0, endangle = 360;int xradius = 100, yradius = 50;/* initidli/e graphics, local variables */ inilgraph(&gdrivg &gmode,"“);/* read result of initialization */ errorcode = graphrcsult();if (errorcode != grOk)/* an error occurred */(prin(『("Graphics error: %s\r)zz, grapherrormsg (errorcode));printf("Press any key to halt:");getch ();exit(1);/* term in ate with an error code */}midx = getmaxx () / 2;midy = getmaxy () / 2;setcolor (getmtixcolor ());/* draw ellipse */ellipse(midx, midy, stangle, endangle, xradius, yradius);/* clean up */getch ();closegraph();return 0;}功能:画出并填充一椭恻用法:void far fillellipse(int x, int y, int xradius, int yradius); 程序例:#includo〈graphics・ h>#include <conio. h>int main(void){int gdriver 二DETECT, gmode;int xcenter, ycenter, i;initgraph(&gdriver, &gmode,"“); xcenter = getmaxxO / 2;ycenter = getmaxy() / 2;for (i=0; i<13; i++){setfillstyle(i, WHITE);fillellipse(xcenter, ycenter, 100, 50); getch ();}closegraph();return 0;}#include <graphics・h> #include <stdlib. h> #includo <string・h> ^include <stdio.h> ^include <conio. h>int main(void)/* request auto detection */int gdriver = DETECT, gmode, errorcode;int bkcolor, midx, midy; char bknamc[35];/* initialize graphics and local variables */ initgraph(&gdrivor, &gmode,"”);/* road result of initializalion */errorcode = graphresult():/* an error occurred */if (errorcode != grOk){printf(z,Grciphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:z/); getch0 ;/* terminate with an error code */exit(1);}midx = getmaxx () / 2;midy 二gelmtixy() / 2; setcolor (getmaxcolor ());/* for centering text on the display */ settextjustify(CENTER_TEXT, CENTER_TEXT);/* get the current background color */ bkcolor = getbkcolor0 ;/* convert color value into a string */ itoa(bkcolor, bkname, 10);strcat (bknamc,"is the current background color・“);/* display a message */outtextxy (midx, midy, bkntune);/* clean up */getch();closegraph ();return 0;函数名:line 功能:在指定两点间画一直线用法:void far line(int xO, int yO, int xl, int yl);程序例:#include <graphics・h>^include <stdlib. h> #includo <stdio. h>^include <conio. h> int main(void){/* request auto detection */int gdriver 二DETECT, gmode, errorcode;int xmax, ymax;/* iniliali/e graphics and 1ocal variables */ initgraph(&gdriver, &gmode,"”):/* read result of initialization */cri^orcodc = graphrcsult ();/* an error occurred */if (errorcode != grOk){prin订("Graphics error: %s\n", grapherrormsg(errorcode));printf("Press any key to halt:"); getch ();exi t (1);setcolor (getmcixcolor ());xmax = getmeixx ();ymeix 二getmtixy ();/* draw a diagonal line */ line(0, 0, xmax, ymax);/* clean up */ getchO ; closegraph ();return 0;}函数名:rectangle功能:画一个矩形)\] 法:void far rectangle(int left, int top, int right, int bottom);函数名:sctbkcolor功能:用调色板设置当前背景颜色用法:void far setbkcolor(int color): 程序例:ttinclude <graphics. h>tfinclude <stdlib. h>ttinclude <stdio. h>ttinclude <conio. h>int main(void){/* select a driver and mode that supports *//* multiple background colors・*/int gdrivcr 二EGA, gmodc = EGAHI, errorcode; int bkcol, maxcolor, x, y;char msg[80];/* initialize graphics and local variables */ initgraph(&gdriver,&gmode,"”);/* read result of initialization */ errorcode = graphresult();if (errorcode != grOk) /* an e门occurred */prinlf ("Graphics error: %s\n/z, grapherrormsg (errorcode)); printf("Press any key to halt/);getch0 ;exit(1) ; /* terminate with an error code */ }/* maximum color index supported */ maxcolor = getmtixcolor ();/* for centering text messages */seitextjustify(CENTER TEXT, CENTER TEXT);x 二getmaxxO / 2;y = getmaxyO / 2;/* loop through the available colors */for (bkcol~0; bkcol<=maxcolor; bkcol++){/* c l ear the screen */cleardevice();/* select a new background color */ sctbkcolor(bkcol);/* output a messsage */if (bkcol == WHITE)setcolor(EGA_BLUE):sprintf (msg, ''Background color: bkcol);outtextxy (x, y, msg);getch ();}/* clean up */closcgraphO ;return 0;}函数名:setcolor功能:设置当前画线颜色用法:void far setcolor(int color);程序例:ttinclude <graphics. h>^include <stdlib. h>ftinclude <stdio.h>#includc <conio.h>int m3in(void){/* select a driver and mode that supports *//* multiple drawing colors・*/int gdriver = EGA, gmode = EGAI11, errorcode;int color, maxcolor, x, y;char msg [80];/* initialize graphics and local variables */ initgraph(&gdrivcr, &gmode,;/* read result of initialization */errorcode = graphresult();if (errorcode != grOk) /* an error occurred */{printf (''Graphics error: %s\n", grapherrormsg (errorcode)); printf("Press any key to halt:,z);gctchO ;exit(1); /* terminate with an error code */}/* maximum color index supported */ mtixcolor 二getmtixcolor ();/* for centering text messages */settextjustify(CENTER_TEXT, CENTER_TEXT);x = getmaxxO / 2;y = getmaxyO / 2;/* loop through the available colors */for (color=i; color<-maxcolor; color++){/* clear the screen */cleardevice();/* select a new background color */ setcolor(color);/* output a messsage */sprintf (msg, "Color: color): outtextxy(x, y, msg); getch ();}/* clean up */ closcgraph ();return 0;}函数名:setfillstyle功能:设登填充模式和颜色用法:void far setfi 1 lstyle(int pattern, int color); 程序例:^include <graphics. h> 廿include <stdlib. h> ^include〈string. h> ^include <stdio.h> #inelude <conio. h>/* the names of the fill styles supported */ char *fname[] = { "EMPTY_FILL","SOLID FILL","LINE FII丄","LTSLASH FILI/;"SLASII_F1LL", "BKSLASII_FILL","LTBKSLASH_FILL","HATCH FILL","XHATCH_FILL","INTERLEAVE_FILL","WIDE DOT FILL","CLOSE DOT FILI/;"USER FILL" int main(void)/* request auto detection */int gdriver = DETECT, gmode, errorcode;int style, midx, midy;char stylestr[40];/* initialize graphics and 1ocal variables */ initgraph(&gdriver, &gmode, ");/* read result of initialization */errorcodc = graphresult();if (errorcode != grOk) /* an error occurred */{printf("Graphics error: %s\n〃,grapherrormsg(errorcode)); printf("Press any key to halt/):getchO ;exi t (1) ; /* term in ate with an error code */}midx = getmtixx () / 2;midy = getmtixy () / 2;for (style = EMPTY_FILL; style < USER一FILL; style++){/* select the fill style */setfillstyle(style, getmaxcolor());/* convert style into a string */strepy(stylestr, fname[style]);/* fill a bar */bar 3d (0, 0, midx-10, midy, 0, 0);/* output a message */outtextxy (midx, midy, stylestr);/* wait for a key */getch ();cleardevice();}/* clean up */getchO ;closegraph();return 0;函数名:set linestyle功能:设置当前画线宽度和类型用法:void far setlinestyle(int linestype, unsigncd upattern); 程序例:#include <graphics・ h>#include <stdlib. h> #include <string・ h>^include <stdio>h>ttinclude <conio. h> /* the names of the line styles supported */ char amc [] = {,,SOL1D_L1NE,\,,DOTTED_LINE,,I"CENTER LTNE\"DASHED_LINE","USERBnjLINE"};int main(void){/* request auto detection */int gdriver = DETECT, gmode, errorcode;int style, midx, midy, userpat;char stylestr[40];/* initialize graphics and local variables */initgraph(&gdrivg &gmodc,"”);/* read result of initialization */errorcode 二graphrcsult():if (errorcode != grOk) /* an error occurred */{printf("Graphics error: grapherrormsg(errorcode));printf(”Press any key to halt:");getchO ;exit(1); /* terminate with an error code */midx = getmaxx () / 2;midy = getmaxy () / 2;/* a user defined line pattern *//* binary: "0000000000000001" */userpat = 1;for (style=SOLTD LTNE; style<=USERBTT LTNE; style++){/* select the line style */setlinestyle(style, userpat, 1);/* convert style into a string */strcpy(stylestr, InameEstyle]);/* draw a line */linc(0, 0, midx-10, midy);/* draw a rectanglc */rectanglc(0, 0, getmaxx (), getmaxy ());/* output a message */outtextxy (midx, midy, stylestr);/* wait for a key */getchO ;cleardevice0 ;}/* clean up */closegraph();return 0;。

C语言常用的库函数表

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语言标准库函数大全

C语言标准库函数大全
file://F:\DOCUME~1\lichao\LOCALS~1\Te 2 of 22
相册
BOOK photo 自己做的
Expert
anjou jeffreyzhao Ricktroy shenfx 吕震宇 随心所欲 小寒
Friends
Hack Site
Hack a day Hack And Slash Hack Canada
2009-4-3
目录函数,所在函数库为dir.h、dos.h int chdir(char *path) 使指定的目录path(如:"C:\\WPS")变成当前的工 作目录,成功返回0 int findfirst(char *pathname,struct ffblk *ffblk,int attrib) 查找指定的文件,成功返回0 pathname为指定的目录名和文件名,如"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);

(完整word版)C语言常用的库函数表

(完整word版)C语言常用的库函数表

附录C C语言常用的库函数
库函数并不是C语言的一部分,它是由编译系统根据一般用户的需要编制并提供给用户使用的一组程序。

每一种C编译系统都提供了一批库函数,不同的编译系统所提供的库函数的数目和函数名以及函数功能是不完全相同的。

ANSI C标准提出了一批建议提供的标准库函数。

它包括了目前多数C编译系统所提供的库函数,但也有一些是某些C编译系统未曾实现的。

考虑到通用性,本附录列出ANSI C建议的常用库函数。

由于C库函数的种类和数目很多,例如还有屏幕和图形函数、时间日期函数、与系统有关的函数等,每一类函数又包括各种功能的函数,限于篇幅,本附录不能全部介绍,只从教学需要的角度列出最基本的。

读者在编写C程序时可根据需要,查阅有关系统的函数使用手册。

1.数学函数
使用数学函数时,应该在源文件中使用预编译命令:
2.字符函数
在使用字符函数时,应该在源文件中使用预编译命令:
3.字符串函数
使用字符串中函数时,应该在源文件中使用预编译命令:
4.输入输出函数
在使用输入输出函数时,应该在源文件中使用预编译命令:
5.动态存储分配函数
在使用动态存储分配函数时,应该在源文件中使用预编译命令:
6.其他函数
有些函数由于不便归入某一类,所以单独列出。

使用这些函数时,应该在源文件中使用预编译命令:。

C语言的常用库函数

C语言的常用库函数
博客园 用户登录 代码改变世界 密码登录 短信登录 忘记登录用户名 忘记密码 记住我 登录 第三方登录/注册 没有账户, 立即注册来自C语 言 的 常 用 库 函 数
标准定义:<stddef.h>:包含了标准库的常用定义,自动包含于每一个标准头文件,定义类型size_t, ptrdiff_t, wchar_t。 错误信息<error.h>: 标准输入输出库:<stdio.h>,scanf,printf,fopen,fclose,fgetc,fputc,getc,putc,gets,puts,fprintf,fscanf,fread,fwrite等。 数学函数库:<math.h>,sin,cos,tan,asin,acos,atan, sinh,cosh,tanh(双曲函数),exp,log等等。 字符处理函数库:<ctype.h>,isalpha, isdigit, isupper, isprint(可打印字符),tolower,toupper等等。 字符串函数库:<string.h>,存储区操作(memcpy,memcmp,memmove,memset),strcpy,strcat,strcmp,strlen等等。 功能函数:<stdlib.h>,rand, calloc, malloc,free,与环境交互(system),二分查找(bsearch),快排(qsort),终止函数(exit)等。

C语言常用的库函数表

C语言常用的库函数表

附录C C语言常用的库函数
库函数并不是C语言的一部分,它是由编译系统根据一般用户的需要编制并提供给用户使用的一组程序。

每一种C编译系统都提供了一批库函数,不同的编译系统所提供的库函数的数目和函数名以及函数功能是不完全相同的。

ANSIC标准提出了一批建议提供的标准库函数。

它包括了目前多数C编译系统所提供的库函数,但也有一些是某些C编译系统未曾实现的。

考虑到通用性,本附录列出ANSIC建议的常用库函数。

由于C库函数的种类和数目很多,例如还有屏幕和图形函数、时间日期函数、与系统有关的函数等,每一类函数又包括各种功能的函数,限于篇幅,本附录不能全部介绍,只从教学需要的角度列出最基本的。

读者在编写C程序时可根据需要,查阅有关系统的函数使用手册。

1.数学函数
使用数学函数时,应该在源文件中使用预编译命令:
2.字符函数
在使用字符函数时,应该在源文件中使用预编译命令:
3.字符串函数
使用字符串中函数时,应该在源文件中使用预编译命令:
4.输入输出函数
在使用输入输出函数时,应该在源文件中使用预编译命令:
5.动态存储分配函数
在使用动态存储分配函数时,应该在源文件中使用预编译命令:
6.其他函数
有些函数由于不便归入某一类,所以单独列出。

使用这些函数时,应该在源文件中使用预编译命令:。

C语言常用的库函数表

C语言常用的库函数表

附录C C语言常用的库函数
库函数并不是C语言的一部分,它是由编译系统根据一般用户的需要编制并提供给用户使用的一组程序。

每一种C编译系统都提供了一批库函数,不同的编译系统所提供的库函数的数目和函数名以及函数功能是不完全相同的。

ANSIC标准提出了一批建议提供的标准库函数。

它包括了目前多数C编译系统所提供的库函数,但也有一些是某些C编译系统未曾实现的。

考虑到通用性,本附录列出ANSIC建议的常用库函数。

由于C库函数的种类和数目很多,例如还有屏幕和图形函数、时间日期函数、与系统有关的函数等,每一类函数又包括各种功能的函数,限于篇幅,本附录不能全部介绍,只从教学需要的角度列出最基本的。

读者在编写C程序时可根据需要,查阅有关系统的函数使用手册。

1.数学函数
使用数学函数时,应该在源文件中使用预编译命令:
2.字符函数
在使用字符函数时,应该在源文件中使用预编译命令:
3.字符串函数
使用字符串中函数时,应该在源文件中使用预编译命令:
4.输入输出函数
在使用输入输出函数时,应该在源文件中使用预编译命令:
5.动态存储分配函数
在使用动态存储分配函数时,应该在源文件中使用预编译命令:
6.其他函数
有些函数由于不便归入某一类,所以单独列出。

使用这些函数时,应该在源文件中使用预编译命令:。

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

C++程序设计常用库函数木文主要涉及两类库函数,运行期库(run-time library)和C++标准库。

下而简单介绍这些库的使用要点。

运行期库是用C语言实现的基础程序库,其它库都以此为基础。

MSDN将运行期库按功能划分,如表B-1 所示。

来自MSDN Library Visual Studio 6.0Visual C++ DocumcntationUsing Visual C++Visual C++ Programmers^ GuideRun-Time Library ReferenceRun-Time Routines by Category分类功能相关头文件(不完全)可变参数用于定义可变参数的函数<stdarg.h>缓冲区管理按字节管理内存缓冲区<string • hxmemory • h>按字节分类多字节字符分类,与当前多字节代码页相关<ctype.h>按字符分类对单字节字符、宽字符、多字节字符进行分类。

比较常用,如isalpha, isprinto<ctype•h>数据转换一种数据转换到另一种,例如字符串到int 或double,或反之。

冇很多转换既冇函数实现,也有宏实现,可选择。

<math. hxstdli b • h>调试程序debug调试,函数库中有专门的调试版本,支持单步执行、断言、错误检测、异常,跟踪堆空间分配,避免内存港露,以及调试信息报告等。

<assert. hxcrtdbg • h>目录控制读取或改变目录,创建、删除目录等,也包括使用环境路径來搜索文件<stdlib • hxdirec t • h>错误处理包括断言、检测10错误、清除错误标记、判断低级10的文件尾eof等。

<assert. hxcrtdbg. hxstdio. h> <io•h>异常处理程序程序终止处理(terminate) 意外处理(unexpected)<eh >h>文件处理对磁盘文件的建立、删除、改名、文件访问许可等操作。

<stdio • hxio. hxsys/locking • h> <errno.h>浮点数支持专门针对浮点数的计算,如指数、对数、三角函数、双曲函数等,也包括错误检测,如溢出。

<math. h> <stdlib. hxf loat. h>输入输岀从文件或设备中读入数据或写出数据。

文件10要区分文本模式和二进制模式。

10分为以下三类:1、流式工0,将数据作为字符或字节序列,有缓冲。

2、低级10,直接调用操作系统,无缓冲。

<stdio . hxio. hxconio • h>3、控制台与端口10,对键盘和字符显示器的直接读写,对10设备,如打印机、串行口的直接读写。

国际化适应不同语言,与地域locale相关程序、宽字符、多字节字符、通用文本等等。

<locale • h> <wchar • hxstdio. h> <string. hxctype . hxmbstring. h>内存分配动态分配、回收内存,如malloc> free 等函数。

<stdlib • h> <malloc. hXnew.h>进程控制与坏境控制进程的启动、停止与管理,也包括线程的启停。

操作系统坏境信息的读取与改变。

<process-h> <stdlib.h>排序与查找对任意类型数组进行排序,折半査找与线性查找。

<stdlib•h> <search.h>字符串管理对以NULL结尾的各种字符串进行操作<string • hxmemory • hXwchar • h><mbstring.h〉系统调用用來查找文件的3个函数<io.h>时间管理获取当前系统日期时间、转换、调整等操作<time ・ hxsys/timeb. h>注1M S D N按以上19类功能对运行期库分组。

注2同一个函数可能出现在不同功能分组中,也可能出现在不同的头文件中。

注3运行期库是纯C语言实现,不包含C++的内容(没有重载、形参缺省值、引用、模板等)。

表B-2运行期库头文件头文件名功能C++包装头文件名<assert-h> 断言设置<cassert><ctype•h>字符分类<cctype><errno.h> 由库函数执行,检测错课代码<cerrno><float.h> 浮点数计算<cfloat><iso64 6•h>ISO 64 6字符集处理<ciso646><limits•h>检测整数类型的性质<climits><locale•h>不冋地域文字适应性<clocale><math•h>公共数学计算<cmath><setjmp•h>执行非本地goto语句<csetjmp><signal•h>控制各种异常条件<csignal><stdarg•h>可变参数的函数<cstdarg><stddef•h>多种有用的类型(typedef)和宏的定义<cstddef〉<stdio.h> 输入和输出<cstdio><stdlib•h>多种操作函数<cstdlib><string.h> 多种字符串的处理<cstring><time.h> 系统时间处理<ctime><wchar.h> 宽字符流,以及待殊字符串处理<cwchar><wctype•h>宽字符分类<cwctype>注1,表中列出的18个头文件是作为C++标准库,而运行期库的头文件还有许多未列入。

注2, C++标准库的头文件大多不含.h后缀。

注3,左边头文件内容被包装到C++标准的命名空间std中。

例如,vcasscrt>文件大致如下:namespace std {#include <assert.h> };表B-3标准C++库头文件头文件名功能<algorithm> 算法,提供了70多个模板函数,通过迭代器作用于各种容器,实现排序、查找、集合运算等算法。

<bitset〉位集,一个模板类和两个支持模板函数。

<complex> 复数,一个模板类和若干模板函数<deque> 双端队列容器,1个模板类和3个支持模板<exception> 定义异常基类exception,若T模板函数,类似<eh.h>中的定义<fstream> 支持磁盘文件的iostream操作<functional> 提供模板类以构建函数对象,类似于函数指针,供各种容器和算法使用<iomanip> 定义带参格式控制符,用于控制输出格式<ios> 定义了basic ios类,作为iostream的基类<iosfwd> 定义了对几种模板类的正向引用,供iostream使用<ios 定义了儿个对象,对标准流进行读写,如cin, cout, cerr, clog等。

<iso64 6•h>对ISO646字符集的处理<istream> 输入流,定义了模板类basic istream和basic iostream<iterator> 迭代器,用于访问容器中的元素,也用于调用各种算法。

<limits> 定义了模板类numeric limits,其中规范了算术计算中各种类型的值范围<list> 列表,基于双向链表的一种容器。

<locale> 提供一组模板类和函数,封装和管理地域locale信息,以支持多国文字习惯用法。

<map> 映射容器,捉供了一个映射map和一个多射multimap。

<memory> 一个类,一个运算符和若干函数用于请求分配与回收对象<numeric> 提供若干模板函数,用于数值计算,如求和、求乘积、求部分和等。

<ostream〉输出流,定义了basic osrteam,还冇格式控制符<queue> 队列容器,包含一个队列和一个优先级队列。

<set> 集合容器,包含一个集合set和一个多集multiseto<sstream> 支持对数组对象的iostream操作,支持与basic string的转换<stack> 堆栈容器,stack模板类<stdexcept> 标准异常类型,以exception为基类,定义了一组派生类來描述各种异常类型。

<streambuf> 定义了basic streambuf模板类,作为一组iostream类的基础<string> 定义了basic_string模板类,一种容器,其中用typedef定义了string类型。

<strstream> 支持对字符数组对象的iostream操作,支持与C字符串的转换ility〉定义了对偶pair,作为映射和多射的基木元素<valarray> 定义了vmlacay模板类,支持可变长的数组<vector> 向量容器,1个模板类和3个支持模板注1,表中列出了32个头文件,加上前而18个包装头文件,共50个头文件,组成C++标准库。

注2,还有儿个头文件未列入文档,<hash_map>x vhash_sct>、<ncw>,它们没有被完整实现。

注3,上表中包含了10个新版木的10流头文件,而老版木只冇8个头文件,对应关系如卜•表。

表B-4 10流的新旧头文件对比【口版本IO流头文件新版本IO流头文件<ios•h><ios><streamb.h> <streambuf><iomanip.h> <iomanip><istream.h〉<istream〉<ostream>h> <ostream><iostream.h> <iostream><fstream.h> <fstream><strstrea.h> <strstream><iosfwd><sstream>注I,同一行上的两个头文件具有大致相同的功能,但内部具体类型有差别。

相关文档
最新文档