OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man3 / strtok.3
index 396a1a3..54545e4 100644 (file)
 .\" the source, must acknowledge the copyright and authors of this work.
 .\"
 .\" Rewritten old page, 960210, aeb@cwi.nl
-.\" Updated, added strtok_r. 2000-02-13 Nicolas Lichtmaier <nick@debian.org>
+.\" Updated, added strtok_r. 2000-02-13 Nicolás Lichtmaier <nick@debian.org>
 .\" 2005-11-17, mtk: Substantial parts rewritten
 .\"
-.\" Japanese Version Copyright (c) 1998 Ishii Tatsuo all rights reserved.
-.\" Translated 1998-03-27, Ishii Tatsuo <rfun@azusa.shinshu-u.ac.jp>
-.\" Updated 2000-04-05, Kentaro Shirakata <argrath@ub32.org>
-.\" Updated 2000-09-21, Kentaro Shirakata
-.\" Updated 2002-03-28, Kentaro Shirakata
-.\" Updated 2005-11-19, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\"*******************************************************************
 .\"
-.TH STRTOK 3  2010-09-27 "GNU" "Linux Programmer's Manual"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.TH STRTOK 3 2010\-09\-27 GNU "Linux Programmer's Manual"
 .SH 名前
 strtok, strtok_r \- 文字列からトークンを取り出す
 .SH 書式
 .nf
-.B #include <string.h>
+\fB#include <string.h>\fP
 .sp
-.BI "char *strtok(char *" str ", const char *" delim );
+\fBchar *strtok(char *\fP\fIstr\fP\fB, const char *\fP\fIdelim\fP\fB);\fP
 .sp
-.BI "char *strtok_r(char *" str ", const char *" delim ", char **" saveptr );
+\fBchar *strtok_r(char *\fP\fIstr\fP\fB, const char *\fP\fIdelim\fP\fB, char **\fP\fIsaveptr\fP\fB);\fP
 .fi
 .sp
 .in -4n
-glibc 向けの機能検査マクロの要件
-.RB ( feature_test_macros (7)
-参照):
+glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7)  参照):
 .in
 .sp
 .ad l
-.BR strtok_r ():
-_SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\ >=\ 1 ||
+\fBstrtok_r\fP(): _SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\ >=\ 1 ||
 _XOPEN_SOURCE || _POSIX_SOURCE
 .ad b
 .SH 説明
-.BR strtok ()
-関数は文字列を解析してトークンに分割する。
-.BR strtok ()
-を最初に呼び出す際には、解析対象の文字列を \fIstr\fP に
-指定する。同じ文字列の解析を行うその後の呼び出しでは、
-\fIstr\fP には NULL を指定する。
+\fBstrtok\fP()  関数は文字列を解析してトークンに分割する。 \fBstrtok\fP()  を最初に呼び出す際には、解析対象の文字列を \fIstr\fP
+に 指定する。同じ文字列の解析を行うその後の呼び出しでは、 \fIstr\fP には NULL を指定する。
 
-\fIdelim\fP 引き数には、解析する文字列をトークンに区切る文字集合を
-指定する。同じ文字列を解析する一連の呼び出しにおいて、
-\fIdelim\fP に違う文字列を指定してもよい。
+\fIdelim\fP 引き数には、解析する文字列をトークンに区切る文字集合を 指定する。同じ文字列を解析する一連の呼び出しにおいて、 \fIdelim\fP
+に違う文字列を指定してもよい。
 
-.BR strtok ()
-のそれぞれの呼び出しでは、次のトークンを
-格納した NULL 終端された文字列へのポインタが返される。
-この文字列には区切り文字は含まれない。
-これ以上トークンが見つからなかった場合には、NULL が返される。
+\fBstrtok\fP()  のそれぞれの呼び出しでは、次のトークンを 格納した NULL 終端された文字列へのポインタが返される。
+この文字列には区切り文字は含まれない。 これ以上トークンが見つからなかった場合には、NULL が返される。
 
-解析対象の文字列に2つ以上の区切り文字が連続している場合には、
-一つの区切り文字とみなされる。
-文字列の先頭や末尾にある区切り文字は無視される。言い換えると、
-.BR strtok ()
-が返すトークンは常に空でない文字列となる。
+解析対象の文字列に2つ以上の区切り文字が連続している場合には、 一つの区切り文字とみなされる。
+文字列の先頭や末尾にある区切り文字は無視される。言い換えると、 \fBstrtok\fP()  が返すトークンは常に空でない文字列となる。
 
-.BR strtok_r ()
-関数は
-.BR strtok ()
-のリエントラント版である。
-\fIsaveptr\fP 引き数は \fIchar *\fP 変数へのポインタであり、
-同じ文字列の解析を行う
-.BR strtok_r ()
-の呼び出し間で処理状況を保存するために
-.BR strtok_r ()
+\fBstrtok_r\fP()  関数は \fBstrtok\fP()  のリエントラント版である。 \fIsaveptr\fP 引き数は \fIchar *\fP
+変数へのポインタであり、 同じ文字列の解析を行う \fBstrtok_r\fP()  の呼び出し間で処理状況を保存するために \fBstrtok_r\fP()
 内部で使用される。
 
