Leggerò in due set di char*
(o stringhe) utilizzando strtok
e poiché questi due set di caratteri sono correlati, (address : command\n)
ho deciso di utilizzare una struttura.Come correttamente malloc per array di struct in C
struct line* array = (struct line*)malloc(sizeof(file) * sizeof(struct line*));
Questa linea malloc
spazio ing per la funzione mi dà un errore di segmentazione e mi chiedevo se mi può dire un modo corretto di malloc
spazio per questo. Per il contesto, ecco il resto del mio codice:
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++;
}
Tenere in tenere presente che allocare memoria per un array di 'struct line' non alloca memoria per le stringhe' addr' e 'inst'.A seconda di come vengono utilizzati quei puntatori all'interno della 'struct line', potrebbe essere necessario allocare la memoria per i dati della stringa. –