13,009
回編集
細 (Wiki がページ「可変長引数を実現する方法(C)」を「C言語の基礎 - 可変長引数」に、リダイレクトを残さずに移動しました) |
編集の要約なし |
||
1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
stdarg.hに可変長引数を扱うための機能が用意されている。<br> | stdarg.hに可変長引数を扱うための機能が用意されている。<br> | ||
C言語は関数の仮引数に、"..."を指定することで可変長引数を受け取ることができる。<br> | |||
受け取った可変長引数は、stdarg.hのva_startマクロ、va_argマクロ、va_endマクロのそれぞれを使用することで利用することができる。<br> | |||
<br><br> | <br><br> | ||
== 可変個数の実引数 == | == 可変個数の実引数 == | ||
引数の取得は以下のマクロを用いて手動で行う必要がある。<br> | 引数の取得は以下のマクロを用いて手動で行う必要がある。<br> | ||
受け取った可変長引数は、まず、va_startマクロを使用して初期化し、va_argマクロを使用して取得する。使用後は、va_endマクロを使用することで、関数から正常に復帰する。<br> | |||
<br> | <br> | ||
* va_list ap | * va_list ap |