问题如下void main(){ int a[10] = { 0 };//我定义了一个含有10个元素的数组,并且都付了初值0 a[10] = 2;/*这个式子是不是错误的?我理解的是a数组中并不存在a[10]这个元素怎么给赋值2?要知道最后一个元素应该是a[9],这样直接给a[10]赋值竟然没报错?为什么?这样是不是就等于默认了a数组元素个数已经给拓宽到了11个,并且给赋值了?*/}