数组-C语言中的越界索引是什么?
假设您有一个包含四个元素的数组。然后,数组索引将从0到3,即我们可以访问索引从0到3的元素。
但是,如果我们使用大于3的索引,它将被称为超出范围的索引。
如果我们使用超出范围的数组索引,则编译器将进行编译甚至运行。但是,不能保证正确的结果。
结果可能不确定,它将开始引起许多问题。因此,建议在使用数组索引时要小心。
示例
以下是C程序,用于数组中超出范围的索引-
#include<stdio.h>
int main(void){
int std[4];
int i;
std[0] = 100; //valid
std[1] = 200; //valid
std[2] = 300; //valid
std[3] = 400; //valid
std[4] = 500; //无效(超出范围索引)
//打印所有元素
for( i=0; i<5; i++ )
printf("std[%d]: %d\n",i,std[i]);
return 0;
}输出结果执行以上程序后,将产生以下结果-
std[0]: 100 std[1]: 200 std[2]: 300 std[3]: 400 std[4]: 2314
解释
在此程序中,数组大小为4,因此数组索引将从std[0]到std[3]。但是,在这里,我们已将值500分配给std[4]。
因此,程序被编译并成功执行。但是,在打印该值时,std[4]的值是垃圾。我们给它分配了500,结果是2314。
热门推荐
10 老师结婚祝福语评论简短
11 写给宝宝新年祝福语简短
12 新年儿童祝福语大全 简短
13 餐厅虎年贺卡祝福语简短
14 简短的几句新年祝福语
15 哥哥结婚妹妹祝福语 简短
16 妈妈生病康复祝福语简短
17 男生的生日祝福语简短
18 自己生日祝福语段子简短