第三行下标不是已经超过范围了吗?那个内存空间不是没有定义的吗?为什么会这样?
2 回答
凌小天3635910
TA贡献17条经验 获得超13个赞
int a[]={1,2,3,4,5}; //定义一个整形数组大小为5int int *p=a; //定义一个指针变量p,将数组a首地址赋值给p。 int *p=&a[5]; //定义一个指针变量q,将数组首地址后5个int位的地址赋值给p //&a[5]等价于(a+5).既a地址后5int位。 printf("%d",q-p); //输出q地址减去p地址的大小。
- 2 回答
- 0 关注
- 1518 浏览
添加回答
举报
0/150
提交
取消