\r\n\r\n
関数は、特定のタスクを実行するために使用されるステートメントのセットです。C言語プログラミングでは、main()で実行が開始されます。機能である。すべてのステートメントを同じプログラムに書くのではなく、複数の関数に分割することができます。それぞれの機能で、異なる機能を発揮します。関数プロトタイプは、コンパイラに関数名、戻り値の型、引数を伝える。関数宣言とも呼ばれる。各機能には、それを識別するための特定の名前が付けられています。関数文は、2つの中括弧の中に記述します。関数は値を返すことができる。値を返さない関数もあります。データは、引数のリストを使って関数に渡されます。関数定義には、その関数が実際に実行する機能が書かれています。C言語プログラミングでは、関数プロトタイプと関数定義があります。関数プロトタイプと関数定義の主な違いは、関数プロトタイプが関数の宣言のみを含むのに対し、関数定義は関数の実際の実装を含むことである。関数定義にはローカル変数とステートメントがあり、関数の動作を決定します。
1. 概要と主な相違点 2. C 言語の関数プロトタイプとは 3. C 言語の関数定義とは 4. C 言語の関数プロトタイプと関数定義の類似点 5. 横並び比較 - C 言語の関数プロトタイプと関数定義の表形式 6. まとめ
関数プロトタイプは、関数宣言を提供する。関数の名前、戻り値の型、パラメータを指定します。戻り値の型は、関数から返されるデータの型である。関数が整数を返す場合はint型、float値を返す場合はfloat型、関数が値を返さない場合はvoid型となります。Cキーワードを関数名として使用することはできません。データはパラメータを使って関数に渡されます。関数プロトタイプは、実際の関数の実装を含んでいない。関数プロトタイプは以下のような構文である。
(パラメータの表)。
2つの数値の最大値を計算する関数がある場合、その宣言は int max (int num1, int num2) と書くことができ、num1 と num2 で最大値を求める必要があります。これらは整数であり,関数に渡される。冒頭の戻り値の型もintであるため、この関数は整数値を返します。関数プロトタイプに引数名を記述する必要はない。ただし、データ型を記述する必要がある。したがって、intmax (int, int); も有効な関数プロトタイプである。2つの整数num1, num2, num3があり、プロトタイプがint max (int num1, int num2, num3)と書かれている場合、無効です。num1, num2はデータ型を持っていますが、num3はデータ型を持っていません。したがって、無効である。
以下の手順を参照してください。
#を含む
int CarMax (int x, int y)。
内部メイン(){。
積分値p=10。
積分値q=20。
知的な反応
Answer = calMax (p, q).
printf ("The maximum value is %dǐn", answer).
0を返します。
}
int calMax (international p, int q) {。
int値です。
もし(p>q){なら
値=p。
}
その他
値=q。
}
戻り値。
}
以上のことから、2番目の文は、機能プロトタイプを示している。実装されていない。実際の実装は、メインプログラムの後になります。関数プロトタイプは、あるソースファイルで関数を定義し、別のファイルでその関数を呼び出す場合に、より有用です。
関数定義は、その関数の実際の実装を持つ。その関数が行うべきことが書かれています。プログラムから関数が呼び出されると、呼び出された関数に制御が移されます。関数実行後、制御はメイン関数に戻ります。必要なデータは、パラメータのリストとして関数に渡されます。戻り値がある場合は、その戻り値の型を記載する。戻り値がない場合、戻り値の型はvoidとなる。
#を含む
ブイゾーン (int x, int y)。
チーフインテリアスチュワード (){
積分値p=10。
積分値q=20。
フラップ部。
面積=calArea(p、q)。
printf ("The maximum value is %f\n", area).
0を返します。
}
float area (int x, int y) {.
浮動小数点数。
値=0.5*x*y。
戻り値。
}
上記のプログラムに基づき、2番目のステートメントで関数のプロトタイプを与えます。実際の関数実行の実装は、メインプログラムの後に記述します。p と q の値は calArea 関数に渡される。変数値はcalArea関数のローカル変数である。面積を算出し、変数値に代入しています。その後、メインプログラムが返されます。
C言語における関数プロトタイプと関数定義 | |
関数プロトタイプは、関数名、戻り値の型、パラメータを指定し、関数本体は省略する。 | 関数定義では、関数名、戻り値の型を指定し、パラメータには関数本体を指定する。 |
インプリメンテーション | |
関数プロトタイプは、関数実装を持たない。 | 関数定義には関数実装がある。 |
プログラムで関数を使うことには利点がある。関数はコードの再利用性を高める。同じコードを何度も書く必要はありません。その代わり、プログラマーはプログラムを分割して、必要な機能を呼び出すことができます。C言語ではライブラリ関数があります。これらの関数は、C言語のヘッダーファイルで宣言されています。また、プログラマは独自の関数を作成することもできます。C言語では、関数に関連する用語として、関数プロトタイプと関数定義の2つがあります。C言語における関数プロトタイプと関数定義の違いは、関数プロトタイプが関数の宣言のみを含むのに対し、関数定義は関数の実際の実装を含むことである。
この記事のPDF版をダウンロードし、引用の仕方に従ってオフラインで使用することができます。PDF版のダウンロードはこちら:C言語の関数プロトタイプと関数定義の違いについて
1.C関数の定義ここでは、2.tutorialspoint.comのウェブサイトを紹介します。"Cファンクション"ハイライトここでは、2.tutorialspoint.comのウェブサイトを紹介します。"Cファンクション"