int main (){
int number[5];
number[0]=45;
number[1]=12;
number[2]=555;
number[5]=89;
number[6]=46;
printf("%d",number[6]);
}
我们知道,我们不应该访问数组越界。这里,number[6]
如何可执行?
答案 0 :(得分:4)
数字[6]如何可执行
我谦虚地建议使用“accessible”而不是“executable”
第1点。 number[5]
和number[6]
都超出范围。请记住,C
使用基于0
的数组索引。
第2点。访问超出范围的内存会导致undefined behaviour。这包括各种奇怪的行为。
答案 1 :(得分:2)
超出任何数组的限制会导致undefined behavior
您已声明数字为大小为5的数组。并且您尝试使用数字[5]和数字[6]。这是一种未定义的行为。