C++的头文件和经典程序代码大全_第1页
C++的头文件和经典程序代码大全_第2页
C++的头文件和经典程序代码大全_第3页
C++的头文件和经典程序代码大全_第4页
C++的头文件和经典程序代码大全_第5页
已阅读5页,还剩161页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C/C++头文件览

C、传统C++

#include<assert.h>//设定插入点

使用断言

assert。宏是用于保证满足某个特定条件,用法是:

assert(表达式);

如果表达式的值为假,整个程序将退出,并输出一条错误信息。如果表达式的值为真则继续执行后面的语句。

使用这个宏前需要包含头文件assert.h

例如

#include<stdio.h>

#include<assert.h>

voidmain()

(

floata,b;

scan("%f%f",&a,&b);

assert(b!=0);

printf(H%f\nu,a/b);

)

以上的程序要计算A/B的值,因此要求b!=0,所以在程序中使用了assert。用于确保b!=0,如果b==0,则程序会退出。

#include<ctype.h>〃字符处理

isalnum判断一个字符是否是字符类的数字或者字母

isalpha判断一个字符是否是字母

isblank判断一个字符是空白字符(空格和水平制表符Tab)

iscntrl判断•个控制符(ascii码0-31之间的字符)

isdigit判断•个字符是否是字符类的数字

isgraph判断一个字符是否是可打印字符(ascii码33-126之间的字符)

islower判断一个字符是否是小写字母

isprint判断一个字符是否是包含空格在内的可打印字符(ascii码32-126之间的字符)

ispunct判断一个字符是否是除空格,字母,数字外的标点符号

isspace判断•个字符是空白字符(空格,换行符(\n),走纸符(\f),回车符(\r),垂直制表符(\v),水平制表符(\t))

isupper判断个字符是否是大写字母

isxdigit判断一个字符是否是个十六进制的数字

tolower将大些字符转换为小写

toupper将小写字符转换为大写

isalnum()函数的作用是判断一个字符是否是字符类的数字或者字母:

#include<stdio.h>

#include<ctype.h>

intmain(void)

if(isalnum('a'))

