| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 822 人关注过本帖
标题:C语言格式符问题
只看楼主 加入收藏
gggui
Rank: 2
来 自:中国海南
等 级:论坛游民
帖 子:33
专家分:22
注 册:2010-4-24
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
C语言格式符问题
我是C语言初学者,在书中看到下例不明白
int i=-1
printf("%d,%o",i,i)
结果输出为-1,177777   为什么不是-1,-01(-1的八进制表示不是-01吗)177777是怎么来的看不明白,哪位大虾解释一下
搜索更多相关主题的帖子: C语言 符问题 格式 
2010-04-29 08:23
ldg628
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:3
帖 子:526
专家分:3036
注 册:2009-6-23
收藏
得分:2 
在计算机系统中,数值用补码形式来存储
楼主可以查一下补码相关资料
2010-04-29 08:39
gggui
Rank: 2
来 自:中国海南
等 级:论坛游民
帖 子:33
专家分:22
注 册:2010-4-24
收藏
得分:0 
回复 2楼 ldg628
-1的补码是16个1111111111111111,那怎么又输出177777呢?能讲清楚点吗?
2010-04-29 09:56
chengstone
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
帖 子:562
专家分:226
注 册:2004-4-3
收藏
得分:10 
一:
按照我说的步骤来,点击计算机左下角的 开始->程序->附件->计算器
打开以后点击计算器程序的菜单项 查看->科学型
然后在面板中选择八进制,输入177777
然后在面板中选择二进制,看到了么 16个1

二:你知道-1的补码是多少就好办了,会二进制转十进制么?如果会的话学习一下二进制转八进制,你将得到正确的答案了。

[ 本帖最后由 chengstone 于 2010-4-29 10:56 编辑 ]

qq:69558139
2010-04-29 10:06
守候
该用户已被删除
收藏
得分:5 
提示: 作者被禁止或删除 内容自动屏蔽
2010-04-29 10:09
ldg628
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:3
帖 子:526
专家分:3036
注 册:2009-6-23
收藏
得分:3 
回复 3楼 gggui

1 111 111 111 111 111
1  7   7   7   7   7

16个1的八进制表示就是177777
2010-04-29 10:13
wangsx
Rank: 1
等 级:新手上路
帖 子:13
专家分:1
注 册:2008-12-3
收藏
得分:0 
学习了,
2010-04-29 10:17
gggui
Rank: 2
来 自:中国海南
等 级:论坛游民
帖 子:33
专家分:22
注 册:2010-4-24
收藏
得分:0 
谢谢大家
2010-04-29 10:34
快速回复:C语言格式符问题
数据加载中...
 
   



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

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