例如 int a[10]; 这是一个整型的数组a,有10个元素:a[0]-a[9],因为正确的下标应该是从0开始,到9结束,与生活习惯中的1-10不一样,a[10]是不存在的 如果你使用a[10] 于是产生一个a[10]的错误,即数组下标越界。c和c++语言中数组下标越界,编译器是不会检查出错误的,但是实际上后果可能会很严重,比如程序崩溃等
因为c语言会把数组中未赋值的值赋值为0
int a[][3]={{0},{1},{2}};
等价于
int a[][3]={{0,0,0},
{1,0,0},
{2,0,0}};
所以a[1][2]为0