type va_arg(va_list ap, type);
変数apの指している引数を返し,次の引数を指すように変数apを進めます。typeには,引数が関数に渡される際に変換される型を指定します。引数ごとに異なる型を指定することができますが,“どの型の引数が渡されてきているか”は,呼び出された側と呼び出し側の関数との間の取り決めによって規定されるようにしてください。
可変個数引数の場合,既定の実引数拡張に従って型変換されるため,変換後の型を指定してください。実引数がポインタで定数値の場合,実引数にキャストを付けて,ポインタであることを明示してください。既定の実引数拡張については,「(7) 既定の実引数拡張」を参照してください。
また,“実際に引数がいくつ渡されてきているか”に関しても,呼び出された側と呼び出し側の関数との間の取り決めによって決まります。