如何在c中将unsigned char打印成人类可读的格式?

时间:2013-11-30 23:47:04

标签: c char

我想以这种格式打印unsigned char: 0xff。我怎么能这样做?感谢。

5 个答案:

答案 0 :(得分:1)

printf("0x%02X", value & 0xFF);

如果您希望值始终为2个字符。 “& 0xFF”也会避免在前面印上很多“F”的某些值(有时会发生)

答案 1 :(得分:1)

%x是打印unsigned int的基本转换说明符(当传递给以十六进制表示的可变参数函数,例如unsigned char时,printf()转换为%02x格式用小写字母。如果您想要前导零和至少两位数,请使用0x。此外,如果您还需要#前缀,请添加"%#02x" 修饰符。所以你的格式字符串看起来像

{{1}}

答案 2 :(得分:0)

printf("0x%x\n", variable);

访问printf documentation页面了解更多详情

答案 3 :(得分:0)

%x是您要查找的格式说明符。

printf("0x%x\n",your_char);

答案 4 :(得分:0)

对于字符我使用

printf("0x%hhx\n",your_char);