我试图将指针的指针传递给一个函数,该函数然后更新这些值。由于某种原因,尽管我将数组定义为更大,但在第三个索引处出现了段错误。
这是一个简单的示例,仍然会导致相同的段错误
int main()
{
int *myarray = (int*)malloc(100*sizeof(*myarray));
int **ptr = &myarray;
for(int i=0;i<10;i++)
printf("%d\n",*ptr[i]);
return 1;
}
这将返回
0
0
0
Segmentation fault: 11
我最终希望将myarray传递到函数func(&myarray)
中,该函数可能需要调用realloc
。