我有一个简单的程序:
#include <stdio.h>
int main()
{
long i = 16843009;
printf ("%02x \n" ,i);
}
我正在使用 %02x
格式说明符来获得 2 个字符的输出,
但是,我得到的输出是:
1010101
虽然我期望它是:01010101
。
最佳答案
%02x
表示至少打印 2 位数字,如果不足则在前面加上 0
。在您的情况下,它是 7 位数字,因此前面没有额外的 0
。
此外,%x
用于 int,但您有一个 long。请尝试使用 %08lx
。
关于c - 格式说明符 %02x,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18438946/