随机数函数使用

随机函数rand在实际编程中经常会用到,比如随机颜色、随机数字等。随机数函数介绍:随机函数定义在头文件中,使用rand随机函数时要先#include头文件。int rand();rand()返回0—RAND_MAX中随机的一个整数,RAND_MAX是最大随机数值,是个宏定义

C标准类型转换函数

头文件中定义了类型转换函数,比如将字符转浮点、转整型等。double? atof(char* a);将字符串a转换成浮点数并返回这个浮点数int atoi(char* a);将字符串a转换成整数并返回这个整数long atol(char* a);将字符串a转换成长整数并返回这个长整数char* ultoa(unsigned long value,char* str, int radix);将无符号整型数value转换成字符串并返回该字符串,radix为转换时所用基数char* itoa(int value, char* string, int radix);将整数value转换成字符串存入string,radix为转换时所用基数double strod(char* str, char** endptr);将字符串str转换成双精度数,并返回这个数long strtol(char* str,char** endptr,int base); 将字符串str转换成长整型数,并返回这个数

数学函数及其运用详解

包含了常用数学函数的声明,下面列出数学函数:
int abs(int i);返回整型参数i的绝对值
double fabs(double x);返回双精度参数x的绝对值
long labs(long n);返回长整型参数n的绝对值
double acos(double x);求x的反余弦
double asin(double x);求x的反正弦
double atan(double x);求x的反正切
double atan2(double x,double y);求x/y的反正切
double ceil(double x);求不小于x的最小整数
double cos(double x);求x的余弦
double cosh(double x);求x的双曲余弦
double exp(double x);求以e为底x的指数值
double fabs(double x);求x的绝对值
double floor(double x);求不大于x的最大整数
double log(double x);求x的自然对数
double log10(double x);求以10为底的x的对数
double pow(double x,double y);求x的y次方
double sin(double x);求sin(x)的值
double sinh(double x);求x的双曲正弦
double sqrt(double x);求x的平方根
double tan(double x);求x的正切
double tanh(double x);求x的双曲正切
double hypot(double x, double y);返回直角三角形斜边的长度

math数学函数库中的宏

数学函数头文件中定义常见宏,先记录下来。HUGE_VAL:表示正的double常量, 代表正的无穷大HUGE_VALF:表示浮点类型的正值无穷大HUGE_VALL:表示long double?类型的正的无穷大INFINITY:表示浮点类型(float)正的无穷大NAN:表示无效数字,即不是一个数FP_INFINITE:表示浮点类型的无穷大FP_NAN:表示无效数据FP_NORMAL:表示正常状态FP_SUBNORMAL:表示异常状态FP_ZERO:表示浮点类型的0FP_FAST_FMA:表示和fma()函数同样的效果FP_FAST_FMAF:表示浮点类型的FP_FAST_FMAFP_FAST_FMAL:表示long double类型的FP_FAST_FMAFP_ILOGB0:表示ilogb(x)函数的x参数为0时,函数的返回值FP_ILOGBNAN:表示ilogb(x)函数的x参数为NAN时,函数的返回值MATH_ERRN0:表示数学错误,整数1MATH_ERREXCEPT:表示数学异常错误,整数2

类型函数cctype

isdigit(c): 判断c是否为数字isupper(c):? 判断c是否为大写字母(A-Z)islower(c):? 判断c是否为小写字母(a-z)isalpha(c):? 判断c是否为字母(A-Z,a-z)isalnum(c):? 判断c是否为字母或者数字isprint(c):? 判断c是否是可显示的ASCII字符isspace(c):? 判断c是否为空字符toupper(c):? 将c转换成大写字符tolower(c):? 将c转换成小写字符

STL容器中存放不同类型实现方法

都知道C++STL容器,只要定义好之后就只能存定义的类型,不能放入别的类型。以vector容器为例,定义好只存int类型,其它类型将无法存入。vector vecint;
vecint.push_back(10);
vecint.push_back(‘s’); //错误,只能放入int类型哪容器里有没有办法可以存不同类型呢?

auto_ptr智能指针使用与局限性

auto_ptr就是智能指针,它其实是一个类类型,定义库中,具体定义可以看这篇:auto_ptr智能指针头文件下面写段使用auto_ptr智能指针的代码,让大家更容易理解auto_ptr如何使用。
1.两个auto_prt指针不能指向同一个内存:
2.不要将auto_prt对象作为STL容器的元素,C++标准明确禁止这样做。
3.不能将数组作为auto_ptr的参数