printf("lt'sTrue11);//显示It'sTrue

if(isalnum(4))

printf("lt'sTrue1*);//显示*,

if(isalnum('4'))

printf("lt'sTrue");//显示It'sTrue

return0;

}

isalpha()函数的作用是判断一个字符是否是字母:

#include<stdio.h>

#include<ctype.h>

intmain(void)

if(isalpha('a'))

printf("lt'sTrue");//显示It'sTrue

if(isalpha(4))

printfC'It'sTrue");//显示

if(isalpha(,4'))

printf("lt'sTrue");//显示"

return0;

)

isblank()函数的作用是判断一个字符是空白字符(空格和水平制表符Tab),isspace()函数和isblank()函数类似,但是还包含

空格,换行符(\n),走纸符(\f),回车符(\r),垂直制表符(\v),水平制表符(\t):

#include<stdio.h>

#include<ctype.h>

intmain(void)

if(isblank(''))//空格

printf("lt'sTrue");//显示It'sTrue

if(isblank(1\t,))//Tab

printf("lt'sTrue");//显示It'sTrue

if(isblankC\n'))//换行

printf("lt'sTrue*,);//显示M

if(isblank(,\r,))//回车

printf("lt'sTrue");/,/显示"

if(isspace(''))//空格

printf("lt'sTrue");」//显示It'sTrue

if(isspace('\t'))//Tab

printf("lt'sTrue");/」/显示It'sTrue

if(isspace(,\n'))//换彳了

printf("lt'sTrue");//显示It'sTrue

if(isspace(,\r'))//回车

printf("lt'sTrue");//显示It'sTrue

return0;

)

iscntrl。函数的作用是判断•个控制符(ascii码0-31之间的字符)

#include<stdio.h>

#include<ctype.h>

intmain(void)

(

if(isblank(''))//空格

printfC'It'sTrue'1);//显示"

if(isblank('\t'))//Tab

printf("lt'sTrue,1);//显示It'sTrue

if(isblank(,\n'))//换行

printf("lt'sTrue");//显示It'sTrue

if(isblank(,\r,))//回车

printf("lt'sTrue");//显示It'sTrue

return0;

}

isdigit()函数的作用是判断一个字符是否是字符类的数字:

#include<stdio.h>

#include<ctype.h>

intmain(void)

(

if(isdigit('4'))

printf("lt'sTrue1');//显示It'sTrue

if(isdigit(4))

printfC'It'sTrue'1);//显示"

if(isdigit('a,))

printf("lt'sTrue");//显示M

return0;

}

isgraph。函数的作用是判断一个字符是否是可打印字符(ascii码33-126之间的字符),isprint。函数功能和isgraph。函数类

似,区别是isprint。函数包含空格在内(ascii码32-126之间的字符):

#include<stdio.h>

#include<ctype.h>

intmain(void)

{

if(isgraph('a'))

printf("lt'sTrue'1);//显示It'sTrue

if(isgraph('.'))

printf("lt'sTrue");//显示It'sTrue

if(isgraph(''))//空格

printf("lt'sTrue");//显示"

if(isprint('a'))

printf("lt'sTrueM);//显示It'sTrue

if(isprint('.'))

printf("lt'sTrue'1);//显示It'sTrue

if(isprint(''))//空格

printf("lt'sTrue");//显示It'sTrue

return0;

}

islower()函数的作用是判断一个字符是否是小写字母,isupper()函数的作用是判断一个字符是否是大写字母:

#include<stdio.h>

#include<ctype.h>

intmain(void)

(

if(islower('a'))

printf("lt'sTrue**);//显示It'sTrue

if(islower('A'))

printf("lt'sTrue”);//显示"

if(isupper('a,))

printf("lt'sTrue**);//显示“

if(isupper('A'))

printf("lt'sTrue1*);//显示It'sTrue

return0;

)

ispunct()函数的作用是判断•个字符是否是除空格,字母,数字外的标点符号:

#include<stdio.h>

#include<ctype.h>

intmain(void)

(

if(ispunct('a'))

printf(Hlt'sTrue");//显示"

if(ispunct('.'))

printf("lt'sTrue**);//显示It'sTrue

if(ispunct('<'))

printf("lt'sTrue");//显示It'sTrue

return0;

)

isxdigit()函数的作用是判断一个字符是否是一个十六进制的数字:

#include<stdio.h>

#include<ctype.h>

intmain(void)

(

if(isxdigit('41))

printf("lt'sTrue");//显示It'sTrue

if(isxdigit(*xE'))

printf("lt'sTrue");//显示It'sTrue

if(isxdigit('xF))

printf("lt'sTrueM);//显示M

return0;

}

tolower。函数的作用是将大些字符转换为小写,toupper()函数的作用是将小写字符转换为大写:

#include<stdio.h>

#include<ctype.h>

intmain(void)

{

char

n=tolower(,A');

m=tolowerCa1);

i=toupper('a*);

j=toupperC?);

printf("%c%c%c%c",n,m,i,j);//显示aaA.

return0;

#include<errno.h>〃定义错误码

#niclude<float.h>〃浮点数处理

#niclude<fstream.h>〃文件输入/输出

#include<iomanip.h>//参数化输入/输出

#niclude<iostream.h>//数据流输入/输出

#niclude<limits.h>〃定义各种数据类型最值常量

#niclude<locale.h>〃定义本地化函数

#niclude<math.h>〃定义数学函数

#include<stdio.h>〃定义输入/输出函数

vstdio.h>下面的类型,宏,函数都是分类的

其他:

size_tsizeof返回的值

NULL空指针

文件:

FILE文件的类型

fpos_t文件中指针的位置

EOF文件末尾v0

FlLENAME_MAX文件名最大值》0

FOPEN_MAX同时打开文件的最大值>8

SEEK_SET文件头

SEEK_CUR文件当前位置

SEEK_END文件末尾

打开文件

FILE*fopen(constchar*filename,constchar*mode);

更改当前流相关的文件

FILE*freopen(constchar*filename,constchar*mode,FILE*stream);

关闭文件

intfclose(FILE*stream);

清除流中的错误标志或文件末尾标志

voidclearerr(FILE*stream);

测试流上的文件末尾标志

intfeof(FILE*stream);

测试流上的错误标志

intferror(FILE*stream);

将一个字符放回到流中

intungetc(intc,FILE*stream);

从流中读一个字符

intfgetc(FILE*stream);

intgetc(FILE*stream);/*与fgetc相同但是可以用宏实现该函数*/

写一个字符到一个流

intfputc(intc,FILE*stream);

intputc(intc,FILE*stream);

从流中获取一个字符串

char*fgets(char*s,intn,FILE*stream);

写一-个字符串到一个流

intfputs(constchar*s,FILE*stream);

打印一个格式化数据到一个流

intfprintf(FILE*stream,constchar*format,...);

使用一个参量列表指针格式化到流的数据

intvfprintf(FILE*stream,constchar*format,va_listap);

从•个流中读取格式化数据

intfscanf(FILE*stream,constchar*format,...);

从一个流中读数据

size_tfread(char*buffer,size_tsize,size_tcount,FILE*stream);

写数据到一个流

intfwrite(constchar*buffer,size_tsize,size_tcount,

FlLE*stream);

获取流的文件位置指示符

intfgetpos(FlLE*stream,fpos__t*pos);

设置流位置指示符

intfsetpos(FILE*stream,constfpos_t*pos);

移动文件指针到一个指定的位置

intfseek(FILE*stream,longoffset,intorigin);

获得文件指针相对于文件头的偏移量

longftell(FILE*stream);

重新定位一个文件指针到文件开头

voidrewind(FILE*steam);

删除一个文件

intremove(constchar*path);

更改一个文件或目录

intrename(constchar*oldname,constchar*newname);

缓冲区:

IOFBF

IOLBF

IONBF缓冲区类型

BUFSIZE缓冲区尺寸〉=256

刷新一个流并清空与流相关的缓冲区的内容

intfflush(FILE*stream);

控制流的缓冲区,已经被setvbuf代替

voidsetbuf(FILE*stream,char*buffer);

控制流的缓冲区类型和缓冲区大小

intsetvbuf(FILE*stream,char*buffer,intmode,size_tsize);

将一个格式化数据写入一个字符串

intsprintf(char*buffer,constchar*format,...);

从字符串中读格式化数据

intsscanf(constchar*buffer,constchar*format,...);

从参量列表指针格式化到字符串

intvsprintf(char*buffer,constchar*format,va_listap);

临时文件

L_tmpnam临时文件名长度〉0

TMP_MAX产生唯•文件名的最大数目>=25

以二进制读写的方式建立一个临时文件

FlLE*tmpfile(void);

建立一个临时文件名

char*tmpname(char*string);

标准流:

stdin标准输入流

stdout标准输出流

stderr标准错误输出流

从stdin获得一个字符

intgetchar(void);

把字符写道stdout

intputchar(intc);

从stdin中获取•行

char*gets(char*buffer);

写一个字符串到stdout

intputs(constchar*string);

打印一个错误消息到stderr

voidperror(constchar*error);

打印格式化数据到stdout

intprintf(constchar*format,...);

从stdin读格式化数据

intscanf(constchar*format,...);

从参量列表指针格式化到stdout

intvprintf(constchar*format,va_listap);

#include<stdlib.h>〃定义杂项函数及内存分配函数

#include<string.h>〃字符串处理

#include<strstrea.h>〃基于数组的输入/输出

#include<time.h>〃定义关于时间的函数

#include<wchar.h>〃宽字符处理及输入/输出

#include<wctype.h>〃宽字符分类

标准C++(同上的不再注释)

#niclude<algorithm>//STL通用算法

#include<bitset>//STL位集容器

#include<cctype>

#include<cerrno>

#include<clocale>

#niclude<cmath>

#niclude<complex>〃复数类

#include<cstdio>

#include<cstdlib>

#include<cstring>

#niclude<ctime>

#niclude<deque>//STL双端队列容器

#include<exception>〃异常处理类

#niclude<fstream>

#niclude<functional>//STL定义运算函数(代替运算符)

#niclude<limits>

#niclude<list>//STL线性列表容器

#niclude<map>//STL映射容器

#niclude<iomanip>

#include<ios>〃基本输入/输出支持

#include<iosfwd>〃输入/输出系统使用的前置声明

#include<iostream>

#include<istream>〃基本输入流

#include<ostream>〃基本输出流

#niclude<queue>//STL队列容器

#include<set>//STL集合容器

#include<sstream>〃基于字符串的流

#include<stack>//STL堆栈容器

#include<stdexcept>〃标准异常类

#niclude<streambuf>〃底层输入/输出支持

#include<string>〃字符串类

#include<utility>//STL通用模板类

#include<vector>//STL动态数组容器

#include<cwchar>

#include<cwctype>

usingnamespacestd;

//////////////////////////////////////////////////////////////////////////

C99增力口

#include<complex.h>〃复数处理

#include<fenv.h>〃浮点环境

#include<inttypes.h>〃整数格式转换

#include<stdbool.h>〃布尔环境

#include<stdint.h>〃整型环境

#include<tgmath.h>〃通用类型数学宏

c头文件大全

分类函数,所在函数库为ctype.h

intisalpha(intch)若ch是字母(血-2,切)返回非0值,否则返回0

intisalnum(intch)若ch是字母('A'-Z,'a'-'z')或数字('0'-'9')

返回非0值,否则返回0

intisascii(intch)若ch是字符(ASCII码中的0-127)返回非0值,否则返回0

intiscntrl(inlch)若ch是作废字符(0x7F)或普通控制字符(0x()0-0xIF)

返回非0值,否则返回0

intisdigit(intch)若ch是数字('0'-9)返回非0值,否则返回0

intisgraph(intch)若ch是可打印字符(不含空格)(0x21-0x7E)返回非0值,否则返回0

intislower(intch)若ch是小写字母("a'-"z')返回非0值,否则返|H|0

intisprint(intch)若ch是可打印字符(含空检(0x20-0x7E)返回非0值,否则返回0

intispunct(intch)若ch是标点字符(0x0()-0xIF)返回非0值,否则返四0

intisspace(intch)若ch是空格('),水平制表符(\t)回车符(V),

走纸换行(、「),垂直制表符(3)换行符(、心

返回非0值,否则返回0

intisupper(intch)若ch是大写字母(,A'-Z)返回非0值,否则返回0

intisxdigit(intch)若ch是16进制数返回非0值,

否则返回0

inttolower(intch)若ch是大写字母('A'-Z)返回相应的小写字母('a'-'z')

inttoupper(intch)若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')

数学函数,所在函数库为math.h、stdlib.h>string.h,float.h

intabs(inti)返回整型参数i的绝对值

doublecabs(structcomplexznum)返回复数znum的绝对值

doublefabs(doublex)返回双精度参数x的绝对值

longlabs(longn)返回长整型参数n的绝对值

doubleexp(doublex)返回指数函数ex的值

doublefrexp(doublevalue,int*eptr)返回value=x*2n4,x的值,n存贮在eplrU」

doubleldexp(doublevalue,intexp);返回vakie*2exp的值

doublelog(doublex)返回logex的值

doubleloglO(doublex)返回logIOx的值

doublepow(doublex,doubley)返回xy的值

doublepowl0(intp)返回10p的值

doublesqrt(doublex)返回+Jx的值

doubleacos(doublex)返回X的反余弦cos-l(x)值,X为弧度

doubleasin(doublex)返回x的反正弦sin-l(x)值,x为弧度

doubleatan(doublex)返回x的反正切tan-l(x)值,x为弧度

doubleatan2(doubley,doublex)返回y/x的反正切tan-l(x)值,y的x为弧度

doublecos(doublex)返回x的余弦cos(x)值,x为弧度

doublesin(doublex)返回x的正弦sin(x)值,x为弧度

doubletan(doublex)返回x的正切tan(x)值,x为弧度

doublecosh(doublex)返回X的双曲余弦cosh(x)值,X为弧度

doublesinh(doublex)返回x的双曲正弦sinh(x)值,x为弧度

doubletanh(doublex)返回x的双曲正切tanh(x)值,x为弧度

doublehypot(doublcx,doublcy)返回直角三角形斜边的长度(z),

x和y为宜角边的长度,z2=x2+y2

doubleceil(doublex)返回不小于x的最小整数

doublefloor(doublex)返回不大于X的最大整数

voidsrand(unsignedseed)初始化随机数发生器

intrand()产生一个随机数并返回这个数

doublepoly(doublex,intn,doublec[])从参数产生一个多项式

doublemodf(doublevalue,double*iptr)将双精度数value分解成尾数和阶

doublefmod(doublex,doubley)返回x/y的余数

doublefrexp(doublevalue,int*eptr)将双精度数value分成尾数和阶

doubleatof(char*nptr)将字符串nptr转换成浮点数并返回这个浮点数

doubleatoi(char*nptr)将字符串nptr转换成整数并返回这个整数

doubleatol(char*nptr)将字符串nptr转换成长整数并返回这个整数

char*ecvt(doublevalue,intndigit,int*decpt,int*sign)

将浮点数value转换成字符串并返回该字符串

char*fcvt(doublcvalue,intndigit,int*decpt,int*sign)

将浮点数value转换成字符串并返回该字符串

char*gcvt(doublevalue,intndigit,char*buf)

将数value转换成字符串并存于buf中,并返I四buf的指针

char*ultoa(unsignedlongvalue,char*string,intradix)

将无符号整型数value转换成字符串并返回该字符串,radix为转换时所用基数

char*ltoa(Iongvalue,char*string,intradix)

将长整型数value转换成字符串并返回该字符串,radix为转换时所用基数

char*itoa(intvalue,char*string,intradix)

将整数value转换成字符串存入string,radix为转换时所用基数

doubleatof(char*nptr)将字符串nptr转换成双精度数,并返回这个数,错误返回0

intatoi(char*nptr)将字符串nptr转换成整型数,并返回这个数,错误返回0

longatol(char*nptr)将字符串nptr转换成长整型数,并返回这个数,错误返回0

doublestrtod(char*str,char**endplr)将字符串str转换成双精度数,并返回这个数,

longstrtol(char*str,char**endptr,intbase)将字符串str转换成长整型数,

并返回这个数,

intmatheiT(structexception*e)

用户修改数学错误返回信息函数(没有必要使用)

double_matherr(_mexccpwhy,char*fun.double*arglp,

double*arg2p,doubleretval)

用户修改数学错误返回信息函数(没有必要使用)

unsignedint_clear87()清除浮点状态字并返回原来的浮点状态

void_fpreset()重新初使化浮点数学程序包

unsignedint_status87()返回浮点状态字

目录函数,所在函数库为dir.h、dos.h

intchdir(char*path)使指定的目录path(如:"C:\\WPS")变成当前的工作目录,成

功返回0

intfindfirst(char*pathname,structffblk*ffblk,intattrib)查找指定的文件,成功

返回0

pathname为指定的目录名和文件名,如"CNWPSWTXT”

ffblk为指定的保存文件信息的一个结构,定义如下:

Istructffblk|

I{

|charff_reserved⑵];/*DOS保留字*/|

|charff_attrib;/*文件属性*/1

Iintff_ftime;/*文件时间*/1

Iintff_fdate;/*文件日期*/1

Ilongff_fsize;/*文件长度*/1

1charff_name[13];/*文件名*/1

1}

attrib为文件属性,由以下字符代表

IFA_RDONLY只读文件|FA_LABEL卷标号|

|FA_H1DDEN隐藏文件|FA_DIREC目录|

|FA_SYSTEM系统文件|FA_ARCH档案|

例:

structffblkff;

findfiist(,,*.wps,,,&ff.FA_RDONLY);

intfindnext(stmctffblk*ffblk)取匹配finddirst的文件,成功返回0

voidfumerge(char*path,char*drive,char*dir,char*name,char*ext)

此函数通过盘符drive(C:、A:等),路径dir(\TC、\BC\LIB等),

文件名name(TC、WPS等),扩展名ext(.EXE、.COM等)组成•个文件名

存与path中.

intfnsplit(char*path,char"drive,char*dir,char*name,char*ext)

此函数将文件名path分解成盘符drive©、A:等),路径dir(\TC、\BC\LIB等),

文件名name(TC、WPS等),扩展名ext(.EXE、.COM等),并分别存入相应的变量中.

intgetcurdir(intdrive.char*direc)此函数返回指定驱.动器的当前工作目录名称

drive指定的驱动器(0=当前,1=A,2=B,3=C等)

direc保存指定驱动器当前工作路径的变量成功返回0

char*getcwd(char*buf,iintn)此函数取当前工作目录并存入buf中,直到n个字

节长为为止.错误返回NULL

intgetdisk()取当前正在使用的驱动器,返回一个整数(0=A』=B,2=C等)

intseldisk(intdrive)设置要使用的驱动器drive(0=A,l=B,2=C等),

返回可使用驱动器总数

intmkdir(char*pathname)建立•个新的目录pathname,成功返回0

intrmdir(char*pathname)删除一个目录pathname,成功返回0

char*mktemp(char*template)构造一个当前目录上没有的文件名并存于template中

char*searchpath(char*pathname)利用MSDOS找出文件filename所在路径,

,此函数使用DOS的PATH变量,未找到文件返叵INULL

进程函数,所在函数库为stdlib.h、process.li

voidabort()此函数通过调用具有出口代码3的_exit写一个终止信息于stderr,

并异常终止程序。无返回值

intexec…装入和运行其它程序

intexec1(char*pathname,char*argO,char*arg1,...,char*argn,NLJLL)

intexecle(char*pathname,char*argO,char*argl,...,

char*argn,NULL,char*envp[J)

intexeclp(char*pathname.char*arg(),char*argl,...,NULL)

intexeclpc(char*pathname,char*argO,char*arg1,...,NULL,char*envp[])

intexecv(char*pathname,char*argv[])

intexecve(char*pathname,char*argv[],char*envp[])

intexecvp(char*pathname,char*argv[])

intexecvpe(char*pathname,char*argv[],char*envp[])

exec函数族装入并运行程序pathname,并将参数

arg0(argl,arg2,argv口,envp[])传递给子程序,出错返回-1

在exec函数族中,后缀1、v、p、e添加到exec后,

所指定的函数将具有某种操作能力

有后缀p时,函数可以利用DOS的PATH变量杳找子程序文件。

1时,函数中被传递的参数个数固定。

v时,函数中被传递的参数个数不固定。

e时,函数传递指定参数envp,允许改变子进程的环境,

无后缀e时,子进程使用当前程序的环境。

void_exit(intstatus)终止当前程序,但不清理现场

voidexit(intstatus)终止当前程序,关闭所有文件,写缓冲区的输出(等待输出),

并调用任何寄存器的“出口函数”,无返回值

intspawn…运行子程序

intspawnl(intmode,char*pathname,char*argO,char*argl,...,

char*argn,NULL)

intspawnle(intmode,char*pathname,char*argO,char*argl,...,

char*argn,NULL.char*envp||)

intspawnlp(intmode,char*pathname,char*argO,char*argl…

char*argn,NULL)

intspawnlpe(intmode,char*pathname,char*argO,char*argl,...,

char*argn,NULL,char*envp[])

intspawnv(intmode,char*pathname,char*argv[])

intspawnve(intmode,char*pathname,char*argv[],char*envp[])

intspawnvp(intmode,char*pathname,char*argv[])

intspawnvpe(intmode,char*pathname,char*argv[],char*envp(])

spawn函数族在mode模式下运行子程序pathname,并将参数

arg0(argl,arg2,argv口,envp[])传递给子程序.出错返回-1

mode为运行模式

mode为P_WAIT表示在子程序运行完后返回本程序

P-NOWAIT表示在子程序运行时同时运行本程序(不可用)

P_OVERLAY表示在本程序退出后运行子程序

在spawn函数族中,后缀1、v、p、e添加到spawn后,

所指定的函数将具有某种操作能力

有后缀p时,函数利用DOS的PATH查找子程序文件

1时,函数传递的参数个数固定.

v时,函数传递的参数个数不固定.

e时,指定参数envp可以传递给子程序,允许改变子程序运行环境.

当无后缀e时,子程序使用本程序的环境.

intsystem(char*command)将MSDOS命令command传递给DOS执行

转换子程序,函数库为malh.h、stdlib.h^ctype.h、float.h

char*ecvt(doublevaluejntndigit,int*decpt,int*sign)

将浮点数value转换成字符串并返回该字符串

char*fcvt(doublcvalue,intndigit,int*decpt,int*sign)

将浮点数value转换成字符串并返回该字符串

char*gcvt(doublevalue,intndigit,char*buf)

将数value转换成字符串并存于buf中,并返I回buf的指针

char*ultoa(unsignedlongvalue,char*slring,intradix)

将无符号整型数value转换成字符串并返回该字符串,radix为转换时所用基数

char*ltoa(longvalue,char*string,intradix)

将长整型数value转换成字符串并返回该字符串,radix为转换时所用基数

char*itoa(intvalue,char*string,intradix)

将整数value转换成字符串存入string,radix为转换时所用基数

doubleatof(char*nptr)将字符串nptr转换成双精度数,并返回这个数,错误返回0

intatoi(char*nptr)将字符串nptr转换成整型数,并返回这个数,错误返回0

longatol(char*nptr)将字符串nptr转换成长整型数,并返回这个数,错误返回0

doublestrtod(char*str,char**endptr)将字符串str转换成双精度数,并返回这个数,

longstrtol(char*str,char**endptr,intbase)将字符串str转换成长整型数,

并返回这个数,

inttoascii(intc)返c相应的ASCII

inttolower(intch)若ch是大写字母(义12‘)返回相应的小写字母(H-N)

int_tolower(intch)返回ch相应的小写字母('a'-'z')

inttoupper(intch)若ch是小写字母(R-N)返回相应的大写字母(W-Z)

int_toupper(血ch)返回ch相应的大写字母('A:Z)

诊断函数,所在函数库为assert.h、math.h

voidassert(inttest)一个扩展成if语句那样的宏,如果test测试失败,

就显示一个信息并异常终止程序,无返回值

voidpcrror(char*string)本函数将显示最近■次的错误信息,格式如下:

字符串string:错误信息

char*strerror(char*str)本函数返回最近一次的错误信息,格式如下:

字符串str:错误信息

intmatherr(structexception*e)

用户修改数学错误返回信息函数(没有必要使用)

double_matherr(_mexcepwhy,char*fun,double*argIp,

double*arg2p,doublerctval)

用户修改数学错误返回信息函数(没有必要使用)

输入输出子程序,函数库为io.h、conio.h、stat.h>dos.hstdio.h、signal.h

intkbhit()本函数返回最近所敲的按键

intfgetchar()从控制台(键盘)读一个字符,显示在屏幕上

intgetch()从控制台(键盘)读一个字符,不显示在屏幕11

intputch()向控制台(键盘)写一个字符

intgetchar()从控制台(键盘)读一个字符,显示在屏幕上

putchar()向控制台(键盘)写一个字符

intgetche()从控制台(键盘)读一个字符,显示在屏幕上

intungetch(intc)把字符c退回给控制台(键盘)

char*cgets(char*string)从控制台(键盘)读入字符串存于string中

intscanf(char*format[,argument…])从控制台读入一个字符串,分别对各个参数进行

赋值,使用BIOS进行输出

intvscanf(char*format,Valistparam)从控制台读入一个字符串,分别对各个参数进行

赋值,使用BIOS进行输出,参数从Valistparam中取得

intcscanf(char*format),argument…])从控制台读入一个字符串,分别对各个参数进行

赋值,直接对控制台作操作,比如显示器在显示时字符时即为直接写频方式显示

intsscanf(char*string,char*fonhaU,argument,…])通过字符串string,分别对各个

参数进行赋值

intvsscanf(char*string,char*format,Vlistparam)通过字符串siring,分别对各个

参数进行赋值,参数从Vlistparam中取得

intputs(char*string)发关一个字符串string给控制台(显示器),

使用BIOS进行输出

voidcputs(char*string)发送■个字符串string给控制台(显示器),

直接对控制台作操作,比如显示器即为直接写频方式显示

intprintf(char*format[,argument,••­])发送格式化字符串输出给控制台(显示器)

使用BIOS进行输出

intvprintf(char"format,Valistparam)发送格式化字符串输出给控制台(显示器)

使用BIOS进行输出,参数从Valistparam中取得

intcprintf(char*format[,argumcnt,--•])发送格式化字符串输出给控制台(显示器),

直接对控制台作操作,比如显示器即为直接写频方式显示

intvcprintf(char*format,Valistparam)发送格式化字符串输出给控制台(显示器),

直接对控制台作操作,比如显示器即为直接写频方式显示,

参数从Valistparam中取得

intsprintf(char*string,char*format[,argument,...])

将字符串string的内容重新写为格式化后的字符串

intvsprintf(char*string,char*format,Valistparam)

将字符串string的内容重新写为格式化后的字符串,参数从Valistparam中取得

intrename(char*oldname,char*newname)》等文件oldname的名称改为newname

intioctl(inthandle,intcmd[,int*argdx,intargcx])

本函数是用来控制输入/输出设备的,请见卜表:

Icmd值1功能

1

1

|0取出设备信息1

|1设置设备信息1

I2把argcx字节读入由argdx所指的地址

|3在argdx所指的地址写argcx字节

|4除把handle当作设备号(0=当前,I=A,等)之外,均和cmd=2时一样I

|5除把handle当作设备号(0=当前,1=A,等)之外,均和cmd=3时一样|

|6取输入状态1

|7取输出状态1

|8测试可换性;只对于DOS3.x|

|11置分享冲突的重算计数;只对DOS3.xI

।1

int(*ssignal(intsig,int(*action)())()执行软件信号(没必要使用)

intgsignal(intsig)执行软件信号(没必耍使用)

int_open(char*pathname,intaccess)为读或写打开一个文件,

按后按access来确定是读文件还是写文件,access值见卜.表

111

1access值|意义I

Iii

IO_RDONLY1读文件

|O_WRONLY1写文件

|O.RDWR1即读也写

|O_NOINHERIT1若文件没有传递给子程序,则被包含

|O.DENYALL1只允许当前处理必须存取的文件

IO_DENYWRITE1只允许从任何其它打开的文件读

IO_DENYREAD1只允许从任何其它打开的文件写

|O.DENYNONE1允许其它共享打开的文件

ii1

intopen(char*pathname,intaccess[,intpermiss])为读或写打开一个文件,

按后按access来确定是读文件还是写文件,access值见下表

Iaccess值|意义

|O_RDONLY|读文件

|O_WRONLY|写文件

O_RDWR|即读也写|

O_NDELAY|没有使用;对UNIX系统兼容

O.APPEND|即读也写,但每次写总是在文件尾添加|

O-CREAT|若文件存在,此标志无用;若不存在,建新文件|

O_TRUNC|若文件存在,则长度被截为0,属性不变|

O.EXCL|未用;对UNIX系统兼容

O_BINARY|此标志可显示地给出以二进制方式打开文件|

O_TEXT|此标志可用于显示地给出以文本方式打开文件|

penniss为文件属性,可为以下值:

S」WRITE允许写S」READ允许读S」READIS」WRITE允许读、写

intcreat(char*filename,intpermiss)建立一个新文件filename,并设定

读写性。permiss为文件读写性,可以为以卜.值

S」WRITE允许写S」READ允许读S」READIS」WRITE允许读、写

int_creat(char*filenameJntattrib)建立一个新文件filename,并设定文件

属性。attrib为文件属性,可以为以下值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论