我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 求助:c++高手请进,怎么该程序进入死循环了。。。。 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

ljpdxj



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 687
威望: 0
浮云: 1108
在线等级:
注册时间: 2006-02-28
最后登陆: 2008-06-29

5come5帮你背单词 [ zinc /ziŋk/ n. 锌 ]


求助:c++高手请进,怎么该程序进入死循环了。。。。

Quote:

#include<iostream.h>

void main()
{
  char array[200];
  for(char ch=0;ch<200;ch++)
  {   array[ch]=07;
    cout<<array[ch];
  }
}

程序怎么进入无限循环了??? 把我机子卡在那了...怎么也结束不了~~~
高手解释下,多谢~ 如果上面for循环里面的变量ch改为int型就好了....
里面到底是什么机制?
我就想问下如果用char ch,结果why会这样?
顶端 Posted: 2007-03-25 20:31 | [楼 主]
ljpdxj



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 687
威望: 0
浮云: 1108
在线等级:
注册时间: 2006-02-28
最后登陆: 2008-06-29

5come5帮你背单词 [ hurl /hə:l/ n. & v. 用力投掷 ]


我靠。懂了。。。。。
char类型最大127~~~
顶端 Posted: 2007-03-25 20:42 | [1 楼]
zc1984





性别: 帅哥 状态: 该用户目前不在线
头衔: 上帝模式
等级: 荣誉会员
家族: 战略研究所
发贴: 10096
威望: 5
浮云: 0
在线等级:
注册时间: 2004-08-24
最后登陆: 2017-06-08

5come5帮你背单词 [ authorize /'o:θəraiz/ vt. 授权,委托,许可,批准 ]


Ill-defined for-loop: 'char' values are always of range '-128' to '127'. Loop executes infinitely

so, Index '-128' is out of valid index range '0' to '199' for possibly stack allocated buffer 'array'

so, ~~~~

han ~~
顶端 Posted: 2007-03-25 20:43 | [2 楼]
myxxn



性别: 保密 状态: 该用户目前不在线
等级: 人见人爱
发贴: 2234
威望: 0
浮云: 1105
在线等级:
注册时间: 2005-10-04
最后登陆: 2010-10-09

5come5帮你背单词 [ consecutive /kən'sekjutiv/ a. 连续的 ]


ls的解释很消息了   也谢过
顶端 Posted: 2007-03-25 20:46 | [3 楼]
ljpdxj



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 687
威望: 0
浮云: 1108
在线等级:
注册时间: 2006-02-28
最后登陆: 2008-06-29

5come5帮你背单词 [ input /'input/ n. 输入(物),投入,投入的资金(物资);vt. 把(数据等)输入计算机 ]


Quote:
引用第2楼zc1984于2007-03-25 20:43发表的:
Ill-defined for-loop: 'char' values are always of range '-128' to '127'. Loop executes infinitely

so, Index '-128' is out of valid index range '0' to '199' for possibly stack allocated buffer 'array'

so, ~~~~
.......


是不是改这样解释: 
char从0~127时二进制为00000000~01111111
到127后再然后++
这时为100000000~11111111
到255后溢出,又进入上面的循环
顶端 Posted: 2007-03-25 20:49 | [4 楼]
追逐好梦



性别: 帅哥 状态: 该用户目前不在线
头衔: 忍着无敌
等级: 前途无量
发贴: 5353
威望: 1
浮云: 1107
在线等级:
注册时间: 2004-11-28
最后登陆: 2013-11-17

5come5帮你背单词 [ increase /in'kri:s, 'inkri:s/ v. & n. 增长,增加,增强 ]


char 的范围是-128--+127
array[char]取到了不该取的地方了
顶端 Posted: 2007-03-25 20:50 | [5 楼]
zc1984





性别: 帅哥 状态: 该用户目前不在线
头衔: 上帝模式
等级: 荣誉会员
家族: 战略研究所
发贴: 10096
威望: 5
浮云: 0
在线等级:
注册时间: 2004-08-24
最后登陆: 2017-06-08

5come5帮你背单词 [ centennial // n. 一百周年,一百周年纪念(日) ]


Quote:
引用第4楼ljpdxj于2007-03-25 20:49发表的:


是不是改这样解释: 
char从0~127时二进制为00000000~01111111
到127后再然后++
.......


这就是传说中的溢出了~~
顶端 Posted: 2007-03-25 20:51 | [6 楼]
ljpdxj



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 687
威望: 0
浮云: 1108
在线等级:
注册时间: 2006-02-28
最后登陆: 2008-06-29

5come5帮你背单词 [ league /li:g/ n. 同盟,联盟,协会,社团 ]


Quote:
引用第6楼zc1984于2007-03-25 20:51发表的:


这就是传说中的溢出了~~

谢谢蝈蝈哈,蝈蝈高手,向蝈蝈学习
顶端 Posted: 2007-03-25 20:53 | [7 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.012410(s) query 5, Time now is:11-27 12:43, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号