《C++与C语言头文件不同.docx》由会员分享,可在线阅读,更多相关《C++与C语言头文件不同.docx(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C/C+头文件一览C、传统C+include include include include include include #include include include #include /include include include include include ttinclude include 设定插入点字符处理定义错误码浮点数处理文件输入/输出参数化输入/输出数据流输入/输出定义各种数据类型最值常量定义本地化函数定义数学函数定义输入/输出函数定义杂项函数及内存分配函数字符串处理基于数组的输入/输出定义关于时间的函数寛字符处理及输入,输出宽字符分类IIIIIIIIIIIIIII
2、IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII标准C+(同上的不再注释)/STL通用算法/STL位集容器/复数类/STL双端队列容器异常处理类/STL定义运算函数(代替运算符)include include include include include include include include #include include include include include include include include include include include /STL线性列表容器/STL映射容器inclu
3、de #include include ttinclude include include include #include #include #include include include include #include include include using namespace std;基本输入/输出支持输入/输出系统使用的前置声明基本输入流基本输出流/STL队列容器/STL集合容器基于字符串的流/STL堆栈容器标准异常类底层输入/输出支持字符串类/STL通用模板类/STL动态数组容器/C99增加include include include #include include in
4、clude c头文件大全复数处理浮点环境整数格式转换 布尔环境 整型环境通用类型数学宏分类函数,所在函数库为ctype.hint isalpha(int ch)若 ch 是字母(A-ZJa-z)返回非 0 值,否则返回 0int isalnum(int ch) 若 ch 是字母(A-ZJa-z)或数字(09)返回非值,否则返回Oint isasciifint ch)若ch是字符(ASCII码中的0-127)返回非0值,否则返回0int iscntrl(int ch)若ch是作废字符(0x7F)或普通控制字符(OxOO-OxlF)返回非O值,否则返回int isdigit(int ch)若ch是
5、数字(0-9)返回非值,否则返回int isgraph(int ch)若ch是可打印字符(不含空格)(0X21-0X7E)返回非0值,否则返回Oint islower(int ch)若Ch是小写字母(a)返回非O值,否则返回Oint isprint(int ch)若ch是可打印字符(含空格乂0x20-0x7E)返回非0值,否则返回Oint ispunct(int ch)若ch是标点字符(OxOO-OxlF)返回非值,否则返回Oint isspace(int ch)若ch是空格(一),水平制表符(),回车符(行,走纸换行(f),垂直制表符(W),换行符(n)返回非O值,否则返回0int isup
6、per(int ch)若Ch是大写字母(貝-Z)返回非0值,否则返回int isxdigit(int ch)若ch是16进制数(0-9,A-F,才一,f)返回非0值,否则返回int tolower(intch)若ch是大写字母(A-Z)返回相应的小写字母(a-z)int toupper(int ch)若ch是小写字母(a-z)返回相应的大写字母(A-Z)数学函数,所在函数库为 math.h、stdlib.h、string.h, float.hintabs(int i)返冋整型参数i的绝对值doublecabs(struct complex znum)返回复数znum的绝对值doublefabs
7、(double x)返回双精度参数x的绝对值longlabs(long n)返冋K整型参数n的绝对值double exp(double x)返回指数函数ex的值double frexp(double valuejnt *eptr)返回value=x*2n中x的值,n存贮在eptr中double ldexp(double valuejnt exp);返回value*2exp的值double log(double x)返回!ogex的值double Iogl0(double x)返回!oglOx的值double pow(double x.double y)返回xy的值double powlO(in
8、t p)返回10p的值double sqrt(double x)返回+ Jx的值double acos(double x)返回X的反余弦cos-l(x)值,X为弧度double asin(double x)返回X的反正弦sin-l(x)值,X为弧度double atan(double x)返回x的反正切tan-l(x)值,x为弧度double atan2(double y,double x)返回y/x的反正切tan-l(x)值,y的x为弧度double cos(double x)返回X的余弦cos(x)值,X为弧度double sin(double x)返回x的正弦sin(x)值,x为弧度do
9、uble 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的最大整数初始化随机数发
10、生器void srand(unsigned seed)intrand()产生一个随机数并返回这个数double poly(double xjnt nzdouble c口)从参数产生一个多项式 double modf(double value,double *iptr)将双精度数 value 分解成尾数和阶返回x/y的余数double fmod(double x,double y)double frexp(double value,int *eptr)将双精度数value分成尾数和阶double atof(char *nptr)double atoi(char *nptr)double atol
11、(char *nptr)将字符串nptr转换成浮点数并返回这个浮点数将字符串nptr转换成整数并返回这个整数将字符串nptr转换成长整数并返回这个整数char*ecvt(double value,int ndigitjnt *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char*fcvt(double value,int ndigitjnt *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *gcvt(double value,int ndigit,char *buf)将数value转换成字符串并存于buf中,并返回buf的
12、指针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转换成双精度数,并返回
13、这个数,错误返回intatoi(char *nptr)将字符串nptr转换成整型数,并返回这个数,错误返回O long atoKchar *nptr)将字符串nptr转换成长整型数,并返回这个数,错误返回O double strtodfchar *str;char *endptr)将字符串str转换成双精度数,并返回这个数, long strtol(char *str,char *endptr,int base)将字符串 str 转换成长整型数,并返回这个数,intmatherr(struct exception *e)用户修改数学错误返回信息函数(没有必要使用)double_matherr(
14、_mexcep why,char *fun,double *arglp,double *arg2p,double retval)用户修改数学错误返回信息函数(没有必要使用)unsigned int _clear87()清除浮点状态字并返回原来的浮点状态void_f preset()重新初使化浮点数学程序包unsigned int _status87()返回浮点状态字目录函数,所在函数库为dir.h、dos.hint chdir(char *path)使指定的目录path (如:C:WPS)变成当前的工作目录,成 功返回int findfirst(char *pathname,struct ff
15、blk *ffblk,int attrib)查找指定的文件,成功返回pathname为指定的目录名和文件名,如C:WPSTXTffblk为指定的保存文件信息的个结构,定义如下:struct ffblkchar ff_reserved21; /*DOS 保留字*/ Ichar ff_attrib;intint ff_fdate;long ff_fsize;char ff_name13;/文件属性/ I/文件时间/ I/文件日期/ I/*文件长度/ I/文件名/Iattrib为文件属性,由以下字符代表| FA_RDONLY只读文件| FA_LABEL卷标号| FA_HIDDEN 隐藏文件 | FA
16、一DIREC 目录 |I FA_SYSTEM 系统文件 | FA_ARCH 档案 |例:struct ffblkff;findfirst(*.wps,&ff,FA_RDONLY);int findnext(struct ffblk *ffblk) 取匹配 finddirst 的文件,成功返回 void fumerge(char *path,char *drive,char *diochar *name,char *ext)此函数通过盘符drive(C:、A:等),路径dir(TC、BCLIB等),文件名name(TC、WPS等),扩展名ext(.EXE、.COM等)组成一个文件名存与path中
17、.int fnsplit(char *path,char *drive,char *dir;char *name,char *ext)此函数将文件名path分解成盘符drive:、A:等),路径dir(TC、BCLIB等),文件名name(TC、WPS等),扩展名ext(.EXE、.COM等),并分别存入相应的变量中.int getcurdir(int drive,char *direc)此函数返回指定驱动器的当前工作目录名称drive指定的驱动器(0=当前,1=A,2=B,34等)direc保存指定驱动器当前工作路径的变量成功返回0char *getcwd(char *buf,iint n)
18、此函数取当前工作R录并存入buf)直到n个字节长为为止.错误返回NULLint getdisk()取当前正在使用的驱动器,返回一个整数(0二A,1=B,2=C等)int setdisk(int drive)设置要使用的驱动器 drive(0=A,l=B,2=C 等),返回可使用驱动器总数int mkdir(char *pathname)建立一个新的目录 pathname,成功返回 int rmdir(char *pathname) 删除一个目录 pathname,成功返回 char *mktemp(char *template)构造个当前目录上没有的文件名并存于template中char *s
19、earchpath(char pathname)利用 MSDOS 找岀文件 filename 所在路径,此函数使用DOS的PATH变量,未找到文件返回NULL进程函数,所在函数库为stdlib.h、process.hvoid abort()此函数通过调用具有出口代码3的exit写个终止信息于stderr,并异常终止程序。无返回值intexec装入和运行其它程序int execl( char *pathnamezchar *argO,char *argl,.,char *argnzNULL)int execle( char *pathnamezchar *argO,char *argl/./ch
20、ar *argn,NULL/char *envp)intexeclp( char *pathname,char *argO,char *argl,.,NULL)intexeclpe(char *pathnamezchar *argO,char *argl,NULL,char *envp)intexecv( char *pathname,char *argv)intexecve( char *pathname,char *argv,char *envp)intexecvp( char *pathname,char *argv)int execvpe(char *pathname,char *ar
21、gv,char *envp)exec函数族装入并运行程序pathname,并将参数arg0(argl,arg2,argv 口,envp )传递给子程序,出错返回1在exec函数族中,后缀I、v、p、e添加到exec后,所指定的函数将具有某种操作能力有后缀p时,函数可以利用DOS的PATH变量查找子程序文件。I时,函数中被传递的参数个数固定。v时,函数中被传递的参数个数不固定。e时,函数传递指定参数envp,允许改变子进程的环境,无后缀e时,子进程使用当前程序的环境。void _exit(int status)终止当前程序,但不清理现场 void exit(int status)终止当前程序,关
22、闭所有文件,写缓冲区的输出(等待输出),并调用任何寄存器的出口函数,无返回值intspawn超仃子程序int spawnl( int mode,char * pathname,char *argO,char *argl,.,char *argn,NULL)int spawnle( int mode,char * pathname,char *argO,char *argl,.,char *argn,NULL,char *envp)int spawnlp( int mode,char *pathname,char *argO,char *argl,.,char *argn,NULL)int sp
23、awnlpe(int mode,char *pathname,char *argO,char *argl,./char *argn,NULL,char *envp)int spawnv( int mode,char * pathname,char *argv)intspawnve( int mode,char *pathname,char *argv,char *envp)int spawnvp( int mode,char *pathname,char *argv)int spawnvpe(int mode,char *pathname,char *argv,char *envp)spawn
24、函数族在mode模式下运行子程序pathname,并将参数arg0(argl,arg2,argv ,envp)传递给子程序.出错返回1mode为运行模式mode为P_WAIT表示在子程序运行完后返回本程序P_NOWAI!表示在子程序运行时同时运行本程序(不可用)P_OVERLAY表示在本程序退出后运行子程序在spawn函数族中,后缀I、v、p、e添加至spawn后,所指定的函数将具有某种操作能力有后缀p时,函数利用DOS的PATH查找子程序文件!时,函数传递的参数个数固定.v时,函数传递的参数个数不固定.e时,指定参数envp可以传递给子程序,允许改变子程序运行环境.当无后缀e时,子程序使用本
25、程序的环境.int system(char *command)将 MSDOS 命令 command 专递给 DOS 执行转换子程序,函数库为 math.h、stdlib.h、ctype.h、float.hchar*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)
26、将数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(ch
27、ar*nptr)将字符串nptr转换成双精度数,并返回这个数,错误返回O int atoi(char *nptr)将字符串nptr转换成整型数,并返回这个数,错误返回O long atol(char *nptr)将字符串nptr转换成长整型数,并返回这个数,错误返回0 double strtod(char *str;char *endptr)将字符串str转换成双精度数,并返回这个数, long strtol(char *str,char *endptr,int base)将字符串 str 转换成长整型数,并返回这个数,int toascii(int c) 返回 c 相应的 ASCIIint
28、tolower(int ch)若ch是大写字母(A-Z)返回相应的小写字母(匕,)int _tolower(int ch)返回ch相应的小写字母(az)int toupper(int ch)若ch是小写字母(az)返回相应的大写字母(WZ)int _toupper(int ch)返回ch相应的大写字母(7V-Z)诊断函数,所在函数库为assert.h、math.hvoid assert(int test) 个扩展成if语句那样的宏,如果test测试失败, 就显示个信息并异常终止程序,无返回值void perror(char *string)本函数将显示最近一次的错误信息,格式如下:字符串str
29、ing:错误信息char *strerror(char *str)本函数返回最近一次的错误信息,格式如下:字符串str:错误信息int matherr(struct exception *e)用户修改数学错误返回信息函数(没有必要使用)double _matherr(_mexcep why,char *fun,double *arglp,double *arg2p,double retval)用户修改数学错误返回信息函数(没有必要使用)输入输出子程序,函数库为 io.h conio.h stat.h、dos.h stdio.h、signal.hint kbhit()本函数返回最近所敲的按键in
30、t fgetchar()从控制台(键盘)读个字符,显示在屏幕上int getch()从控制台(键盘)读个字符,不显示在屏幕上int putch()向控制台(键盘)写个字符int getchar()从控制台(键盘)读个字符,显示在屏幕hint putchar()向控制台(键盘)写个字符int getche()从控制台(键盘)读个字符,显示在屏幕上int ungetch(int c)把字符c退回给控制台(键盘)char *cgets(char *string)从控制台(键盘)读入字符串存于string中intscanf(char formatargument)从控制台读入一个字符串,分别对各个参数
31、进行赋值,使用BIOS进行输出intvscanf(char *format,Valist param)从控制台读入一个字符串,分别对各个参数进行赋值,使用BIOS进行输出,参数从Valist param中取得intcscanf(char *formatargument)从控制台读入一个字符串,分别对各个参数进行赋值,直接对控制台作操作,比如显示器在显示时字符时即为直接写频方式显示int sscanf(char *string,char formatargument,)通过字符串 string,分别对各个参数进行赋值int vsscanf(char *stringzchar format,Vli
32、st param)通过字符串 string,分别对各个参数进行赋值,参数从Vlist param中取得int puts(char *string)发关个字符串string给控制台(显示器),使用BIOS进行输出void cputs(char *string)发送个字符串string给控制台(显示器),直接对控制台作操作,比如显示器即为直接写频方式显示int printf(char *format,argument,)发送格式化字符串输出给控制台(显示器)使用BIOS进行输出int vprintf(char *format/Valist param)发送格式化字符串输出给控制台(显示器)使用BI
33、OS进行输出,参数从Valist param中取得int cprintf(char *format,argument,)发送格式化字符串输出给控制台(显示器),直接对控制台作操作,比如显示器即为直接写频方式显示int vcprintf(char *format,Valist param)发送格式化字符串输出给控制台(显示器),直接对控制台作操作,比如显示器即为直接写频方式显示,参数从Valist param中取得int sprintf(char *string,char *format,argument,.)将字符串string的内容重新写为格式化后的字符串int vsprintf(char
34、*string,char *format,Valist param)将字符串string的内容重新写为格式化后的字符串,参数从Valist param中取得intrename(char *oldname,char *newname)将文件 oldname 的名称改为 newnameint ioctl(int handle,int cmd,int *argdx,int arg ex)本函数是用来控制输入/输出设备的,请见下表:I cmd值I功能取出设备信息 设置设备信息 把argcx字节读入由argdx所指的地址 在argdx所指的地址写argcx字节 除把handle当作设备号(0二当前,1二
35、A,等)之外,均和cmd=2时样!除把handle当作设备号(0二当前,1二A,等)之外,均和cmd=3时样!取输入状态 取输出状态测试可换性;只对于DOS 3.x11置分享冲突的重算计数;只对DOS 3.xintintgsignal(int sig)执行软件信号(没必要使用)(*ssignal(int sig,int(*action)()()执行软件信号(没必要使用)int_open(char *pathname,int access)为读或写打开个文件,按后按access来确定是读文件还是写文件,access值见下表I access值 |意义| O_RDONLY! 读文件I O_WRONL
36、Y! 写文件I O_RDWRI即读也写I O_NOINHERIT !若文件没有传递给子程序,则被包含I O_DENYALL|只允许当前处理必须存取的文件I O_DENYWRITE !只允许从任何其它打开的文件读I O_DENYREAD !只允许从任何其它打开的文件写I O_DENYNONE !允许其它共享打开的文件int open(char *pathname,int access,int permiss)为读或写打开个文件,按后按access来确定是读文件还是写文件,access值见下表access值|意义O_RDONLY !读文件O_WRONLY !写文件O_RDWR |即读也写O_NDE
37、LAY !没有使用;对UNIX系统兼容O_APPEND !即读也写,但每次写总是在文件尾添加O_CREAT !若文件存在,此标志无用;若不存在,建新文件|O.TRUNC !若文件存在,则长度被截为0,属性不变O_EXCL !未用;对UNIX系统兼容O_BINARY !此标志可显示地给出以二进制方式打开文件|I O_TEXT!此标志可用于显示地给岀以文本方式打开文件|permiss为文件属性,可为以下值:S_IWRITE允许写 SREAD允许读 SREAD|SWRITE允许读、写int creat(char *filename,int permiss) 建立一个新文件 filename,并设定读
38、写性。permiss为文件读写性,可以为以下值SJWRITE允许写 SREAD允许读 S_IREAD | SWRITE允许读、写int _creat(char *filename,int attrib) 建立一个新文件 filename,并设定文件属性。attrib为文件属性,可以为以下值FA_RDONLY 只读 FA_HIDDEN 隐藏 FA_SYSTEM 系统int creatnew(char *filenamt,int attrib)建立一个新文件 filename,并设定文件属性。attrib为文件属性,可以为以下值FA_RDONLY 只读 FA_HIDDEN 隐藏 FA_SYSTEM
39、 系统int creattemp(char *filenamt,int attrib)建立一个新文件 filename,并设定文件属性。attrib为文件属性,可以为以下值FA_RDONLY 只读 FA_HIDDEN 隐藏 FA_SYSTEM 系统intread(int handle,void *buf,int nbyte)从文件号为 handle 的文件中读 nbyte 个字符存入buf中int _read(int handle,void *buf,int nbyte)从文件号为 handle 的文件中读 nbyte 个字符存入buf中,直接调用MSDOS进行操作.intwrite(int
40、handle,void *buf,int nbyte)将 buf 中的 nbyte 个字符写入文件号为handle的文件中int _write(int handle,void *buf,int nbyte)将 buf 中的 nbyte 个字符写入文件号为handle的文件中int dup(int handle)复制个文件处理指针handle,返回这个指针int dup2(int handle,int newhandle)复制个文件处理指针 handle 至 newhandleinteof(int handle)检查文件是否结束,结束返回1,否则返回Olong filelength(int ha
41、ndle)返回文件长度,handle 为文件号int setmode(int handle,unsigned mode)本函数用来设定文件号为handle的文件的打开方式int getftime(int handle,struct ftime *ftime)读取文件号为 handle 的文件的时间,并将文件时间存于ftime结构中,成功返回OJtime结构如下:I struct ftimeI (I unsigned ft_tsec:5; /秒/|I unsigned ft_min:6; /分/I unsigned ft_hour:5; /时/I unsigned ft_day:5; / 日 *
42、/I unsigned ft_month:4;/*月 */I unsigned ft_year:l; /年198/|1intsetftime(int handle,struct ftime *ftime)重写文件号为 handle 的文件时间,新时间在结构代ime中.成功返回.结构ftime如下:I struct ftimeI (I unsigned ft_tsec:5; /秒/|I unsigned ft_min:6; /分/I unsigned ft_hour:5; /时/I unsigned 代一day:5; /* H */I unsigned ft_month:4;/月/I unsig
43、ned ft_year:l; /年1980/|I long lseek(int handlejong offsetjnt fromwhere)本函数将文件号为 handle 的文件的指针移到fromwhere后的第offset个字节处.SEEK_SET文件开关SEEK_CUR当前位置SEEK_END文件尾long tell(int handle)本函数返回文件号为handle的文件指针,以字节表示intisatty(int handle)本函数用来取设备handle的类型int lock(int handlejong offsetjong length)对文件共享作封锁int unlock(int handlejong offsetjong length)打开对文件共享的封锁int close(int handle)关闭 handle 所表示的文件处理,handle 是从creat、createcreatnew、creattemp、dup dup2、_open open中的个处调用获得的文件处理成功返回。否则返
限制150内