C语言中16进制数0x10和0xa有什么区别?

如题所述

我门通常用的是十进制,也就是逢十进1,也就是可以用
0,1,2,3,4,5,6,7,8,9表示个位,当到十的时候就进了一位,变成了两位10

同理,八进制是逢八进1,也就是可以用
0,1,2,3,4,5,6,7表示个位,当到八的时候变成了两位10,我们在八进制数10前面加上0,八进制数10就变成了010了,010表示8,015表示1*8+5=13,那么我门再看一个数046表示多少呢?表示4*8+6=42

同理,十六进制是逢十六进1,也就是可以用
0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f表示个位,其中a,b,c,d,e,f分别表示十进制中的10,11,12,13,14,15,在十六进制小于十六的都是用一位来表示,当数等于16的时候就要进位了,变成了10,我们为了和十进制区别,在10前面加0x10,表示这个数是用16进制表示的,那么0x10由于是逢16进一,所以0x10表示的不是10,而是16,所以0x2a=2*16+a=2*16+10=42
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-02-06
两个都是十六进制,0xA是十进制的10,0x10是十进制的16 ;0xA是十进制的10,0xB是十进制的11,0xC是十进制的12,0xD是十进制的13,0xE是十进制的14,0xF是十进制的15,0x10是十进制的16
第2个回答  2017-12-31
我门通常用的是十进制,也就是逢十进1,也就是可以用
0,1,2,3,4,5,6,7,8,9表示个位,当到十的时候就进了一位,变成了两位10

同理,八进制是逢八进1,也就是可以用
0,1,2,3,4,5,6,7表示个位,当到八的时候变成了两位10,我们在八进制数10前面加上0,八进制数10就变成了010了,010表示8,015表示1*8+5=13,那么我门再看一个数046表示多少呢?表示4*8+6=42

同理,十六进制是逢十六进1,也就是可以用
0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f表示个位,其中a,b,c,d,e,f分别表示十进制中的10,11,12,13,14,15,在十六进制小于十六的都是用一位来表示,当数等于16的时候就要进位了,变成了10,我们为了和十进制区别,在10前面加0x10,表示这个数是用16进制表示的,那么0x10由于是逢16进一,所以0x10表示的不是10,而是16,所以0x2a=2*16+a=2*16+10=42
第3个回答  2011-02-05
0xA是十进制的10,0x10是十进制的16
第4个回答  2011-02-05
0x10 是十进制的 16
0x0a 是十进制的 10
相似回答