强制类型转换
格式
float avg; int sum; avg = 1.0 * sum / cnt; //1.0默认是double类型,最终输出了float类型的数据
<a name="MkeO8"></a>
# 浮点数的存储所带来的问题
- **float和double都不能保证可以完全精确地存储一个小数**;
- **举例**
```c
有一个浮点型变量x,如何判断x的值是否为零?
if(|x-0.000001| <= 0.000001)
是零;
else
不是零;
-
数据大小端的区分
数据中的高低位
0x11223344中的左侧,即“11”为高位,“44”为低位;
内存中的高低位
-
大端模式
高位数据**存放在**低地址位置(符合常规阅读方式): | 低地址 | —-> | —-> | 高地址 | | :—-: | :—-: | :—-: | :—-: | | 11 | 22 | 33 | 44 |
小端模式
- 高位数据存放在高地址位置,低位数据**存放在**低地址位置(逆序阅读): | 低地址 | —-> | —-> | 高地址 | | :—-: | :—-: | :—-: | :—-: | | 44 | 33 | 22 | 11 |