搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ unsigned变量问题
标题:
unsigned变量问题
只看楼主
ggyy4k
等 级:
职业侠客
帖 子:111
专家分:334
注 册:2010-6-28
结帖率:
100%
楼主
已结贴
√
问题点数:10 回复次数:8
unsigned变量问题
#include "stdio.h"
main()
{
unsigned i ;
for (i=9;i>=0;i--)
{
printf("%u\n",i);
}
getch();
}
运行时莫名其妙的输出结果,是怎么计算的?
搜索更多相关主题的帖子:
变量
unsigned
2010-08-03 09:20
sunyh1999
等 级:
版主
威 望:
14
帖 子:1178
专家分:3032
注 册:2009-5-17
第
2
楼
得分:0
顶
[
本帖最后由 sunyh1999 于 2010-8-3 11:16 编辑
]
欢迎来到我的博客:http://blog..cn/noisunyuhong
2010-08-03 09:23
lml20080
等 级:
论坛游民
帖 子:20
专家分:96
注 册:2010-8-2
第
3
楼
得分:0
unsigned int i
2010-08-03 09:28
ggyy4k
等 级:
职业侠客
帖 子:111
专家分:334
注 册:2010-6-28
第
4
楼
得分:0
回复 3楼 lml20080
楼上两位,unsigned i与unsigned int i有区别吗,unsigned i在语法上是允许的,合法的
2010-08-03 09:32
lml20080
等 级:
论坛游民
帖 子:20
专家分:96
注 册:2010-8-2
第
5
楼
得分:0
i不能=0;循环结束i变为最大值,依然进入循环
2010-08-03 09:46
will5002
等 级:
新手上路
帖 子:10
专家分:5
注 册:2010-7-18
第
6
楼
得分:0
i是个永远大于等于0的数,当递减到-1时,应为申明的是unsigned,所以在系统识别的是-1的补码就是1111111111111111,换成十进制就是65535,大于0,继续循环。
收到的鲜花
ggyy4k
于
2010-08-03 12:02
送鲜花
5朵 附言:晕,点错了分给了楼下的了,再给你5分
2010-08-03 10:24
guduyiren
等 级:
论坛游民
帖 子:6
专家分:10
注 册:2010-5-19
第
7
楼
得分:10
顶楼上的
2010-08-03 11:03
ggyy4k
等 级:
职业侠客
帖 子:111
专家分:334
注 册:2010-6-28
第
8
楼
得分:0
回复 6楼 will5002
六楼正解,刚在vc上试验过了,i=-1时的补码是4294967295
在tc上补码是65535
2010-08-03 11:59
pxhn111
等 级:
论坛游民
帖 子:15
专家分:10
注 册:2010-8-2
第
9
楼
得分:0
又学到了
2010-08-03 16:24
9
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-314656-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.450830 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved