关于数组的附初值

来源:百度知道 编辑:UC知道 时间:2024/05/12 17:07:02
学了一大顿 今天竟然混了
假如int a[10],i,j;
我要用for给a[10]赋初值正确的应该是
for(i=0;i<10;i++)
a[i]=i;
这样分别给a[0]-a[9]着10个元素赋值
那我要取a的第10个元素应该怎么表示???
是a[9]还是a[10]
我知道正确的写法是a[10]
为什么呢?? 这个我总是弄混

第10个元素是a[9],不是a[10]
数组下标从0开始,所以声明的a[10]所包含的10个元素为
a[0],a[1],a[2],a[3],a[4],
a[5],a[6],a[7],a[8],a[9]

a[10]也是可以取到的,
由于数组是顺序存储的,
所以a[10]其实就是a[9]后面一个地址内所存放的值,
但这个值是不可预测的,
直接访问也很危险,
如果这个地址内正好存放的是系统数据,或者是其他应用程序的内存区,
就可能引起异常访问的报错。