如何打印字节为十六进制

 我来答
栗子等
2017-06-26 · 超过32用户采纳过TA的回答
知道答主
回答量:111
采纳率:0%
帮助的人:30.3万
展开全部

要输出2个字节的16进制数,可以在printf中使用%02x或者%02X格式,同时将值转为unsigned char型。
一、printf为格式化输出函数,可以将变量以各种格式化方式输出。
二、格式化输出16进制的格式字符串为%x或%X。
当输出的16进制数带有字母a~f时,两种格式字符串输出结果会有区别:
1、%x格式,那么输出的是小写的a~f;
2、%X格式,那么输出的是大写的A~F.
三、要固定输出两个字节,可以使用%02x或者%02X,其中02的意思是,输出2个字节,不足补0. 不过如果实际值超过2字节,这个就会输出实际值了。
所以要绝对输出2字节,需要将数值转为unsigned char型,保证输出不会超过。
即将n以2字节16进制输出,写作:

printf("%02x",(unsigned char)n);

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式