C の可変パラメーター関数を使用すると、可変数のパラメーターを受け取ることができます。構文は、returntype function_name(type1 arg1, type2 arg2, ..., typen argn); です。可変長パラメーター関数を呼び出す場合は、 function_name(arg1, arg2, ..., argn); の形式を使用します。ここで、arg1 から argn は、渡される実際のパラメーターです。実際のケースで示したように、数値のリストの合計を計算する関数 sum は、va_list を使用して可変長パラメーターを走査および累積することで、動的にパラメーターを取得して計算する機能を実現します。
C 関数の可変長パラメーター
可変パラメーターを使用すると、関数は可変数のパラメーターを受け取ることができます。 C では、...
(省略記号) 構文を使用して可変長引数を指定します。
構文
returntype function_name(type1 arg1, type2 arg2, ..., typen argn);
このうち、returntype
は関数 arg1
, の戻り値の型です。 arg2
, ..., argn
は関数パラメータのリスト、...
は可変長パラメータを表します。
呼び出し
可変長パラメーター関数を呼び出す場合は、次の形式を使用できます:
function_name(arg1, arg2, ..., argn);
where, arg1
、arg2
、...、argn
は、実際に関数に渡されるパラメーターです。
実践的なケース
指定された数値リストの合計を計算する関数の例を次に示します。
#include <iostream> #include <stdarg.h> using namespace std; // 计算数字列表和的函数 int sum(int num, ...) { va_list args; int sum = num; // 获取变长参数 va_start(args, num); // 遍历变长参数并累加 while (int arg = va_arg(args, int)) { sum += arg; } // 清理变长参数 va_end(args); return sum; } int main() { // 调用函数计算数字列表和 cout << "数字列表和为:" << sum(1, 2, 3, 4, 5) << endl; return 0; }
出力
数字列表和为:15
以上がC++ 関数の可変長パラメーターを使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。