5.4 类型转换

VS2010上运行得到的结果

注意:(int)a和(int&)a的操作不同,其汇编代码如下所示:

int a1 = (int)a;
011E1873  fld         dword ptr [a]  
011E1876  call        @ILT+285(__ftol2_sse) (11E1122h)  
011E187B  mov         dword ptr [a1],eax  
    int a2 = (int&)a;
011E187E  mov         eax,dword ptr [a]  
011E1881  mov         dword ptr [a2],eax  

(int)a有一个浮点数到整数的转换操作

(int&)则是直接按读取整型数据的方式读取浮点数据

posted @ 2015-08-25 10:27  Rosanne  阅读(104)  评论(0编辑  收藏  举报