C语言编写一个程序,运行时出现了这个问题……求大神解释

[复制链接]
查看11 | 回复4 | 2011-10-23 14:47:03 | 显示全部楼层 |阅读模式
for(i=0;i<strlen(line);i++)if(!((line==32)&&(line[i+1]==32)))l[j++]=line;你这里line可能要越界哟。line[i+1],当i取最大值时,不一定有哟 下面对l也是一样,明显可能会越界的 。原因就在于line越界了,l其实也要越界的,不过在后面,没有他表现的机会了 你可以这样(i+1)%strlen(line)这样就不会越界了...
回复

使用道具 举报

千问 | 2011-10-23 14:47:03 | 显示全部楼层
提示line[]的变量越界。for(i=0;i<strlen(line);i++)if(!((line==32)&&(line[i+1]==32)))l[j++]=line;line[i+1]超出边界范围,属于用法错误。后面的也数组用法也一样。要注意边界条件的使用...
回复

使用道具 举报

千问 | 2011-10-23 14:47:03 | 显示全部楼层
语法错误...
回复

使用道具 举报

千问 | 2011-10-23 14:47:03 | 显示全部楼层
贴代码。。。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行