|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 新手,请各大侠帮忙!谢谢
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
750
人关注过本帖
标题:
新手,请各大侠帮忙!谢谢
只看楼主
加入收藏
u2jrmao
等 级:
论坛游民
帖 子:20
专家分:11
注 册:2010-3-25
结帖率:
100%
楼主
收藏
已结贴
√
问题点数:20 回复次数:8
新手,请各大侠帮忙!谢谢
#include<stdio.h>
viod main()
{
int a,b;
a=32767;
b=a+1;
printf("%d,%d\n",a,b);
}
既然int 取值范围是-32768~32767;为什么上述输出的是32767,32768;
[
本帖最后由 u2jrmao 于 2010-4-3 17:33 编辑
]
2010-04-03 17:12
举报帖子
使用道具
赠送鲜花
断魂雁
等 级:
新手上路
帖 子:10
专家分:3
注 册:2010-4-3
第
2
楼
收藏
得分:3
不是啊,输出的结果是 32767,-32768
你再试试啊
2010-04-03 18:00
举报帖子
使用道具
赠送鲜花
hahayezhe
来 自:湖南张家界
等 级:
贵宾
威 望:
24
帖 子:1386
专家分:6999
注 册:2010-3-8
第
3
楼
收藏
得分:5
long
2010-04-03 18:13
举报帖子
使用道具
赠送鲜花
ltyjyufo
来 自:未来
等 级:
蜘蛛侠
威 望:
2
帖 子:353
专家分:1166
注 册:2009-10-25
第
4
楼
收藏
得分:3
二楼说的对,输出结果是
32767,-32768
你可以把他理解为一个循环,就是32767再往上加1,就变为了-32768了,就是进位了嘛。。。。
翱翔天空的雄鹰固然令人羡慕,却容易被禁锢于牢笼之中,只有那夜色中的蝙蝠才是真正自由的飞翔者....
2010-04-03 18:16
举报帖子
使用道具
赠送鲜花
u2jrmao
等 级:
论坛游民
帖 子:20
专家分:11
注 册:2010-3-25
第
5
楼
收藏
得分:0
我用的是Visual c 6.0编译器 是不是这个问题呢 总之输出答案都是一样
2010-04-03 19:21
举报帖子
使用道具
赠送鲜花
美苏争霸
等 级:
新手上路
帖 子:7
专家分:1
注 册:2010-4-3
第
6
楼
收藏
得分:0
嘿嘿 路过
2010-04-03 19:25
举报帖子
使用道具
赠送鲜花
ggvvcc
来 自:山东临沂
等 级:
论坛游侠
帖 子:50
专家分:119
注 册:2010-4-3
第
7
楼
收藏
得分:9
在TC中一个整型数据占2个字节,而在VC中一个整型数据占4个字节,所以你加1它是不会溢出的。
2010-04-03 20:02
举报帖子
使用道具
赠送鲜花
韩明海
等 级:
蝙蝠侠
帖 子:253
专家分:749
注 册:2010-4-3
第
8
楼
收藏
得分:0
不同系统Inct的长度不同,C规则是把char作为一个字节标准,但是有的机器上char是16位的,所以int两个节,是32位。
也就是我们常说的四个字节
2010-04-03 23:26
举报帖子
使用道具
赠送鲜花
瞪谁谁怀孕
来 自:广西壮族自治区柳州市
等 级:
新手上路
帖 子:1
专家分:0
注 册:2010-4-1
第
9
楼
收藏
得分:0
TC已经濒临淘汰,楼主换个编译器吧!
2010-04-04 05:32
举报帖子
使用道具
赠送鲜花
9
1/1页
1
快速回复:
新手,请各大侠帮忙!谢谢
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.020191 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved