我有一个简单的程序:
#include <stdio.h>
int main()
{
long i = 16843009;
printf ("%02x \n" ,i);
}
我在用%02x
格式说明符以获得 2 个字符输出,
但是,我得到的输出是:
1010101
虽然我期待它是:01010101
.
%02x
表示打印至少 2 位数字,并在其前面加上0
如果少的话。在你的情况下它是 7 位数字,所以你不会得到额外的0
在前。
Also, %x
是 int,但你有一个 long。尝试%08lx
反而。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)