打印
[牛人杂谈]

二进制数、八进制数和十六进制数的输出

[复制链接]
531|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
语言中常用的整数有 short、int 和 long 三种类型,通过 printf 函数,可以将它们以八进制、十进制和十六进制的形式输出。上节我们讲解了如何以十进制的形式输出,这节我们重点讲解如何以八进制和十六进制的形式输出,下表列出了不同类型的整数、以不同进制的形式输出时对应的格式控制符:

十六进制数字的表示用到了英文字母,有大小写之分,要在格式控制符中体现出来:
%hx、%x 和 %lx 中的x小写,表明以小写字母的形式输出十六进制数;
%hX、%X 和 %lX 中的X大写,表明以大写字母的形式输出十六进制数。

八进制数字和十进制数字不区分大小写,所以格式控制符都用小写形式。如果你比较叛逆,想使用大写形式,那么行为是未定义的,请你慎重:
有些编译器支持大写形式,只不过行为和小写形式一样;
有些编译器不支持大写形式,可能会报错,也可能会导致奇怪的输出。
注意,虽然部分编译器支持二进制数字的表示,但是却不能使用 printf 函数输出二进制,这一点比较遗憾。当然,通过转换函数可以将其它进制数字转换成二进制数字,并以字符串的形式存储,然后在 printf 函数中使用%s输出即可。


使用特权

评论回复
沙发
小夏天的大西瓜| | 2023-2-14 08:45 | 只看该作者
按权相加法  除基取余法  乘基取整法

使用特权

评论回复
板凳
AdaMaYun| | 2023-2-24 14:40 | 只看该作者
八进制计算机比较常见,十六进制用来表示二进制比较方便

使用特权

评论回复
地板
zhuotuzi| | 2023-2-25 20:00 | 只看该作者
八进制没用过,都是用16进制,10进制。

使用特权

评论回复
5
捉虫天师| | 2023-2-28 09:47 | 只看该作者
我只用过16进制,10进制的。

使用特权

评论回复
6
szt1993| | 2023-2-28 11:37 | 只看该作者
八进制早期计算机中比较常见

使用特权

评论回复
7
LOVEEVER| | 2023-2-28 14:41 | 只看该作者
我也没用过八进制

使用特权

评论回复
8
中国龙芯CDX| | 2023-2-28 14:41 | 只看该作者
现在基本都是用2进制、10进制和16进制的

使用特权

评论回复
9
小小蚂蚁举千斤| | 2023-2-28 15:32 | 只看该作者
2 10 16 用的多,8的没用过

使用特权

评论回复
10
AloneKaven| | 2023-3-1 19:46 | 只看该作者
没怎么见过8进制应用场景

使用特权

评论回复
11
tpgf| | 2023-3-7 15:09 | 只看该作者
我们在什么情况下应用八进制的数据呢

使用特权

评论回复
12
wakayi| | 2023-3-7 15:19 | 只看该作者
估计只有在特定的场合会使用八进制的数据

使用特权

评论回复
13
wowu| | 2023-3-7 15:41 | 只看该作者
在航空电子设备中,ARINC 429字标签几乎总是以八进制表示

使用特权

评论回复
14
xiaoqizi| | 2023-3-7 16:00 | 只看该作者
一般情况下我们使用八进制的数据还是都比较慎重的

使用特权

评论回复
15
木木guainv| | 2023-3-7 16:26 | 只看该作者
有一些地方,Windows和javascript自动决定前缀为零的数字是八进制并转换数字

使用特权

评论回复
16
磨砂| | 2023-3-7 16:38 | 只看该作者
最一开始的时候八进制的数据是在什么情况下产生的呢

使用特权

评论回复
17
averyleigh| | 2023-3-11 21:47 | 只看该作者
字符串转整数,需要把代码转换过来吗?

使用特权

评论回复
18
sdlls| | 2023-3-14 10:31 | 只看该作者
如果使用串口,最坑的还是汉字的              

使用特权

评论回复
19
mmbs| | 2023-3-14 10:59 | 只看该作者
直接输出16进制就行。              

使用特权

评论回复
20
louliana| | 2023-3-14 11:26 | 只看该作者
在 printf 函数中这些都是必须要用的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

158

主题

3008

帖子

2

粉丝