搜索

首页  >  问答  >  正文

c++ - printf 数据输出问题

ringa_leeringa_lee2766 天前549

全部回复(3)我来回复

  • PHP中文网

    PHP中文网2017-04-17 13:57:09

    %x占位符用于输出无符号整型。你拿来输出浮点型肯定不对啊。

    回复
    0
  • ringa_lee

    ringa_lee2017-04-17 13:57:09

    你可以参照:http://www.cplusplus.com/reference/cstdio/printf/

    x:是16进制的无符号整数

    你第一步已经把 0x00000001转为float了


    针对你的更新:

    %X不应该是输出数据的16进制

    虽然是16进制 但是整数才是重点

    你的f1是float

    float f1 = 0x00000001;

    回复
    0
  • 迷茫

    迷茫2017-04-17 13:57:09

    浮点数在底层运算和整形不一样,浮点数在运算时,有自己独立浮点栈,浮点栈每一寄存器80位,printf("%x"),使用的结果是浮点数直接出站的结果(结果用64位表示),所以并不是32位

    回复
    0
  • 取消回复