web-dev-qa-db-ja.com

組み込み関数「malloc」の互換性のない暗黙の宣言

私はこのエラーを受け取っています:

警告:組み込み関数「malloc」の互換性のない暗黙の宣言

私はこれをしようとしています:

fileinfo_list* tempList = malloc(sizeof(fileinfo_list));

参照のために、手元で使用される構造体は次のとおりです。

typedef struct {
    fileinfo** filedata;
    size_t nFiles;
    size_t size;
    size_t fileblock;
} fileinfo_list;

私は自分がやったことに関して何も間違っているとは思わない。 1 x fileinfo_listのサイズのtempListを作成しています。

137
SGE

<stdlib.h>を含めるのを忘れた可能性があります。

307
cnicutar

#include <stdlib.h>する必要があります。それ以外の場合は、組み込み型int malloc()と互換性のないvoid *malloc(size_t)として定義されます。

42
Omri Barel

#include <stdlib.h>がありません。

15
Antti

Stdlib.hファイルには、malloc、calloc、realloc、およびfree関数のヘッダー情報またはプロトタイプが含まれています。

したがって、ANSI Cでこの警告を回避するには、stdlibヘッダーファイルを含める必要があります。

3
santosh sahu