数组成员引用下标超出定义范围,怎么解决

 我来答
帐号已注销
2020-10-04 · TA获得超过77.1万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:167万
展开全部

返回数组的问题,一旦返回数组的成员不到3个,那么写的返回数组就会提示那样的错误,检查下返回数组的成员数。

一般来说通常在程序写代码的时候就已经在数组变量中定义了数组的维度,如果运行时再定义维度,将会以最后一次重定义数组命令的定义为准。

建议在操作数组之前用命令:取数组成员数(数组变量) 来判断当前成员变量的数组是否大于数组维度,大于程序会出错(不包括等于)。

扩展资料:

数组类型说明 在C语言中使用数组必须先进行类型说明。

数组说明的一般形式为:类型说明符 数组名 [常量表达式],……; 其中,类型说明符是任一种基本数据类型或构造数据类型。数组名是用户定义的数组标识符。方括号中的常量表达式表示数据元素的个数,也称为数组的长度。

数组就是一次性定义相同数据类型的一组变量数组定义。

参考资料来源:百度百科-数组

折柳成萌
高粉答主

2018-08-08 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:4.4万
采纳率:96%
帮助的人:6283万
展开全部

错误原因:你的”大体图片内容“这个字节集估计是空的(没有获取到),或者中间没有中文冒号这个字节集,这样的话分割之后肯定就不成为数组了对吧,也就是数组成员数为0,而你下一行代码直接使用了 分割内容[1],引用了一个不存在的数组元素,肯定会错误。

改进方法:

  • 在使用分割内容[1]之前,先检查数组的成员数,用命令“取数组成员数()”即可,然后判断它的值是不是>0,然后再引用数组元素。(以后编程使用数组前都要检查,这样不容易出BUG。)

  • 如果你的大体图片内容肯定是含有中文冒号这个字节集的...那就是你之前的取回数据那里出了故障,取回的数据是空的..检查检查。但是也要看看方法1中,最好写一个异常处理,否则一旦崩溃程序就挂了。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户66022
2014-11-16 · 超过72用户采纳过TA的回答
知道答主
回答量:123
采纳率:0%
帮助的人:65.9万
展开全部
按照你说的,如果是提示数组成员引用下标超出定义范围的话,应该是返回数组的问题,一旦返回数组的成员不到3个,那么你写的返回数组 [3]就会提示那样的错误,你检查下返回数组的成员数吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Yan丶静
2014-11-16 · TA获得超过769个赞
知道小有建树答主
回答量:1028
采纳率:40%
帮助的人:296万
展开全部
首先,引用数组前要对数组重定义,命令:重定义数组(数组变量,数组维度上限),
一般来说通常在程序写代码的时候就已经在数组变量中定义了数组的维度,如果运行时再定义维度,那么将会以最后一次重定义数组命令的定义为准。
建议在操作数组之前用命令:取数组成员数(数组变量) 来判断当前成员变量的数组是否大于数组维度,大于程序会出错(不包括等于)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
愤怒的波导弹
2018-08-09 · TA获得超过588个赞
知道小有建树答主
回答量:273
采纳率:0%
帮助的人:291万
展开全部
你都没有任何代码,让人怎么帮你呢?
说以下这个错误出现得原因吧
假如你这个数组是设置上限为5个元素。
但是你调用得时候调用了第6个元素
超出了数组范围,会触发这个错误。所以检查一下自己得程序吧……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式