FreeBSD 日本語マニュアル検索 (jman/japropos/jwhatis)


日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。

4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)

13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。



検索コマンド: man apropos whatis
コマンド/キーワード:
日本語マニュアル RELEASE :
セクション:
Table of Contents
名称 | 書式 | 解説 | 戻り値 | 使用例 | 互換性 | 規格 | バグ
STDARG(3)              FreeBSD ライブラリ関数マニュアル              STDARG(3)

名称
     stdarg -- 可変引数リスト

書式
     #include <stdarg.h>

     void
     va_start(va_list ap, last);

     type
     va_arg(va_list ap, type);

     void
     va_copy(va_list dest, va_list src);

     void
     va_end(va_list ap);

解説
     関数は、さまざまなタイプの可変の数の引数で呼び出されます。インクルード
     ファイル <stdarg.h> は、タイプ (va_list) を宣言し、数とタイプが呼び出され
     た関数に知られていない引数のリストを通して処置される 4 つのマクロを定義し
     ています。

     呼び出される関数は、マクロ va_start(), va_arg(), va_copy() と va_end() に
     よって使用される、タイプ va_list のオブジェクトを宣言しなければなりませ
     ん。

     va_start() マクロは、va_arg(), va_copy() と va_end() によってその後に使用
     する ap を初期化し、最初に呼び出されなければなりません。

     パラメータ last は、可変引数リストの前の最後のパラメータの名前です、すな
     わち、呼び出している関数がタイプを知っている最後のパラメータ。

     このパラメータのアドレスが va_start() マクロで使用されるので、レジスタ変
     数、または関数、または配列タイプとして宣言されるべきではありません。

     va_arg() マクロは、呼び出しの次の引数のタイプと値がある式に展開します。パ
     ラメータ ap は、va_start() または va_copy() によって初期化された va_list
     ap です。va_arg() への各呼び出しは、次の呼び出しが次の引数を返すことがで
     きるように、ap を修正します。パラメータ type は、指定されたタイプを持つオ
     ブジェクトへのポインタのタイプが、単に type に * 追加することによって取得
     することができますように、指定されたタイプ名です。

     次の引数がないなら、または type が、(デフォルトの引数の促進にしたがって促
     進されるように) 実際の次の引数のタイプと互換性がないなら、ランダムなエ
     ラーが生じます。

     va_start() マクロの使用の後の va_arg() マクロの最初の使用は、last の後の
     引数を返します。連続的な呼び出しは、残りの引数の値を返します。

     va_copy() マクロは、src から dest まで va_start() によって以前に初期化さ
     れた、可変引数のリストをコピーします。状態は、src と共に使用される同じ 2
     番目の引数がある va_start() を呼び出すことと src で呼び出されるような同じ
     数回 va_arg() を呼び出すことと同等であることのように保存されます。

     va_end() マクロは、可変引数のリスト ap に関連したあらゆる状態をクリーン
     アップします。

     va_start() または va_copy() の各呼び出しは、同じ関数内の対応する va_end()
     呼び出しと組み合わせられなければなりません。

戻り値
     va_arg() マクロは、次の引数の値を返します。

     va_start(), va_copy() と va_end() マクロは、値を返しません。

使用例
     関数 foo は、書式文字の文字列を取り、タイプに基づいた各書式文字に関連する
     引数を印刷 (出力) します。

           void foo(char *fmt, ...)
           {
                   va_list ap;
                   int d;
                   char c, *s;

                   va_start(ap, fmt);
                   while (*fmt)
                           switch(*fmt++) {
                           case 's':                       /* string (文字列) */
                                   s = va_arg(ap, char *);
                                   printf("string %s\n", s);
                                   break;
                           case 'd':                       /* int (整数) */
                                   d = va_arg(ap, int);
                                   printf("int %d\n", d);
                                   break;
                           case 'c':                       /* char (文字) */
                                   /* 注意: char (文字) は, int (整数)
                                      に変換されます */
                                   c = va_arg(ap, int);
                                   printf("char %c\n", c);
                                   break;
                           }
                   va_end(ap);
           }

互換性
     これらのマクロは、それらを置き換える歴史的なマクロと互換性がありません。
     後方互換バージョンは、インクルードファイル <varargs.h> にあります。

規格
     va_start(), va_arg(), va_copy() と va_end() マクロは、ISO/IEC 9899:1999
     (``ISO C99'') に適合しています。

バグ
     varargs マクロと異なり、stdarg マクロは、プログラマが固定引数のない関数を
     コード化することを許可しません。この問題は、主として varargs コードを
     stdarg コードに変換するとき、作業が生じますが、また、それは、vfprintf(3)
     のような va_list 引数をとる、関数へのそれらの引数のすべてを渡したい可変個
     引数 (variadic) の関数のために困難となります。

FreeBSD 11.2                   October 25, 2002                   FreeBSD 11.2

Table of Contents

FreeBSD マニュアル検索