我在 C++ 中运行这段代码:
#include <iostream>
using namespace std;
int main()
{
float f = 7.0;
short s = *(short *)&f;
cout << sizeof(float) << endl
<< sizeof(short) << endl
<< s << endl;
return 0;
}
我得到以下出锅:
4 2 0
但是,在斯坦福大学的一次演讲中,Jerry Cain 教授说他确信底池不会是 0。
讲座会很喜欢这里。他说,大约 48 分钟。
他是错的,还是从那以后发生了一些标准变化?还是平台之间有区别?
我正在使用 g++ 编译我的代码。
编辑:在下一次讲座中,他确实提到了“大端”和“小端”,并说它们会很好地影响结果。