【C言語】old-style parameter declarations in prototyped function definition

C言語で「old-style parameter declarations in prototyped function definition」というエラーメッセージが表示された場合、それは原型宣言された関数定義内に古いスタイルの引数宣言が含まれているということを意味します。

例えば、次のようなコードでこのエラーが発生する可能性があります。

#include <stdio.h>

int add(a, b)
int a, b;
{
  return a + b;
}

int main(void) {
  int x = add(1, 2);
  printf("x = %d\n", x);
  return 0;
}

この例では、関数addが原型宣言されていますが、引数宣言部分では古いスタイルの型名の後に引数名のみが記述されています。このような場合、コンパイラは「old-style parameter declarations in prototyped function definition」というエラーメッセージを出力します。

このような場合、古いスタイルの引数宣言を新しいスタイルの引数宣言に修正するようにプログラムを修正することで、このエラーは解消されます。

#include <stdio.h>

int add(int a, int b) // 修正後
{

コメント

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