关于C语言数组越界问题,请专家解答


#include <stdio.h>

int main()
 {
    int arr[] ={1,2,3,4};
        arr[4] =123;
    printf("%d",arr[4]);

}

这里面数组越界了吗?想要在此数组加入元素应如何处理

越界了 想要添加得用指针了

  • 数组 arr 有四个元素,下标分别为 0,1,2,3
    arr[4] 对于C语言而言,指向的就是未知区域,也就是超出数组范围了。
  • 数组长度在定义时必须要指定,里面的元素在初始化好后,可以修改,但无法再添加新的