Jak poprawnie malloc dla tablicy struct w C

Przeczytam w dwóch zestawachchar* (lub łańcuchy) za pomocąstrtok, a ponieważ te dwa zestawy znaków są powiązane,(address : command\n) Postanowiłem użyć struktury.

struct line* array = (struct line*)malloc(sizeof(file) * sizeof(struct line*));

Ta liniamallocMiejsce na funkcję daje mi błąd segmentacji i zastanawiałem się, czy możesz mi powiedzieć, w jaki sposóbmalloc miejsce na to. Dla kontekstu, oto reszta mojego kodu:

struct line
{
    char* addr;
    char* inst;
};
while loop{
    x = strtok(line,": ");
    y = strtok(NULL,"\n");
    strcpy(array[i].addr,x); //assume that x and y are always 3characters
    strcpy(array[i].inst,++y);
    i++;
}

questionAnswers(2)

yourAnswerToTheQuestion