Ik krijg deze foutmelding:
waarschuwing: incompatibele impliciete verklaring van ingebouwde functie malloc
Ik probeer dit te doen:
fileinfo_list* tempList = malloc(sizeof(fileinfo_list));
Alleen ter referentie is de gebruikte structuur:
typedef struct {
fileinfo** filedata;
size_t nFiles;
size_t size;
size_t fileblock;
} fileinfo_list;
Ik zie niets verkeerds in wat ik heb gedaan. Ik ben gewoon een tempList
aan het maken met de grootte van 1 x fileinfo_list
.
Antwoord 1, autoriteit 100%
U bent waarschijnlijk vergeten #include <stdlib.h>
te gebruiken
Antwoord 2, autoriteit 13%
Je moet #include <stdlib.h>
. Anders wordt het gedefinieerd als int malloc()
wat niet compatibel is met het ingebouwde type void *malloc(size_t)
.
Antwoord 3, autoriteit 4%
Je mist #include <stdlib.h>
.
Antwoord 4
Het bestand stdlib.h bevat de header-informatie of het prototype van de malloc-, calloc-, realloc- en free-functies.
Dus om deze waarschuwing in ANSI C te vermijden, moet u het stdlib-headerbestand opnemen.
Antwoord 5
De enige oplossing voor dergelijke waarschuwingen is om stdlib.h in het programma op te nemen.