讲数据的溢出之前先把每个类型的数据范围列个表格

数据过大和溢出

通过这个表格,也解释了为什么在说char演示时,十六进制表示时,96的十六进制,为什么要写成'\u0061'的形式,而不是直接'\u61'。而且通过这个表格我们也观察到,整数类型的数据范围其实就是[-2的(占位*8-1)次方,2的(占位*8-1)次方-1]。这是因为1字节=8位二进制位,为什么要减1,只是因为最高位是符号位。这样想就好理解多了,省的死记。

数据过大和溢出

现在说一下溢出。

当要表示的数据超出数据类型的临界范围时,称为溢出。溢出情况发生时程序并没有做出数据范围检查,此时会出现数据紊乱情况。下面写程序说明。

数据过大和溢出

数据过大和溢出

数据过大和溢出

同理

数据过大和溢出

最后来张图来表示一下溢出的过程。

数据过大和溢出

相关文章: