5.2.10 Reinterpret cast
10 An lvalue expression of type T1 can be cast to the type
"reference to T2" if an expression of type "pointer to
T1" can be explicitly converted to the type "pointer to
T2" using a reinterpret_cast. That is, a reference cast
reinterpret_cast<T&>(x) has the same effect as the conversion
*reinterpret_cast<T*>(&x) with the built-in & and * operators.
The result is an lvalue that refers to the same object as the
source lvalue, but with a different type. No temporary is created,
no copy is made, and constructors (12.1) or conversion functions
(12.3) are not called.
转自水木社区CPlusPlus版
----------------------------
#include <iostream>
using namespace std;
int main()
{
float f = 1.0;
int i = *reinterpret_cast<int*>(&f);
cout<<"i="<<i<<endl;
cout<<"(int&)f = "<<(int&)f<<endl;
return 0;
}