質問
先日、ホワイトブックを巡回しているときに、Cキーワードのリストに気付きました。 entry はそのリストのキーワードの1つです。
将来の使用のために予約されています。私のFortran時代を振り返ると、 entry ステートメントを使用して2番目の引数署名、または関数へのエントリポイントを作成する何らかの関数がありました。
これは、元々エントリの使用を意図していたものですか?またはまったく違うものですか?
エントリキーワードのストーリーは何ですか?
解決
わからなかったので、グーグルでこれについて何かを見つけました。これは私が見つけたものです。
最初に、予約キーワードとして含まれていました。
Q :K& R1で言及されているエントリキーワードは何ですか?
A :複数の異なる名前のエントリポイントを持つ機能を許可するために予約されていましたが、廃止されました。
( http://archives.devshedから。 com / forums / cc-134 / c-programming-faqs-371017.html 。)
標準化されたことはありません。一部のコンパイラは、非常に個人的な方法でを使用しました。
後で廃止されたと思われます。
他のヒント
FORTRANでは、" ENTRY&quot ;;サブルーチンへの2番目のエントリポイントを宣言できます。それは構造化されたプログラミングナイトウェアであり、幸いなことにCはそれを採用しないことに決めました。
entryキーワードは PL / I に由来し、関数への複数のエントリポイントを許可しました。キーワードはいくつかのコンパイラーによって実装されましたが、標準化されていませんでした。
受け入れられた回答を補完するために、K& R1で「エントリ」が言及されています
2.3キーワード
次の識別子はキーワードとして使用するために予約されており、それ以外の場合は使用できません
int extern else
charの登録
float typedef do
double static while
struct gotoスイッチ
ユニオン復帰ケース
long sizeof default
ショートブレークエントリ
署名なし継続
自動if
およびここ:
entryキーワードは現在、どのコンパイラにも実装されていませんが、 将来の使用のために予約されています。一部の実装では「fortran」という単語も予約されています および「asm」。
その後、ANSI C言語の理論的根拠(C89)でここに記載されています:
3.1.1キーワード
[...]
キーワード「entry」、「fortran」、および「asm」は使用されなかったか、移植性がないため、含まれていません。キーワードとしての「fortran」および「asm」の使用は、一般的な拡張子としてではありません。