1. ホーム
  2. c

[解決済み】宣言指定子で2つ以上のデータ型がある場合のエラー【非公開

2022-02-13 10:44:18

質問内容

C言語はかなり初心者です。

このエラーが発生します。

組み込み関数 'malloc' の暗黙の宣言に互換性がありません。

回答に基づいてコードを修正しても、includeは <stdlib.h> , まだ出る。

宣言指定子で2つ以上のデータ型がある場合

これを実行しようとすると

struct tnode
{
    int data;
    struct tnode * left;
    struct tnode * right;
}

struct tnode * talloc(int data){
    struct tnode * newTnode;
    newTnode = (struct tnode *) malloc (sizeof(struct tnode));
    newTnode->data = data;
    newTnode->left = NULL;
    newTnode->right = NULL;
    return newTnode;
}

どうすれば直るの?

どのように解決するのですか?

を配置する必要があります。 ; の後ろにある struct の宣言があります。

struct tnode
{
    int data;

    struct tnode * left;
    struct tnode * right;
}; // <-- here