Ответ 1
Вероятно, вы забыли включить <stdlib.h>
.
Я получаю эту ошибку:
предупреждение: несовместимое неявное объявление встроенной функции 'malloc
Я пытаюсь сделать это:
fileinfo_list* tempList = malloc(sizeof(fileinfo_list));
Только для справки используемая структура:
typedef struct {
fileinfo** filedata;
size_t nFiles;
size_t size;
size_t fileblock;
} fileinfo_list;
Я не вижу ничего плохого в том, что я сделал. Я просто создаю tempList
с размером 1 x fileinfo_list
.
Вероятно, вы забыли включить <stdlib.h>
.
Вам нужно #include <stdlib.h>
. В противном случае он определяется как int malloc()
, который несовместим со встроенным типом void *malloc(size_t)
.
Вам не хватает #include <stdlib.h>
.
Файл stdlib.h содержит информацию заголовка или прототип функций malloc, calloc, realloc и бесплатных функций.
Итак, чтобы избежать этого предупреждения в ANSI C, вы должны включить заголовочный файл stdlib.
Единственным решением для таких предупреждений является включение stdlib.h в программу.