Cライブラリ-<stdarg.h>

ザ・ stdarg.h ヘッダーは変数タイプを定義します va_list 引数の数が不明な場合に関数内の引数を取得するために使用できる3つのマクロ、つまり可変数の引数。

可変引数の関数は、パラメーターリストの最後にある省略記号(、...)で定義されます。

ライブラリ変数

以下は、ヘッダーstdarg.hで定義されている変数タイプです。

シニア番号 変数と説明
1

va_list

3つのマクロに必要な情報を保持するのに適したタイプです va_start(), va_arg() そして va_end()

ライブラリマクロ

以下は、ヘッダーstdarg.hで定義されているマクロです。

シニア番号 マクロと説明
1 void va_start(va_list ap、last_arg)

このマクロは初期化されます ap で使用される変数 va_arg そして va_endマクロ。ザ・last_arg 関数に渡される最後の既知の固定引数、つまり省略記号の前の引数です。

2 タイプva_arg(va_list ap、type)

このマクロは、タイプを持つ関数のパラメーターリスト内の次の引数を取得します type

3 void va_end(va_list ap)

このマクロは、を使用した可変引数を持つ関数を許可します va_start返すマクロ。場合va_end 関数から戻る前に呼び出されない場合、結果は未定義です。