以下声明:
100
定义为x is an integer pointer to an integer array of 10 elements.
Question 1:这不是意味着x最初指向由10个整数组成的数组的第一个元素吗?如果是这样,那么这与简单的100有何不同?
Question 2 : If 100 is different, then how is it different and what are some instances of its practical usage?
Question 3:我试图写一个简单的程序访问,写入和打印数组元素.
#include <stdio.h>
void main()
{
int (*x)[12], i;
for(i = 0; i <= 11;)
{
(*x)[i] = i;
printf("%d\n", (*x)[i++]);
}
}
当我运行它时,我一直得到segmentation fault分.我知道,当我试图访问我无法访问的内存时,会出现分段错误.但我只访问了我初始化的12个元素.那么,为什么我的程序会因分段错误而退出?此外,我是否正确访问了数组(100)以及是否有其他访问方法?