1、常用数学函数
头文件 #include <math> 或者 #include <math.h>
函数原型 |
功能 |
返回值 |
int abs(int x) |
求整数x的绝对值 |
绝对值 |
double acos(double x) |
计算arcos(x)的值 |
计算结果 |
double asin(double x) |
计算arsin(x)的值 |
计算结果 |
double atan(double x) |
计算arctan(x)的值 |
计算结果 |
double cos(double x) |
计算cos(x)的值 |
计算结果 |
double cosh(double x) |
计算x的双曲余弦cosh(x)的值 |
计算结果 |
double exp(double x) |
求 的值 |
计算结果 |
double fabs(double x) |
求实数x的绝对值 |
绝对值 |
double fmod(double x) |
求x/y的余数 |
余数的双精度数 |
long labs(long x) |
求长整型数的绝对值 |
绝对值 |
double log(double x) |
计算In(x)的值 |
计算结果 |
double log10(double x) |
计算 的值 |
计算结果 |
double modf(double x, double *y) |
取x的整数部分送到y所指向的单元格中 |
x的小树部分 |
double pow(double x, double y) |
求x的y次方的值 |
计算结果 |
double sin(double x) |
计算sin(x)的值 |
计算结果 |
double sqrt(double x) |
求 的值 |
计算结果 |
double tan(double x) |
计算tan(x)的值 |
计算结果 |
fcvt |
将浮点型数转化为字符串 |
2. 字符串函数(<string.h>)
字符串函数
所有字符串函数列在下表里,函数描述采用如下约定:s、t表示 (char *)类型的参数,cs、ct表示(const char*)类型的参数(它们都应表示字符串)。n表示size_t类型的参数(size_t是一个无符号的整数类型),c是整型参数(在函数里转换到 char):
函数原型 |
意义解释 |
size_t strlen(cs) |
求出cs的长度(不包含‘\0’),如strlen(chai)=4 |
char *strcpy(s,ct) |
把ct复制到s。要求s指定足够大的字符数组 |
char *strncpy(s,ct,n) |
把ct里的至多n个字符复制到s。要求s指定一个足够大的字符数组。如果ct里的字符不够n个,就在s里填充空字符。 |
char *strcat(s,ct) |
把ct里的字符复制到s里已有的字符串之后。s应指定一个保存着字符串,而且足够大的字符数组。 |
char *strncat(s,ct,n) |
把ct里的至多n个字符复制到s里已有的字符串之后。s应指定一个保存着字符串,而且足够大的字符数组。 |
int strcmp(cs,ct) |
比较字符串cs和ct的大小,在cs大于、等于、小于ct时分别返回正值、0、负值。 |
int strncmp(cs,ct,n) |
比较字符串cs和ct的大小,至多比较n个字符。在cs大于、等于、小于ct时分别返回正值、0、负值。 |
char *strchr(cs,c) |
在cs中查寻c并返回c第一个出现的位置,用指向这个位置的指针表示。当cs里没有c时返回值NULL |
char *strrchr(cs,c) |
在cs中查寻c并返回c最后一个出现的位置,没有时返回NULL |
size_t strspn(cs,ct) |
由cs起确定一段全由ct里的字符组成的序列,返回其长度 |
size_t strcspn(cs,ct) |
由cs起确定一段全由非ct里的字符组成的序列,返回其长度 |
char *strpbrk(cs,ct) |
在cs里查寻ct里的字符,返回第一个满足条件的字符出现的位置,没有时返回NULL |
char *strstr(cs,ct) |
在cs中查寻串ct(查询子串),返回ct作为cs的子串的第一个出现的位置,ct未出现在cs里时返回NULL |
char *strerror(n) |
返回与错误编号n相关的错误信息串(指向该错误信息串的指针) |
char *strtok(s,ct) |
在s中查寻由ct中的字符作为分隔符而形成的单词 |
存储区操作
<string.h>还有一组字符数组操作函数(存储区操作函数),名字都以mem开头,以某种高效方式实 现。在下面原型中,参数s和t的类型是(void *),cs和ct的类型是(const void *),n的类型是size_t,c的类型是int(转换为unsigned char)。
函数原型 |
意义解释 |
void *memcpy(s,ct,n) |
从ct处复制n个字符到s处,返回s |
void *memmove(s,ct,n) |
从ct处复制n个字符到s处,返回s,这里的两个段允许重叠 |
int memcmp(cs,ct,n) |
比较由cs和ct开始的n个字符,返回值定义同strcmp |
void *memchr(cs,c,n) |
在n个字符的范围内查寻c在cs中的第一次出现,如果找到,返回该位置的指针值,否则返回NULL |
void *memset(s,c,n) |
将s的前n个字符设置为c,返回s |
3. 头文件 #include <stdlib>或者#include <stdlib.h>
函数原型 |
功能 |
返回值 |
说明 |
void abort(void) |
终止程序执行 |
不能结束工作 |
|
void exit(int) |
终止程序执行 |
做结束工作 |
|
double atof(const char *s) |
将s所指向的字符串转换成实数 |
实数值 |
|
int atoi(const char *s) |
将s所指向的字符串转换成整数 |
整数值 |
|
long atol(const char *s) |
将s所指的字符串转换成长整数 |
长整数值 |
|
int rand(void) |
产生一个随机整数 |
随机整数 |
|
void srand(unsigned int) |
初始化随机数产生器 |
||
int system(const char *s) |
将s所指向的字符串作为一个可执行文件,并加以执行 |
4.头文件<algorithm>
max(a, b) |
求两个数中的大数 |
大数 |
参数为任意类型 |
min(a,b) |
求两个数中的小数 |
小数 |
参数为任意类型 |
4. 头文件<climits>或<limits.h>
name | expresses | min. magnitude* |
---|---|---|
CHAR_BIT | Number of bits for a char object (byte) | 8 |
SCHAR_MIN | Minimum value for an object of type signed char | -127 |
SCHAR_MAX | Maximum value for an object of type signed char | 127 |
UCHAR_MAX | Maximum value for an object of type unsigned char | 255 |
CHAR_MIN | Minimum value for an object of type char | either SCHAR_MIN or 0 |
CHAR_MAX | Maximum value for an object of type char | either SCHAR_MAX or UCHAR_MAX |
MB_LEN_MAX | Maximum number of bytes in a multibyte character, for any locale | 1 |
SHRT_MIN | Minimum value for an object of type short int | -32767 |
SHRT_MAX | Maximum value for an object of type short int | 32767 |
USHRT_MAX | Maximum value for an object of type unsigned short int | 65535 |
INT_MIN | Minimum value for an object of type int | -32767 |
INT_MAX | Maximum value for an object of type int | 32767 |
UINT_MAX | Maximum value for an object of type unsigned short int | 65535 |
LONG_MIN | Minimum value for an object of type long int | -2147483647 |
LONG_MAX | Maximum value for an object of type long int | 2147483647 |
ULONG_MAX | Maximum value for an object of type unsigned int | 4294967295 |