65,211
社区成员
发帖
与我相关
我的任务
分享#include<iostream>
#include<cstdlib>
using namespace std;
void printBinary(const unsigned char val)
{
for(int i=7;i>=0;i--)
if(val & (1<<i))
cout<<"1";
else
cout<<"0";
}
void main()
{
float f;
cin>>f;
unsigned char* pt;
cout<<&f<<endl;
pt=(unsigned char*)&f;
//!cout<<pt<<endl;为什么打印不出来?
for(int i=sizeof(float);i>0;i-=2)//为什么要-2?
{
printBinary(pt[i-1]);//pt[i-1]是什么意思?变量还能用[]运算符?
printBinary(pt[i]);//为什么要调用两次这个函数?
}
}