Namespaces
Variants

va_list

From cppreference.net
定義済みヘッダー <stdarg.h>
/* unspecified */ va_list ;

va_list は、 va_start va_copy va_arg 、および va_end マクロで必要な情報を保持するのに適した完全なオブジェクト型です。

va_list インスタンスが作成され、別の関数に渡され、その関数内で va_arg を使用してアクセスされた場合、呼び出し元の関数での後続の使用は va_end の呼び出しを前に置く必要があります。

va_list オブジェクトへのポインタを他の関数に渡し、その関数が戻った後にそのオブジェクトを使用することは合法です。

参考文献

  • C11標準 (ISO/IEC 9899:2011):
  • 7.16/3 可変個引数 <stdarg.h> (p: 269)
  • C99標準 (ISO/IEC 9899:1999):
  • 7.15/3 可変個引数 <stdarg.h> (p: 249)
  • C89/C90標準 (ISO/IEC 9899:1990):
  • 4.8 可変個引数 <stdarg.h>

関連項目

次の可変個引数関数の引数にアクセスする
(関数マクロ)
(C99)
可変個引数関数の引数のコピーを作成する
(関数マクロ)
可変個引数関数の引数の走査を終了する
(関数マクロ)
可変個引数関数の引数へのアクセスを有効にする
(関数マクロ)