【发布时间】:2014-02-02 04:49:17
【问题描述】:
我是 C 的新手,我想知道如何将指针数组中的所有元素设置为 null。 我创建了一个结构,其中包含一个指向指针数组的指针,并且我想将所有这些指针设置为 null。
结构如下:
typedef struct
{
char **array;
int size, capacity;
} ArrayList;
在这里我尝试创建一个指针数组并将它们初始化为 null:
ArrayList *createArrayList(int length)
{
int i;
ArrayList* strArray = malloc(sizeof(ArrayList));
for(i=1; i<length; i++)
{
strArray->array[i] = NULL;
}
return strArray;
}
不幸的是,这会产生分段错误。任何帮助将不胜感激。
【问题讨论】:
-
首先为
array成员分配内存;不仅仅是指向ArrayList的本地指针。
标签: c arrays pointers initialization