-.BR strtok_r ()
-を最初に呼び出す際には、
-.I str
-は解析対象の文字列を指していなければならず、
-.I saveptr
-の値は無視される。それ以降の呼び出しでは、
-.I str
-は NULL とし、
-.I saveptr
+\fBstrtok_r\fP()  を最初に呼び出す際には、 \fIstr\fP は解析対象の文字列を指していなければならず、 \fIsaveptr\fP
+の値は無視される。それ以降の呼び出しでは、 \fIstr\fP は NULL とし、 \fIsaveptr\fP
 は前回の呼び出し以降変更しないようにしなければならない。
 
-.BR strtok_r ()
-の呼び出し時に異なる \fIsaveptr\fP 引き数を指定することで、
-異なる文字列の解析を同時に行うことができる。
+\fBstrtok_r\fP()  の呼び出し時に異なる \fIsaveptr\fP 引き数を指定することで、 異なる文字列の解析を同時に行うことができる。
 .SH 返り値
-.BR strtok ()
-と
-.BR strtok_r ()
-は次のトークンへのポインタか、
-トークンがなければ NULL を返す。
+\fBstrtok\fP()  と \fBstrtok_r\fP()  は次のトークンへのポインタか、 トークンがなければ NULL を返す。
 .SH 準拠
-.TP
-.BR strtok ()
-SVr4, POSIX.1-2001, 4.3BSD, C89, C99.
-.TP
-.BR strtok_r ()
-POSIX.1-2001.
+.TP 
+\fBstrtok\fP()
+SVr4, POSIX.1\-2001, 4.3BSD, C89, C99.
+.TP 
+\fBstrtok_r\fP()
+POSIX.1\-2001.
 .SH バグ
-これらの関数を使うのは慎重に吟味すること。
-使用する場合は、以下の点に注意が必要である。
+これらの関数を使うのは慎重に吟味すること。 使用する場合は、以下の点に注意が必要である。
 .IP * 2
 これらの関数はその最初の引数を変更する。
 .IP *
@@ -127,28 +90,18 @@ POSIX.1-2001.
 .IP *
 区切り文字自体は失われてしまう。
 .IP *
-.BR strtok ()
-関数は文字列の解析に静的バッファを用いるので、スレッドセーフでない。
-これが問題になる場合は
-.BR strtok_r ()
+\fBstrtok\fP()  関数は文字列の解析に静的バッファを用いるので、スレッドセーフでない。 これが問題になる場合は \fBstrtok_r\fP()
 を用いること。
 .SH 例
-以下のプログラムは、
-.BR strtok_r ()
-を利用するループを入れ子にして使用し、
-文字列を2階層のトークンに分割するものである。
-1番目のコマンドライン引き数には、解析対象の文字列を指定する。
-2番目の引き数には、文字列を「大きな」トークンに分割するために
-使用する区切り文字を指定する。
-3番目の引き数には、「大きな」トークンを細かく分割するために
-使用する区切り文字を指定する。
-.PP
+以下のプログラムは、 \fBstrtok_r\fP()  を利用するループを入れ子にして使用し、 文字列を2階層のトークンに分割するものである。
+1番目のコマンドライン引き数には、解析対象の文字列を指定する。 2番目の引き数には、文字列を「大きな」トークンに分割するために
+使用する区切り文字を指定する。 3番目の引き数には、「大きな」トークンを細かく分割するために 使用する区切り文字を指定する。
 .PP
 このプログラムの出力例を以下に示す。
 .PP
 .in +4n
 .nf
-.RB "$" " ./a.out \(aqa/bbb///cc;xxx:yyy:\(aq \(aq:;\(aq \(aq/\(aq"
+$\fB ./a.out \(aqa/bbb///cc;xxx:yyy:\(aq \(aq:;\(aq \(aq/\(aq\fP
 1: a/bbb///cc
          \-\-> a
          \-\-> bbb
@@ -174,7 +127,7 @@ main(int argc, char *argv[])
     int j;
 
     if (argc != 4) {
-        fprintf(stderr, "Usage: %s string delim subdelim\\n",
+        fprintf(stderr, "Usage: %s string delim subdelim\en",
                 argv[0]);
         exit(EXIT_FAILURE);
     }
@@ -183,13 +136,13 @@ main(int argc, char *argv[])
         token = strtok_r(str1, argv[2], &saveptr1);
         if (token == NULL)
             break;
-        printf("%d: %s\\n", j, token);
+        printf("%d: %s\en", j, token);
 
         for (str2 = token; ; str2 = NULL) {
             subtoken = strtok_r(str2, argv[3], &saveptr2);
             if (subtoken == NULL)
                 break;
-            printf("\t \-\-> %s\\n", subtoken);
+            printf("\t \-\-> %s\en", subtoken);
         }
     }
 
@@ -197,18 +150,7 @@ main(int argc, char *argv[])
 }
 .fi
 .PP
-.BR strtok ()
-を使った別のプログラム例が
-.BR getaddrinfo_a (3)
-にある。
+\fBstrtok\fP()  を使った別のプログラム例が \fBgetaddrinfo_a\fP(3)  にある。
 .SH 関連項目
-.BR index (3),
-.BR memchr (3),
-.BR rindex (3),
-.BR strchr (3),
-.BR string (3),
-.BR strpbrk (3),
-.BR strsep (3),
-.BR strspn (3),
-.BR strstr (3),
-.BR wcstok (3)
+\fBindex\fP(3), \fBmemchr\fP(3), \fBrindex\fP(3), \fBstrchr\fP(3), \fBstring\fP(3),
+\fBstrpbrk\fP(3), \fBstrsep\fP(3), \fBstrspn\fP(3), \fBstrstr\fP(3), \fBwcstok\fP(3)