c中如何对浮点数进行位运算?如果不能,怎么读取浮点数二进制内容?
AQC学弟 2020-01-15 07:21:44 #include <stdlib.h>
#include <stdio.h>
double itobs(double n,char *ps)
{
double s=0;
int i;
int size=8*sizeof(double);
for(i=size-1;i>=0;i--,n>>=1)
{
s|=(1&n);
s>>=1;
}
return s;
}
int main(void)
{
double num;
char str[65];
scanf("%lf",&num);
itoa(itobs(num,str),str,16);
printf("%s",str);
return 0;
}
想通过如上方式改成内码的16进制,但是编译通不过,不能对double操作