格式说明符%02x

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (48)

我有一个简单的程序:

#include <stdio.h>
int main()
{
        long i = 16843009;
        printf ("%02x \n" ,i);
}

我使用%02x格式说明符来获得2个字符输出,但是,我得到的输出是:

1010101 

而我期待它成为:01010101

提问于
用户回答回答于

你的字符串宽于你的格式宽度2.所以没有填充要完成。

用户回答回答于

%02x意味着打印至少2位数字,0如果少于这个数字,则加上它。在你的情况下,它是7位数字,所以你没有额外0的前面。

此外,%x是为int,但你有一个很长的。%08lx改为尝试。

所属标签

可能回答问题的人

  • EatRice

    16 粉丝0 提问6 回答
  • 华讯云

    0 粉丝0 提问5 回答
  • 学生

    8 粉丝476 提问4 回答
  • 富有想象力的人

    5 粉丝0 提问3 回答

扫码关注云+社区

领取腾讯云代金券