| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 10461 人关注过本帖, 1 人收藏
标题:0xffffffff为什么是-1?
只看楼主 加入收藏
xzy199999
Rank: 4
等 级:业余侠客
帖 子:326
专家分:286
注 册:2010-11-19
结帖率:92.45%
收藏(1)
已结贴  问题点数:20 回复次数:11 
0xffffffff为什么是-1?
int i=0xffffffff;
printf("i=%d\n",i);

结果是-1,为什么呢?
搜索更多相关主题的帖子: 男朋友 
2012-04-06 19:03
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
本意是0!十六进制!
可能是溢出的原因吧!

用心做一件事情就这么简单
2012-04-06 19:11
smallmoon521
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:4
帖 子:517
专家分:1373
注 册:2008-4-21
收藏
得分:0 
请看下补码部分的知识

为游戏狂~~!!    大家努力编哈!
2012-04-06 19:13
xzy199999
Rank: 4
等 级:业余侠客
帖 子:326
专家分:286
注 册:2010-11-19
收藏
得分:0 
能详细说说吗

我是初学者
2012-04-06 19:35
wuya156
Rank: 2
等 级:论坛游民
帖 子:29
专家分:38
注 册:2010-3-11
收藏
得分:0 
楼上正解,补码-1就是ff
2012-04-06 19:37
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
补码,去看看计算机基础吧

总有那身价贱的人给作业贴回复完整的代码
2012-04-06 20:18
share32
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:214
专家分:663
注 册:2011-12-1
收藏
得分:20 
内存里面都是使用补码形式保存的。

其中正数的补码和原码相同

负数补码等于源码-〉反码 + 1;

对于 i=0xffffffff

ffffffff转换为二进制为 1111 1111 1111 1111 1111 1111 1111 1111

i(补)=0x80000000+0x1=0x80000001

二进制为1000 0000 0000 0000 0000 0000 0000 0001

为-1

另外如果使用%u 输出,这样作为无符号数字,因为最高为也用来表示数字本身,所以按照会你理解的数字大小表示。
2012-04-06 21:15
cuijunchao
Rank: 5Rank: 5
来 自:湖南桂东
等 级:职业侠客
威 望:3
帖 子:132
专家分:386
注 册:2012-4-4
收藏
得分:0 
在计算机里面那数是以补码形式表示,但在输出时应该是进行了转化的,不可能输出补码吧。我认为应该是超出了int形的范围,int是16位内存的,它只表示能存储2的16次方个不同数,一次只存一个有这么多种可能,把它换算成存储的整形,加上有符号位,实际大小会变成2的16次方的一半。再考虑中间零的作用,正整数为一半减一个,负数为一半。无符号形,unsigned则可表示大点的整数,最大为2的16次方减一个。所以你的数据已经超出了范围,变成了负数。改为Long形就好了。
2012-04-07 08:59
wangxiaohu
Rank: 2
等 级:论坛游民
帖 子:19
专家分:29
注 册:2012-4-4
收藏
得分:0 
-1的补码就是0xff呀

细节!细节!细节!
2012-04-07 11:14
未来打开心
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-3-8
收藏
得分:0 
2014-03-08 15:22
快速回复:0xffffffff为什么是-1?
数据加载中...
 
   



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

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