printf与十六进制

如何用printf输出十六进制

CSP里面用到十六进制的地方还是挺多的,所以记录一下如何输出十六进制数据。

1
2
3
4
5
int a = 0xf;
printf("%x\n", a); //x为小写时,输出a~f
printf("%X\n", a); //注意这里的X为大写,输出时A~F为大写
printf("%4x\n", a); //补齐为4位,左边补空格
printf("%04x\n", a); //补齐为4位,左边补0

结果

1
2
3
4
f
F
f
000f
0%