ホームページ > バックエンド開発 > C++ > C と C : `void foo()` と `void foo(void)` の違いは何ですか?

C と C : `void foo()` と `void foo(void)` の違いは何ですか?

DDD
リリース: 2024-12-17 02:37:25
オリジナル
114 人が閲覧しました

C vs. C  : What's the Difference Between `void foo()` and `void foo(void)`?

C および C の関数プロトタイプ : void foo() と void foo(void)

C における関数の構文プロトタイプには、 void キーワードの後に​​関数名と括弧が続きます。一般的な 2 つのバリエーションは次のとおりです。

  • void foo()
  • void foo(void)

C での void foo(void) の使用は、次のことを意味します。この関数は引数を取りませんが、 void foo() は不特定の数の引数を意味します。 type.

ただし、C では、 void foo() と void foo(void) は両方とも引数のない関数を示します。この区別は歴史的な理由から生じたもので、C を Java などの他の言語と連携させるために行われました。

どちらの形式も C では技術的に有効ですが、慣例では、冗長な void 引数なしで void foo() を使用します。明瞭さ。 void foo(void) の記述はエラーとは見なされませんが、追加情報が提供されないため、一部の読者が混乱する可能性があります。

さらに、C で関数名の前に void を指定すると、次のような場合に言語間の互換性が向上します。 C コードとのインターフェイス。 void foo(void) を使用すると、開発者は両方の言語にわたって関数シグネチャの一貫した解釈を確保でき、コードのメンテナンスと移植性が容易になります。

以上がC と C : `void foo()` と `void foo(void)` の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート