搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 收到3位十六进制数据,请问怎么转化为十进制数。
标题:
收到3位十六进制数据,请问怎么转化为十进制数。
只看楼主
dianbao
等 级:
新手上路
帖 子:6
专家分:0
注 册:2019-6-12
结帖率:
0
楼主
已结贴
√
问题点数:20 回复次数:5
收到3位十六进制数据,请问怎么转化为十进制数。
收到3位十六进制数据格式为二进制补码形式,例如 0xA58452。要转换为十进制数。
请问有什么办法能够处理吗?
搜索更多相关主题的帖子:
位数
十六进制
转化
十进制
办法
2019-06-12 11:18
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
2
楼
得分:10
你这个 0xA58452 是什么类型,int、字符串 ?
你想将它转化为什么类型,int类型的10847314,还是字符串类型的"10847314" ?
2019-06-12 12:03
dianbao
等 级:
新手上路
帖 子:6
专家分:0
注 册:2019-6-12
第
3
楼
得分:0
回复 2楼 rjsp
我像转换为int型,请问需要怎么样的一个操作呢?;)
2019-06-13 09:01
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
4
楼
得分:0
以下是引用
dianbao
在2019-6-13 09:01:19的发言:
我像转换为int型,请问需要怎么样的一个操作呢?;)
“数”本身是没有所谓的“进制”概念的,只有数的“表达”才有。
比如 unsigned a = 0x0C;
a的值 就是十六进制
0x0C
表示的那个数,就是十进制
12
表示的那个数,就是八进制
014
表示的那个数,就是中文
十二
表示的那个数,就是洋文
twelve
表示的那个数,……
你
不能
说 a 是十六进制格式的,或 a 是十进制格式的,或 a 是中文的,或 a 是洋文的,……。
所以
int(0xA58452) 转化为 十进制
在逻辑上就不通,因为“数”本身不存在“进制”概念。
仅当“数的表达”才可能有“进制”概念
比如要求
将 int(0xA58452) 以十进制格式表达出来
,那么就是
printf("%d",0xA58452)
;
2019-06-13 09:29
dianbao
等 级:
新手上路
帖 子:6
专家分:0
注 册:2019-6-12
第
5
楼
得分:0
回复 4楼 rjsp
感谢版主的耐心解答,我自己这几天也去了解了一些相关资料,包括有关数据在计算机中的存储形式、位运算等,问题已经得到解决了,感谢!
2019-06-14 16:27
燕小六
来 自:北京
等 级:
业余侠客
威 望:
3
帖 子:49
专家分:247
注 册:2017-11-29
第
6
楼
得分:10
可以用stdlib的函数,itoa atoi
2019-06-17 16:26
6
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-495223-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.588491 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved