GONE274 2022-09-20 01:15 采纳率: 100%
浏览 51
已结题

用C语言来进行编写编程

编写程序打印查看97.6875和-97.6875的double型值在计算机爱iE
754存储格式按字节的十六进制值,验证是否与教材所给结果一致。同时也打印
查看97.6875和-97.6875的float型值在计算机内的IE754存储格式按字节的
十六进制值。
不会写.有没有人可以帮帮我

  • 写回答

1条回答 默认 最新

  • a5156520 2022-09-20 10:23
    关注

    一个办法就是,用一个无符号8位的整指针指向把double型和float型浮点数值的位置,然后逐字节打印其十六进制值即可。代码如下, 仅供参考,如有不对之处,请不吝赐教:
    参考链接:
    分享一个打印浮点型数据的十六进制形式的函数_GGuy的博客-CSDN博客_浮点数16进制输出
    uint8_t是什么数据类型_林一元的博客-CSDN博客_uint8_t是什么数据类型

    
    #include <stdio.h>
    #include <stdint.h>
    int main(void){
        
        double a = 97.6875;
        //https://blog.csdn.net/weixin_38324309/article/details/113108087
        //https://blog.csdn.net/qq_45512097/article/details/124458205
        uint8_t*  pa = (uint8_t*)&a;
        double b = -97.6875;
        uint8_t*  pb = (uint8_t*)&b;
        
        printf("double型%f的按字节的内存十六进制值为:\n",a);
        //printf("sizof(a)=%d,sizeof(b)=%d\n",sizeof(a),sizeof(b));
        for(int i=0;i<sizeof(a);i++){
            uint8_t ch = pa[i];
            printf("%x ",ch);
        }
        
        printf("\ndouble型%f的按字节的内存十六进制值为:\n",b);
        for(int i=0;i<sizeof(b);i++){
            uint8_t  ch = (uint8_t)pb[i];
            printf("%x ",ch);
        }
        
        float fa = 97.6875f;
        //https://blog.csdn.net/weixin_38324309/article/details/113108087
        //https://blog.csdn.net/qq_45512097/article/details/124458205
        uint8_t*  pfa = (uint8_t*)&fa;
        float fb = -97.6875f;
        uint8_t*  pfb = (uint8_t*)&fb;
        
        printf("\n\nfloat%f的按字节的内存十六进制值为:\n",fa);
        //printf("sizof(a)=%d,sizeof(b)=%d\n",sizeof(fa),sizeof(fb));
        for(int i=0;i<sizeof(fa);i++){
            uint8_t ch = pfa[i];
            printf("%x ",ch);
        }
        
        printf("\nfloat型%f的按字节的内存十六进制值为:\n",fb);
        for(int i=0;i<sizeof(fb);i++){
            uint8_t  ch = (uint8_t)pfb[i];
            printf("%x ",ch);
        }
        
        return 0;
        
    } 
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月8日
  • 已采纳回答 10月31日
  • 创建了问题 9月20日

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题