暂且按照我的理解回答一下:对于一个以IEEE754格式存储的二进制数据,转换成浮点型数据
unsigned long binary = 0x45600000;float f;char *pbinary = (char *)&binary;char *pf = (char *)&f;memcpy(pf, pbinary , sizeof(float));
这样就可以把一个IEEE754格式的数据拷贝到一个float型数据的空间,然后按照float方式读取处理,就可以自动完成转换了。这样的好处是避免了硬编码去实现转换,以免出错。当然也可以参照IEEE745的标准,取出S、E、和M的值,然后按照标准中的定义来解释不同的值。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(1)
暂且按照我的理解回答一下:
对于一个以IEEE754格式存储的二进制数据,转换成浮点型数据
unsigned long binary = 0x45600000;
float f;
char *pbinary = (char *)&binary;
char *pf = (char *)&f;
memcpy(pf, pbinary , sizeof(float));
这样就可以把一个IEEE754格式的数据拷贝到一个float型数据的空间,然后按照float方式读取处理,就可以自动完成转换了。
这样的好处是避免了硬编码去实现转换,以免出错。
当然也可以参照IEEE745的标准,取出S、E、和M的值,然后按照标准中的定义来解释不同的值。