请教一个基础问题
请看以下代码, "(int&)变量 " 输出的是什么,为什么下面 "(int&)b " 是0?
float a=1.0f;
cout < < (int&)a < < endl;
cout < < ( (int)a == (int&)a ) < < endl;
float b = 0.0f;
cout < < (int&)b < < endl;
cout < < ( (int)b == (int&)b ) < < endl;
[解决办法]
把变量的值按整数输出而已。 0.0f 的所有位都是为 0 的,输出就是 0
[解决办法]
(int&)a 几乎等价于*(int *)&a