初級 › error: implicit declaration of function 'X' の原因と直し方 › パターン1
error: implicit declaration of function 'X' の原因と直し方
標準ライブラリの関数を使う際に、対応する#includeを書き忘れたときに出るエラーです。
1 #include <stdio.h> 2 ___________________ ^ 3 4 int main(void) { 5 printf("%zu\n", strlen("hi")); 6 return 0; 7 }
main.c:5:21: error: implicit declaration of function 'strlen' [-Wimplicit-function-declaration]
空欄を埋めてコンパイル・実行を通す
strlenはstring.hで宣言されている関数です。宣言が見えない状態で呼び出すと、コンパイラはその存在を知らないためエラーになります。
次の問題