トップページ – C言語編 – 標準ライブラリのリファレンス(名前順)
トップページ – C言語編 – 標準ライブラリのリファレンス(ヘッダ別)
概要 |
可変個実引数の値を返し、次の引数へ進む。 |
|
ヘッダ | ||
形式 |
#define va_arg(ap, type) *((type*)((ap+=sizeof(type))-sizeof(type))) |
|
引数 |
ap |
va_list型の変数。 |
type |
実引数の型。 |
|
戻り値 |
実引数の値。 |
|
詳細 |
可変個の引数を持つ関数に渡された実引数の値を取得するための関数形式マクロ。 |
|
注意 |
va_start または va_copy と、va_end の呼び出しの間で呼ばなければならない。 最後の可変個実引数を超えて、値を取得しようとする行為は未定義の動作である。 可変個実引数の型と、type で指定する型は以下の2点を除いて、一致していなければ未定義の動作になる。「1.一方が符号付き整数型で、他方が符号無し整数型であり、値がどちらの型でも表現可能な場合」「2.一方が void* で、他方が文字型へのポインタである場合」 |
|
使用例 |
実行結果:
|
|
関連 | ||
解説章 |
本ページはアフィリエイトプログラムによる収益を得ています。
以下のリンクから商品を購入されると、Programming Place
管理者に紹介料が支払われています。
()
の前後の空白の空け方)(
の直後、)
の直前に空白を入れない)return 0;
を削除(C言語編全体でのコードの統一) 全体的に文章を見直し修正。
「ヘッダ」が誤っていたのを修正。「注意」をより詳細にした。
新規作成。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
RSS | 管理者情報 | プライバシーポリシー |