浮点数的位码问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 11:05:56
#include<iostream>
using namespace std;
int main(){
float f=19.2f;
unsigned int* pa=reinterpret_cast<int*>(&f);
for(int i=31;i>=0;i--)
cout<<(*pa>>i&1)<<(i==31||i==23?"-":"");
cout<<"\n";
}//========================================================
VS2005编译错误?什么回事啊????

你好,我没有安装VS2005,所以我通过VC++编译通过:
#include<iostream>
using namespace std;
int main(){
float f=19.2f;
unsigned int* pa=reinterpret_cast<unsigned int*>(&f); //类型要相同,都是unsigned int
for(int i=31;i>=0;i--)
cout<<(*pa>>i&1)<<(i==31||i==23?"-":"");
cout<<"\n";
return 0;//要有返回值
}

cout<<"\n"; 的下一行加return=0