我有一个简单的程序:
#include <stdio.h>
int main()
{
long i = 16843009;
printf ("%02x \n" ,i);
}
我正在使用
%02x
格式说明符来获取2个字符的输出,但是,我得到的输出是:
1010101
我期望它是:
01010101
。 最佳答案
%02x
表示打印至少2位数字,如果少于2位,则在其前面加上0
。您的情况是7位数字,因此前面没有多余的0
。
另外,%x
是int的,但是你很长。请尝试%08lx
。