C++ 関数とプログラム例
C++ の関数とは?
関数 C++ では、入力を受け取って処理し、出力を返すステートメントのグループを指します。関数の背後にある考え方は、繰り返し実行される一般的なタスクを結合することです。入力が異なる場合、同じコードを再度記述することはありません。パラメータと呼ばれる別のデータ セットを使用して関数を呼び出すだけです。
各 C++ プログラムには、main() 関数という少なくとも 1 つの関数があります。コードをさまざまな関数に分割できます。この区分は、すべての機能が特定のタスクを実行するようにする必要があります。
C++ 標準ライブラリには多くの組み込み関数があります。これらの関数は、プログラム内で呼び出すことができます。
この C++ チュートリアルでは、次のことを学びます:
- C++ の関数とは?
- 関数を使用する理由
- 組み込み関数
- ユーザー定義関数
- 関数宣言/プロトタイプ
- 関数の定義
- 構文:
- 関数呼び出し
- 引数を渡す
関数を使用する理由
関数の使用に関連する多くの利点があります。これらには以下が含まれます:
- 各関数は、関連するコードをまとめます。これにより、プログラマーがコードを理解しやすくなります。
- 関数を使用すると、コードの繰り返しがなくなるため、プログラミングが容易になります。
- 関数はコードの再利用を容易にします。同じ関数を呼び出して、プログラムのさまざまなセクションまたはプログラムの外部でタスクを実行できます。
組み込み関数
C++ ライブラリ関数では、組み込みの C++ 関数です。これらの関数を使用するには、それらを直接呼び出す/呼び出すだけです。関数を自分で書く必要はありません。
例 1:
#include <iostream> #include <cmath> using namespace std; int main() { double num, squareRoot; cout << "Enter number: "; cin >> num; squareRoot = sqrt(num); cout << "The square root of " << num << " is: " << squareRoot; return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>ユーザー定義関数
C++ を使用すると、プログラマは独自の関数を定義できます。この関数の目的は、関連するコードをグループ化することです。このコードには、一意の識別子である関数名が与えられます。
この関数は、プログラムの他の部分から呼び出すことができます。次に、本体内で定義されたコードを実行します。
例 2:
#include <iostream> using namespace std; void sayHello() { cout << "Hello!"; } int main() { sayHello(); return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>関数宣言/プロトタイプ
main() 関数の後にユーザー定義関数を定義すると、C++ コンパイラはエラーを返します。これは、コンパイラがユーザー定義関数の詳細を認識していないためです。詳細には、名前、引数の型、戻り値の型が含まれます。
C++ では、関数宣言/プロトタイプは本体のない関数を宣言します。これにより、ユーザー定義関数の詳細がコンパイラに提供されます。
宣言/プロトタイプには、戻り値の型、関数名、および引数の型が含まれます。引数の名前は追加されません。ただし、引数名を追加してもエラーは発生しません。
関数定義
関数宣言の目的は、C++ コンパイラに関数名、戻り値の型、およびパラメーターを伝えることです。関数定義は、関数本体について C++ コンパイラに伝えます。
構文:
return_datatype function_name( parameters) { function body }
上記から、関数定義には関数ヘッダーと関数本体があります。パラメータの説明は次のとおりです:
- return_datatype - 一部の関数は値を返します。このパラメーターは、戻り値のデータ型を示します。一部の関数は値を返しません。その場合、このパラメーターの値は無効になります。
- function_name - これは関数の名前です。関数名とパラメータが関数シグネチャを形成します。
- パラメータ - これは、関数パラメータのタイプ、順序、および数です。一部の関数にはパラメーターがありません。
- 関数本体 - 関数が何をするかを定義するステートメントです。
関数呼び出し
関数が指定されたタスクを実行して出力を返すには、関数を呼び出す必要があります。関数を呼び出すと、その本体内に追加されたステートメントが実行されます。
プログラムはその名前で呼び出されます。関数がパラメーターを受け取る場合、呼び出し中にそれらの値を渡す必要があります。サービスがパラメーターを取らない場合は、呼び出し中に値を渡さないでください。
引数を渡す
C++ では、引数/パラメーターは、呼び出し中に関数に渡されるデータです。値はそれぞれの変数に初期化する必要があります。
関数を呼び出すときは、引数の数が一致している必要があります。これは、渡す値がパラメーターの数と等しくなければならないことを意味します。繰り返しますが、値は型に関してもパラメーターと一致する必要があります。最初のパラメータが整数の場合、渡される値は整数でなければなりません。
関数パラメータにデフォルト値を割り当てることができます。関数呼び出し中にパラメーターの値を渡さない場合、デフォルト値が使用されます。
例 3:関数を作成して呼び出す方法
#include <iostream> using namespace std; int addFunc(int, int); int main() { int x, y, sum; cout << "Enter two numbers: "; cin >> x >> y; sum = addFunc(x, y); cout <<"The sum of "<<x<< " and " <<y<<" is: "<<sum; return 0; } int addFunc(int num1, int num2) { int addFunc; addFunc = num1 + num2; return addFunc; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>まとめ:
- C++ の関数は、関連するコードを 1 つにグループ化するのに役立ちます。
- 関数はコードの再利用を促進します。
- 同じようなコードを何度も書く代わりに、単純に関数にグループ化します。その後、コード内のどこからでも関数を呼び出すことができます。
- 関数はライブラリまたはユーザー定義にすることができます。
- ライブラリ関数は、さまざまな C++ 関数に組み込まれている関数です。
- ライブラリ関数を使用するには、その定義ライブラリをインクルードして関数を呼び出すだけです。関数を定義しません。
- ユーザー定義関数は、C++ プログラマとして定義する関数です。
- 関数宣言は、関数名、戻り値の型、パラメーターの型をコンパイラに伝えます。
- 関数定義は、関数の本体を追加します。
- 関数がパラメータを取る場合、その値は関数呼び出し中に渡される必要があります。
C言語