可能性の重複:
Error: No previous prototype for function. Why am I getting this error?以前のプロトタイプはありませんか?
しかし私は、XcodeのはまだNo previous prototype for the function 'printBind'
を警告私を与え、私はヘッダファイルでプロトタイプ機能を持っています。私は同じ方法でsetBind
プロトタイプ関数を持っていますが、私の実装ではこの関数の警告が出ません。 Cにおいて
CelGL.h
#ifndef Under_Siege_CelGL_h
#define Under_Siege_CelGL_h
void setBind(int input);
void printBind();
#endif
CelGL.c
#include <stdio.h>
#include "CelGL.h"
int bind;
void setBind(int bindin) { // No warning here?
bind = bindin;
}
void printBind() { // Warning here
printf("%i", bind);
}
私はエラーの理由を理解することができましたが、この機能の有用性を理解していません。不確定なパラメータリストを持つ関数をいつ定義しますか?これはC++と正確に何が関係していますか?これはC++の便利な機能ですか? – sherrellbc
C++で不確定な引数リストを持つプロトタイプを定義することはできません。 C++では、「引数がない」ことを意味し、「不確定な引数」は意味しません。この機能は、現実に必要な譲歩としてあまり有用ではありません。 Cが標準化されたとき、広大なコードベース全体がプロトタイプなしで書かれました。彼らはCに存在していなかった。空のかっこの表記法は、標準化前のCにすべて存在していた。不法とするために、それは初期のCの標準を殺したであろう。それはC99でもまだ当てはまりました。 C11ではあまり明確ではありませんが、変更されませんでした。 –