1. atoi
atoi:将字符串转换为整数。
1. 头文件 <string.h>
2. 声明:
1. 如果字符串开始有空格,直接跳过。
2. + - 会影响打印的数字的正负。
3. 只打印数字字符,遇到非数字字符就停止。
4. 如果转换之后的数字大于 INT_MAX ,就输出 INT_MAX
如果转换之后的数字小于 INT_MIN ,就输出 INT_MIN
2. isspace
检查字符是否为空格。
1. 头文件 <ctype.h>
2. 声明:
int c :将需要检查的字符 c 强制转换成 int 类型或 EOF。
如果 c 确实是空格字符,则返回不同于零的值( true),否则返回0(false)。
3. isdigit
检查字符是否为十进制数字字符。
1. 头文件 <ctype.h>
2. 声明:
int c :将需要检查的字符 c 强制转换成 int 类型或 EOF。
如果 c 确实是十进制数字字符,则返回不同于零的值( true),否则返回0(false)。
4. 预定义的宏 INT_MAX 和 INT_MIN
INT_MAX 和 INT_MIN 是 C语言 的两个预定义宏,代表了整型变量能够存储的最大正整数2147483647( 2^31 − 1 )和最小负整数 -2147483648 ( -2^31 )。这个值是相对于二进制补码表示的,也就是说,负数的范围比正数大 1,这两个宏在头文件 <limits.h> 中定义。
溢出问题
在整型变量中,所有超过INT_MAX和INT_MIN数,都会出现溢出,出现 warning,但是并不会出现error。如果想表示的整数超过了该限值,可以使用长整型 long long 占8字节64位。
· 最轻微的上溢是 INT_MAX + 1,结果是 INT_MIN。
· 最严重的上溢是 INT_MAX + INT_MAX,结果是 -2。
· 最轻微的下溢是 INT_MIN - 1,结果是是 INT_MAX。
· 最严重的下溢是 INT_MIN + INT_MIN,结果是 0。