1. ホーム
  2. c

[解決済み] staticと宣言されながら定義されていない関数

2022-02-27 02:11:59

質問

ヘッダーファイルabc.hがあり、そこに関数宣言があります。

static int function1();

このヘッダーファイルをabc.cにインクルードして、関数を定義して使っています。

static int function1()
{
 < function definition>
}

コンパイル後、警告が表示されます。

warning: function1 declared static but never defined

静止画を削除せずに警告を取り除くにはどうしたらよいでしょうか。 ありがとうございます。

解決方法を教えてください。

静的関数はヘッダーファイルで宣言することができますが、この場合、ヘッダーファイルを含む各ソースファイルは関数の独自のプライベートコピーを持つことになり、おそらく意図されたものではありません。

を含んでいないことは確かですか? abc.h ファイルを他の.c ファイルに追加していますか?

なぜなら、関数を static と宣言するには、その関数を すべて .c ファイルに含まれています。