| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1580 人关注过本帖
标题:[讨论]请问有谁知道(编程的)8进制转换为10进制的原理
取消只看楼主 加入收藏
lmr
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2004-12-9
收藏
 问题点数:0 回复次数:4 
[讨论]请问有谁知道(编程的)8进制转换为10进制的原理

我已经有了这个的程序,但对里面的算法不清楚,Who can help me?

main() { char *p,s[6];int n; p=s; gets(p); n=0; while(*(p)!='\0') {n=n*8+*p-'0'; p++;} /*关键是这一句,没能悟出原理来,请帮忙*/ printf("%d",n); }

搜索更多相关主题的帖子: 进制 原理 int main 
2005-01-10 15:39
lmr
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2004-12-9
收藏
得分:0 
Thank you!
2005-01-10 17:46
lmr
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2004-12-9
收藏
得分:0 
哪位高手有更好或更明了的设计方案,请告之,Thank you!
2005-01-19 10:30
lmr
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2004-12-9
收藏
得分:0 
[QUOTE]n=n*8+*p-'0';[/QUOTE]
 对这句中的-'0'作用不明白,好像它是没有用的,但没了它,却就不能得到正确的答案来。谁能帮我解释,谢谢!是否与字符类型有关,因为这一句:char *p;
2005-03-01 16:19
lmr
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2004-12-9
收藏
得分:0 
对不起,也许我明白了,我的理解是:(*p-'0')才相当把字符型的转换为整型数的大小了。
2005-03-01 16:26
快速回复:[讨论]请问有谁知道(编程的)8进制转换为10进制的原理
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015832 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved