如何将结构指针数组初始化为零

joh*_*ohn 1 c linux pointers structure

我正在为通过malloc构造的指针数组分配内存,并希望用零初始化它,如下所述.假设结构包含int和char [](字符串)类型的成员?那我怎么能把这个结构归零呢.

代码:假设我想分配100

struct A **a = NULL;
a = (struct **)malloc(sizeof( (*a) * 100);
for(i=1; i < 100; i++)
     a[i] = (struct A*)malloc(sizeof(a));
Run Code Online (Sandbox Code Playgroud)

还请解释一下为什么有必要用零初始化.

平台:Linux,编程语言:C

我知道我们可以使用memset或bzero.我试过它它崩溃了,可能是我正确使用它所以请告诉我正确的方法.

Cra*_*g H 6

使用calloc最符合上面的例子.