如何在不知道大小的情况下调用结构的malloc数组

如何在不知道大小的情况下调用结构的malloc数组,c,struct,malloc,C,Struct,Malloc,我有一个词的结构: typedef struct { char *word; unsigned long occurrences; } Word; 我想用malloc处理一个数组,但我不知道大小会有多大。有没有一种方法可以在事先不知道数组大小的情况下对结构数组进行malloc 谢谢。您可以使用malloc()分配内存,然后使用realloc() 您可以使用malloc()分配内存,然后使用realloc() 嘿?如果您不知道内存的大小,那么分配内存有什么意义?请澄清您的具体问题或添

我有一个词的结构:

typedef struct {
   char *word;
   unsigned long occurrences;
} Word;
我想用malloc处理一个数组,但我不知道大小会有多大。有没有一种方法可以在事先不知道数组大小的情况下对结构数组进行malloc


谢谢。

您可以使用
malloc()
分配内存,然后使用
realloc()


您可以使用
malloc()
分配内存,然后使用
realloc()


嘿?如果您不知道内存的大小,那么分配内存有什么意义?请澄清您的具体问题或添加其他详细信息,以突出显示您所需的内容。正如目前所写的,很难准确地说出你在问什么。请参阅本页以获取澄清此问题的帮助。嘿?如果您不知道内存的大小,那么分配内存有什么意义?请澄清您的具体问题或添加其他详细信息,以突出显示您所需的内容。正如目前所写的,很难准确地说出你在问什么。请参阅页面以获取澄清此问题的帮助。
typedef struct {
 char *word;
 unsigned long occurrences;
} Word;

int main()
{
  Word *arr = malloc(sizeof(Word) * n);
  // do smth
  // need more
  arr = realloc(arr, sizeof(Word) * more);

  return 0;
}