ホームページ  >  記事  >  バックエンド開発  >  C言語における仮引数と実引数の違い

C言語における仮引数と実引数の違い

下次还敢
下次还敢オリジナル
2024-04-27 22:27:32818ブラウズ

仮パラメータと実パラメータは関数呼び出しにおける概念です。仮パラメータは実際のデータを受け取るために使用され、実パラメータは実際のデータを渡すために使用されます。仮パラメータは関数ヘッダーに配置され、実パラメータは関数の呼び出し時に配置されます。仮パラメータと実パラメータは一方向の関係を確立し、実パラメータは仮パラメータを変更できますが、その逆はできません。仮パラメータの範囲は関数に限定されますが、実パラメータは関数から独立しています。上位の仮パラメータは明確な型を指定する必要があり、実パラメータの型は仮パラメータと互換性がある必要があります。

C言語における仮引数と実引数の違い

#仮引数と実引数

C 言語では、関数呼び出しに仮引数と実引数が関係します。概念。それらの間には明らかな違いがあります:

意味

  • 形式パラメータ: 関数定義で宣言されたパラメータ。実際のパラメータを受け取るために使用されます。関数に渡されるデータ。
  • 実際の引数: 関数が呼び出されたときに関数に渡される実際のデータ値。

位置

    仮パラメータは関数ヘッダーにあり、変数の形式で宣言されます。
  • 実際のパラメータは、関数が呼び出されたときに関数名の直後に括弧で囲まれて配置されます。

Association

    仮パラメータと実パラメータは関数呼び出し中に関連付けられ、実パラメータから仮パラメータにデータを渡すことができます。
  • 関連付けは一方向です。つまり、実パラメータは仮パラメータを変更できますが、仮パラメータは実パラメータを変更できません。

スコープ

    仮パラメータのスコープは関数の内部に限定されます。
  • 実際のパラメータのスコープは関数から独立しており、内部関数の影響を受けません。

データ型

    仮パラメータでは、明示的なデータ型を指定する必要があります。
  • 実パラメータのデータ型は、仮パラメータの型と互換性がある必要があります。

次の関数定義:

<code class="c">void print_name(char *name);</code>
このうち、

name は仮パラメータであり、文字ポインタ。

この関数を呼び出すときは、次のように実際のパラメータを渡すことができます:

<code class="c">char *myName = "John Doe";
print_name(myName);</code>
この例では、

myName が関数に渡される実際のパラメータです。これは仮パラメータ name に関連付けられており、関数が文字列「John Doe」にアクセスして出力できるようになります。

注:

    関数呼び出しでは、実パラメータの数と型が仮パラメータ リストと一致する必要があります。
  • 仮パラメータのデフォルト値は関数定義でのみ指定できますが、実パラメータの値は呼び出し時に渡すことができます。

以上がC言語における仮引数と実引数の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。