REF: https://q.cnblogs.com/q/31909/
1、对地址进行转换
int a = 0x42500000; float *f = (float *)&a; printf("%f", *f); //显示为52.00000该例子中,对于地址a的转换并没有改变内存内容,在%f输出*f时,将0x42500000按照float型布局进行了解析,最终显示52.0....
2、对内容进行转换
int a = 0x42500000;//1112539136 float f = (float)a; printf("%f", f); //显示为1112539136.000000这里f先将a的内容转换为浮点型也就是1112539136之后再将其按照float格式内存布局进行存储,也就是说此时的内存是改变了的
本文通过两个实例详细解析了整数与浮点数之间的转换方式:一是仅对地址进行转换而不改变内存内容;二是对内容进行转换并改变内存布局。这两种转换方式有助于理解数据类型在计算机内存中的表示。
1589

被折叠的 条评论
为什么被折叠?



