❶ C++函数头文件有哪些
C、传统 C++#include <assert.h> //设定插入点#include <ctype.h> //字符处理#include <errno.h> //定义错误码#include <float.h> //浮点数处理#include <fstream.h> //文件输入/输出#include <iomanip.h> //参数化输入/输出#include <iostream.h> //数据流输入/输出#include <limits.h> //定义各种数据类型最值常量#include <locale.h> //定义本地化函数#include <math.h> //定义数学函数#include <stdio.h> //定义输入/输出函数#include <stdlib.h> //定义杂项函数及内存分配函数#include <string.h> //字符串处理#include <strstrea.h> //基于数组的输入/输出#include <time.h> //定义关于时间的函数#include <wchar.h> //宽字符处理及输入/输出#include <wctype.h> //宽字符分类//////////////////////////////////////////////////////////////////////////标准 C++ (同上的不再注释)#include <algorithm> //STL 通用算法#include <bitset> //STL 位集容器#include <cctype>#include <cerrno>#include <clocale>#include <cmath>#include <complex> //复数类#include <cstdio>#include <cstdlib>#include <cstring>#include <ctime>#include <deque> //STL 双端队列容器#include <exception> //异常处理类#include <fstream>#include <functional> //STL 定义运算函数(代替运算符)#include <limits>#include <list> //STL 线性列表容器#include <map> //STL 映射容器#include <iomanip>#include <ios> //基本输入/输出支持#include <iosfwd> //输入/输出系统使用的前置声明#include <iostream>#include <istream> //基本输入流#include <ostream> //基本输出流#include <queue> //STL 队列容器#include <set> //STL 集合容器#include <sstream> //基于字符串的流#include <stack> //STL 堆栈容器 #include <stdexcept> //标准异常类#include <streambuf> //底层输入/输出支持#include <string> //字符串类#include <utility> //STL 通用模板类#include <vector> //STL 动态数组容器#include <cwchar>#include <cwctype>using namespace std;//////////////////////////////////////////////////////////////////////////C99 增加#include <complex.h> //复数处理#include <fenv.h> //浮点环境#include <inttypes.h> //整数格式转换#include <stdbool.h> //布尔环境#include <stdint.h> //整型环境#include <tgmath.h> //通用类型数学宏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值,否则返回0int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回非0值,否则返回0int 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转换成双精度数,并返回这个数,错误返回0int atoi(char *nptr) 将字符串nptr转换成整型数, 并返回这个数,错误返回0long atol(char *nptr) 将字符串nptr转换成长整型数,并返回这个数,错误返回0double 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)查找指定的文件,成功 返回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);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等), 文件名name(TC、WPS等),扩展名ext(.EXE、.COM等),并分别存入相应的变量中.int getcurdir(int drive,char *direc) 此函数返回指定驱动器的当前工作目录名称 drive 指定的驱动器(0=当前,1=A,2=B,3=C等) direc 保存指定驱动器当前工作路径的变量 成功返回0char *getcwd(char *buf,iint n) 此函数取当前工作目录并存入buf中,直到n个字 节长为为止.错误返回NULLint getdisk() 取当前正在使用的驱动器,返回一个整数(0=A,1=B,2=C等)int setdisk(int drive) 设置要使用的驱动器drive(0=A,1=B,2=C等), 返回可使用驱动器总数int mkdir(char *pathname) 建立一个新的目录pathname,成功返回0int rmdir(char *pathname) 删除一个目录pathname,成功返回0char *mktemp(char *template) 构造一个当前目录上没有的文件名并存于template中char *searchpath(char *pathname) 利用MSDOS找出文件filename所在路径, ,此函数使用DOS的PATH变量,未找到文件返回NULL进程函数,所在函数库为stdlib.h、process.hvoid abort() 此函数通过调用具有出口代码3的_exit写一个终止信息于stderr, 并异常终止程序。无返回值int exec…装入和运行其它程序int execl( char *pathname,char *arg0,char *arg1,…,char *argn,NULL)int execle( char *pathname,char *arg0,char *arg1,…, char *argn,NULL,char *envp[])int execlp( char *pathname,char *arg0,char *arg1,…,NULL)int execlpe(char *pathname,char *arg0,char *arg1,…,NULL,char *envp[])int execv( char *pathname,char *argv[])int execve( char *pathname,char *argv[],char *envp[])int execvp( char *pathname,char *argv[])int execvpe(char *pathname,char *argv[],char *envp[]) exec函数族装入并运行程序pathname,并将参数 arg0(arg1,arg2,argv[],envp[])传递给子程序,出错返回-1 在exec函数族中,后缀l、v、p、e添加到exec后, 所指定的函数将具有某种操作能力 有后缀 p时,函数可以利用DOS的PATH变量查找子程序文件。 l时,函数中被传递的参数个数固定。 v时,函数中被传递的参数个数不固定。 e时,函数传递指定参数envp,允许改变子进程的环境, 无后缀e时,子进程使用当前程序的环境。void _exit(int status)终止当前程序,但不清理现场void exit(int status) 终止当前程序,关闭所有文件,写缓冲区的输出(等待输出), 并调用任何寄存器的"出口函数",无返回值int spawn…运行子程序int spawnl( int mode,char *pathname,char *arg0,char *arg1,…, char *argn,NULL)int spawnle( int mode,char *pathname,char *arg0,char *arg1,…, char *argn,NULL,char *envp[])int spawnlp( int mode,char *pathname,char *arg0,char *arg1,…, char *argn,NULL)int spawnlpe(int mode,char *pathname,char *arg0,char *arg1,…, char *argn,NULL,char *envp[])int spawnv( int mode,char *pathname,char *argv[])int spawnve( 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函数族在mode模式下运行子程序pathname,并将参数 arg0(arg1,arg2,argv[],envp[])传递给子程序.出错返回-1 mode为运行模式 mode为 P_WAIT 表示在子程序运行完后返回本程序 P_NOWAIT 表示在子程序运行时同时运行本程序(不可用) P_OVERLAY表示在本程序退出后运行子程序 在spawn函数族中,后缀l、v、p、e添加到spawn后, 所指定的函数将具有某种操作能力 有后缀 p时, 函数利用DOS的PATH查找子程序文件 l时, 函数传递的参数个数固定. v时, 函数传递的参数个数不固定. e时, 指定参数envp可以传递给子程序,允许改变子程序运行环境. 当无后缀e时,子程序使用本程序的环境.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) 将数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转换成双精度数,并返回这个数,错误返回0int atoi(char *nptr) 将字符串nptr转换成整型数, 并返回这个数,错误返回0long atol(char *nptr) 将字符串nptr转换成长整型数,并返回这个数,错误返回0double strtod(char *str,char **endptr)将字符串str转换成双精度数,并返回这个数,long strtol(char *str,char **endptr,int base)将字符串str转换成长整型数, 并返回这个数,int toascii(int c) 返回c相应的ASCIIint tolower(int ch) 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z')int _tolower(int ch) 返回ch相应的小写字母('a'-'z')int toupper(int ch) 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')int _toupper(int ch) 返回ch相应的大写字母('A'-'Z')诊断函数,所在函数库为assert.h、math.hvoid assert(int test) 一个扩展成if语句那样的宏,如果test测试失败, 就显示一个信息并异常终止程序,无返回值void perror(char *string) 本函数将显示最近一次的错误信息,格式如下: 字符串string:错误信息char *strerror(char *str) 本函数返回最近一次的错误信息,格式如下: 字符串str:错误信息int matherr(struct exception *e) 用户修改数学错误返回信息函数(没有必要使用)double _matherr(_mexcep why,char *fun,double *arg1p, double *arg2p,double retval) 用户修改数学错误返回信息函数(没有必要使用)输入输出子程序,函数库为io.h、conio.h、stat.h、dos.h、stdio.h、signal.hint kbhit() 本函数返回最近所敲的按键int fgetchar() 从控制台(键盘)读一个字符,显示在屏幕上int getch() 从控制台(键盘)读一个字符,不显示在屏幕上int putch() 向控制台(键盘)写一个字符int getchar() 从控制台(键盘)读一个字符,显示在屏幕上int putchar() 向控制台(键盘)写一个字符int getche() 从控制台(键盘)读一个字符,显示在屏幕上int ungetch(int c) 把字符c退回给控制台(键盘)char *cgets(char *string) 从控制台(键盘)读入字符串存于string中int scanf(char *format[,argument…])从控制台读入一个字符串,分别对各个参数进行 赋值,使用BIOS进行输出int vscanf(char *format,Valist param)从控制台读入一个字符串,分别对各个参数进行 赋值,使用BIOS进行输出,参数从Valist param中取得int cscanf(char *format[,argument…])从控制台读入一个字符串,分别对各个参数进行 赋值,直接对控制台作操作,比如显示器在显示时字符时即为直接写频方式显示int sscanf(char *string,char *format[,argument,…])通过字符串string,分别对各个 参数进行赋值int vsscanf(char *string,char *format,Vlist 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) 发送格式化字符串输出给控制台(显示器) 使用BIOS进行输出,参数从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 *string,char *format,Valist param) 将字符串string的内容重新写为格式化后的字符串,参数从Valist param中取得int rename(char *oldname,char *newname)将文件oldname的名称改为newnameint ioctl(int handle,int cmd[,int *argdx,int argcx])还有很多 ,由于字数上限了,就发这么多吧!
❷ 想让当输入非数字时,程序终止。判断是不是数字的函数是isdigit(),但我不知道往哪加。各位大神帮帮忙!!
在while前加char temp[200];把while(…)改成while(cin>>temp);循环里第一行写if (!isdigit(temp))break;第二行写ch = atoi(temp); //把字符串变成整数以下是我做的isdigit(),仅供参考bool isdigit(char *buf){ int t = 0; if (buf[t] == '-' || buf[t] == '+') if (buf[1] != '\0') t ++; for (;buf[t] != '\0'; t ++) if (buf[t] < '0' || buf[t] > '9') return false; return true;}
❸ 函数isdigit()完成什么功能 需要怎样的头文件
如果一个字符是0—9的任意一个,即是数字的话,返回true,不是数字返回false。比如 scanf("%d",&m); if(isdigit(m)) { … } 如果程序运行时你输入了数字,就会执行if里面的代码块。需要的是<ctype.h>
❹ 调用函数strcmp,必须包含什么头文件stdlib.h ctype.h string.h 个各是用于哪里
调用strcmp函数要用到#include<cstring> / #include <string.h>。
stdlib 头文件即standard library标准库头文件。stdlib.h里面定义了五种类型、一些宏和通用工具函数。 类型例如size_t、wchar_t、div_t、ldiv_t和lldiv_t; 宏例如EXIT_FAILURE、EXIT_SUCCESS、RAND_MAX和MB_CUR_MAX等等。
ctype.h是C标准函数库中的头文件,定义了一批C语言字符分类函数(C character classification functions),用于测试字符是否属于特定的字符类别,如字母字符、控制字符等等。既支持单字节字符,也支持宽字符。
string .h头文件定义了一个变量类型、一个宏和各种操作字符数组的函数。
(4)isdigit函数头文件扩展阅读
strcmp函数是string compare(字符串比较)的缩写,用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2),若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数。
规则:
当s1<s2时,返回为负数;
当s1=s2时,返回值= 0;
当s1>s2时,返回正数。
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇''为止。如:"A"<"B" 2."A"<"AB" 3."Apple"<"Banana" 4."A"<"a" 5."compare"<"computer"
特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。
ANSI标准规定,返回值为正数,负数,0 。而确切数值是依赖不同的C实现的。
当两个字符串不相等时,C标准没有规定返回值会是1 或 -1,只规定了正数和负数。有些会把两个字符的ASCII码之差作为比较结果由函数值返回。但无论如何不能以此条依据作为程序中的流程逻辑。
❺ ctype.h是什么的头文件
具体如下:
ctype.h既支持单字节(Byte)字符,也支持宽字符;是C标准函数库中的头文件,定义了一批C语言字符分类函数(C character classification functions),用于测试字符是否属于特定的字符类别,如字母字符、控制字符等。
1、字符测试函数
1>函数原型均为int isxxxx(int)
2>参数为int, 任何实参均被提升成整型
3>只能正确处理处于[0, 127]之间的值
2、字符映射函数
1>函数原型为int toxxxx(int)
2>对参数进行检测, 若符合范围则转换, 否则不变
int tolower(int);'A'~'Z'==>'a'~'z'
inttoupper(int);'a'~'z'==>'A'~'Z'
3、主要函数
(1)isalpha
函数名称: isalpha
函数原型: int isalpha(char ch);
函数功能: 检查ch是否是字母.
函数返回: 是字母返回非0 ,否则返回 0
(2)iscntrl
函数名称:iscntrl
函数原型: intiscntrl(int ch);
函数功能: 检查ch是否控制字符(其ASCII码在0和0x1F之间,数值为 0-31).
函数返回: 是返回非0,否则返回 0
(3)isdigit
函数名称: isdigit
函数原型: int isdigit(char ch);
函数功能: 检查ch是否是数字(0-9)
函数返回: 是返回非0,否则返回0
❻ isdigit()函数是什么意思
isdigit()函数意思:digit是数字的意思,isdigit就是判断是否是数字,0-9就是数字。如果isdigit函数包含在ctype.h头文件中,那字符串为数字。
计算过程:
原型: int isdigit(char c)。
用法:#include <ctype.h>。
功能:判断字符c是否为数字。
功能说明
/*找出字符串str中为阿拉伯数字0~9的字符*/
#include<iostream>
#include<cctype>
usingnamespacestd;
intmain()
{
stringstr="[email protected]#FDsP[e?";
for(inti=0;str[i]!=0;++i)
{
if(isdigit(str[i]))
cout<<str[i]<<"isandigitcharacter"<<endl;
}
return0;
}
❼ isdigit()函数是什么意思
如果isdigit函数包含在ctype.h头文件中,那字符串为数字。
计算过程:
原型: int isdigit(char c)。
用法:#include <ctype.h>。
功能:判断字符c是否为数字。
功能说明
判断参数c是否为数字,您可能会问:isdigit函数的参数是int c,是整数,不是字符,在C语言中,字符就是整数,请补充学习一下基础知识。
返回值:0-不是数字,非0-是数字。
❽ C++的isdigit函数
给你个例子参考:示例:使用isdigit判断给定字符是否为0~9的数字。#include<iostream.h> #include<ctype.h> int main() { char c1='A'; char c2=‘1’;if (isdigit (c1)!=0 ) cout<<c1<<" is the valid digit!"<<endl; //当c1为0~9d的数字时,打印信息else cout<<c1<<" is not the valid digit!"<<endl; //当c1为非0~9d的数字时,打印信息 if (isdigit (c2)!=0 ) cout<<c2<<" is the valid digit"<<endl; //当c1为0~9d的数字时,打印信息else cout<<c2<<" is not the valid digit!"<<endl; //当c1为非0~9d的数字时,打印信息return 0; }
❾ C语言 isdigit()
isdigit是头文件ctype.h中声明的一个函数。原型为:
intisdigit(intc);
作用:
判断c指定的字符是否为数字字符,即'0'-'9',如果是,则返回1;否则返回0。
isdigit函数的实现也比较简单,这样就可以:
intisdigit(intc){return(c>='0'&&c<='9');}