【C言語】previous declaration of ‘xxx’ was here

“previous declaration of ‘xxx’ was here” というエラーメッセージは、C 言語で同じ名前の変数や関数が複数回定義された場合に発生します。

例えば、次のようなコードを見てみましょう。

#include <stdio.h>

int main(void) {
  // foo 関数が2回定義されているため、このコードはエラーになります。
  int foo(int x) {
    return x * x;
  }

  int foo(int x, int y) {
    return x + y;
  }

  return 0;
}

このコードでは、main 関数内で foo 関数が2回定義されています。C 言語では、同じ名前の変数や関数を複数回定義することはできません。そのため、このコードはエラーになります。

このように、C 言語では同じ名前の変数や関数が複数回定義された場合、”previous declaration of ‘xxx’ was here” というエラーメッセージが発生することになります。このメッセージには、複数回定義された変数や関数の名前が表示されます。

コメント

タイトルとURLをコピーしました