二进制/十六进制转浮点数的编程(互转类似)

转换的程序:应用:原理就是复制内存数据再以不同的数据类型来解释。推荐:http://www.cnblogs.com/roucheng/p/cpp11.html

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

转换的程序:

// 输入十进制整数,输出同样内存排布的float表示   
inline float i2f(int i)   
{   
    float f = 0;   
    assert(sizeof(int) == sizeof(float));   
    memcpy(&f, &i, 4);   
    return f;   
}   
   
inline double ll2d(long long ll)   
{   
    double d = 0;   
    assert(sizeof(double) == sizeof(long long));   
    memcpy(&d, &ll, 8);   
    return d;   
}   /* 何问起 hovertree.com */

 应用:

int i = -1052770304;    // 反汇编看到的值是这样,实际是个float型,=-12.0   
float f = i2f(i);   
printf("f=%f\n", f);   
   
long long ll = 0x4004000000000000L;     // 内存里显示成这样。 实际是double型2.5   
double d = ll2d(ll);   
printf("d=%f\n", d);  /* 何问起 hovertree.com */

原理就是复制内存数据再以不同的数据类型来解释。

推荐:http://www.cnblogs.com/roucheng/p/cpp11.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/120480.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Eclipse项目环境配置

    【1】环境变量配置安装好Eclipse,jdk后,我们不可避免需要配置如下环境变量。【JAVA_HOME】JAVA_HOME=C:\ProgramFiles\Java\jdk1.8.0_101【CLASSPATH】如果系统中已有该变量属性,只需要添加如下到变量值最前:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;…

  • Robotium DialogUtils「建议收藏」

    Robotium DialogUtils「建议收藏」packagecom.robotium.solo;importandroid.app.Activity;importandroid.content.Context;importandroid.os.SystemClock;importandroid.view.ContextThemeWrapper;importandroid.view.View;impo

  • Python通过代理多线程抓取图片

    Python通过代理多线程抓取图片Python通过代理多线程抓取图片

  • 木马免杀原理

    木马免杀原理##木马免杀原理###一、实验目的1.了解杀毒软件特征码查杀病毒的基本原理2.掌握木马特征码免杀的原理和方法###二、实验环境1.系统环境:Windows环境,XP环境2.软件工具:灰鸽

  • vector释放内存之swap方法

    相信大家看到swap这个词都一定不会感到陌生,就是简单的元素交换。但swap在C++STL中散发着无穷的魅力。下面将详细的说明泛型算法swap和容器中的swap成员函数的使用!1.泛型算法swa

    2021年12月28日
  • u盘越狱卡代码怎么办_使用爱思助手制作越狱U盘教程

    u盘越狱卡代码怎么办_使用爱思助手制作越狱U盘教程U盘越狱iPhone绕ID最新教程及各种坑解决,吐血之作(超详细超简单教程)-balenaEtcher-Checkm8-bootra1n这是安装多个苹果版本及虚拟机版本后成功的教程,由于资源上传到百度云盘下载只有几十KB,所以为了大家能够尽快的体验上苹果系统,文章中涉及的所有工具请大家加QQ群进行交流下载:1064543120一、工具下载准备一台Windows系统电脑准备一个>2G存储U盘下载群文件中balenaEtcher、Checkm8.info_iCloudBypass、bootr

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号