强制数据类型转换问题

来源:互联网 发布:阿里云应用商店在哪 编辑:程序博客网 时间:2024/06/05 18:08

在编写代码中有时 需要 进行 强制类型 转换,我们都知道大数据 类型转化成小数据类型会出现截断的情况,所以一般不会做这样的转换。

其实小数据类型转换成大数据类型,使用不当也会有问题,比如下面的代码:

int i =7;

long j;

j = i;

那么j是7吗?不是,因为局部变量j没有初始化赋值,所以一开始它的值是不确定的。j=i,只是覆盖了sizeof(int)的长度,并没有覆盖sizeof(long)。

因此局部变量j需要初始化成0,才能保证j是7.


我们在写代码中也需要注意这些细节,局部变量都要赋初值,不然可能会引入一些难以发现的bug。



 

0 0