OSDN Git Service

(split) LDP: Update the version to 3.53 in PO files
[linuxjm/LDP_man-pages.git] / po4a / string / po / ja.po
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2013-08-15 19:32+0900\n"
10 "PO-Revision-Date: 2013-08-15 20:20+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man3/bcmp.3:31
20 #, no-wrap
21 msgid "BCMP"
22 msgstr "BCMP"
23
24 #. type: TH
25 #: build/C/man3/bcmp.3:31 build/C/man3/bzero.3:31
26 #, no-wrap
27 msgid "2008-08-06"
28 msgstr "2008-08-06"
29
30 #. type: TH
31 #: build/C/man3/bcmp.3:31 build/C/man3/bcopy.3:33 build/C/man3/bzero.3:31
32 #, no-wrap
33 msgid "Linux"
34 msgstr "Linux"
35
36 #. type: TH
37 #: build/C/man3/bcmp.3:31 build/C/man3/bcopy.3:33 build/C/man3/bstring.3:32
38 #: build/C/man3/bzero.3:31 build/C/man3/ffs.3:33 build/C/man3/index.3:31
39 #: build/C/man3/memccpy.3:30 build/C/man3/memchr.3:32 build/C/man3/memcmp.3:30
40 #: build/C/man3/memcpy.3:30 build/C/man3/memfrob.3:30 build/C/man3/memmem.3:30
41 #: build/C/man3/memmove.3:30 build/C/man3/mempcpy.3:10
42 #: build/C/man3/memset.3:30 build/C/man3/stpcpy.3:25 build/C/man3/stpncpy.3:14
43 #: build/C/man3/strcasecmp.3:30 build/C/man3/strcat.3:32
44 #: build/C/man3/strchr.3:33 build/C/man3/strcmp.3:32 build/C/man3/strcoll.3:30
45 #: build/C/man3/strcpy.3:35 build/C/man3/strdup.3:31
46 #: build/C/man3/strerror.3:39 build/C/man3/strfry.3:30
47 #: build/C/man3/string.3:30 build/C/man3/strlen.3:30 build/C/man3/strnlen.3:13
48 #: build/C/man3/strpbrk.3:30 build/C/man3/strsep.3:33
49 #: build/C/man3/strsignal.3:30 build/C/man3/strspn.3:30
50 #: build/C/man3/strstr.3:33 build/C/man3/strtok.3:32
51 #: build/C/man3/strverscmp.3:25 build/C/man3/strxfrm.3:30
52 #, no-wrap
53 msgid "Linux Programmer's Manual"
54 msgstr "Linux Programmer's Manual"
55
56 #. type: SH
57 #: build/C/man3/bcmp.3:32 build/C/man3/bcopy.3:34 build/C/man3/bstring.3:33
58 #: build/C/man3/bzero.3:32 build/C/man3/ffs.3:34 build/C/man3/index.3:32
59 #: build/C/man3/memccpy.3:31 build/C/man3/memchr.3:33 build/C/man3/memcmp.3:31
60 #: build/C/man3/memcpy.3:31 build/C/man3/memfrob.3:31 build/C/man3/memmem.3:31
61 #: build/C/man3/memmove.3:31 build/C/man3/mempcpy.3:11
62 #: build/C/man3/memset.3:31 build/C/man3/stpcpy.3:26 build/C/man3/stpncpy.3:15
63 #: build/C/man3/strcasecmp.3:31 build/C/man3/strcat.3:33
64 #: build/C/man3/strchr.3:34 build/C/man3/strcmp.3:33 build/C/man3/strcoll.3:31
65 #: build/C/man3/strcpy.3:36 build/C/man3/strdup.3:32
66 #: build/C/man3/strerror.3:40 build/C/man3/strfry.3:31
67 #: build/C/man3/string.3:31 build/C/man3/strlen.3:31 build/C/man3/strnlen.3:14
68 #: build/C/man3/strpbrk.3:31 build/C/man3/strsep.3:34
69 #: build/C/man3/strsignal.3:31 build/C/man3/strspn.3:31
70 #: build/C/man3/strstr.3:34 build/C/man3/strtok.3:33
71 #: build/C/man3/strverscmp.3:26 build/C/man3/strxfrm.3:31
72 #, no-wrap
73 msgid "NAME"
74 msgstr "名前"
75
76 #. type: Plain text
77 #: build/C/man3/bcmp.3:34
78 msgid "bcmp - compare byte sequences"
79 msgstr "bcmp - バイト列を比較する"
80
81 #. type: SH
82 #: build/C/man3/bcmp.3:34 build/C/man3/bcopy.3:36 build/C/man3/bstring.3:36
83 #: build/C/man3/bzero.3:34 build/C/man3/ffs.3:36 build/C/man3/index.3:34
84 #: build/C/man3/memccpy.3:33 build/C/man3/memchr.3:35 build/C/man3/memcmp.3:33
85 #: build/C/man3/memcpy.3:33 build/C/man3/memfrob.3:33 build/C/man3/memmem.3:33
86 #: build/C/man3/memmove.3:33 build/C/man3/mempcpy.3:13
87 #: build/C/man3/memset.3:33 build/C/man3/stpcpy.3:28 build/C/man3/stpncpy.3:17
88 #: build/C/man3/strcasecmp.3:33 build/C/man3/strcat.3:35
89 #: build/C/man3/strchr.3:36 build/C/man3/strcmp.3:35 build/C/man3/strcoll.3:33
90 #: build/C/man3/strcpy.3:38 build/C/man3/strdup.3:34
91 #: build/C/man3/strerror.3:42 build/C/man3/strfry.3:33
92 #: build/C/man3/string.3:36 build/C/man3/strlen.3:33 build/C/man3/strnlen.3:16
93 #: build/C/man3/strpbrk.3:33 build/C/man3/strsep.3:36
94 #: build/C/man3/strsignal.3:33 build/C/man3/strspn.3:33
95 #: build/C/man3/strstr.3:36 build/C/man3/strtok.3:35
96 #: build/C/man3/strverscmp.3:28 build/C/man3/strxfrm.3:33
97 #, no-wrap
98 msgid "SYNOPSIS"
99 msgstr "書式"
100
101 #. type: Plain text
102 #: build/C/man3/bcmp.3:37 build/C/man3/bcopy.3:39 build/C/man3/bzero.3:37
103 #: build/C/man3/ffs.3:39 build/C/man3/index.3:37 build/C/man3/strcasecmp.3:36
104 #: build/C/man3/string.3:39
105 #, no-wrap
106 msgid "B<#include E<lt>strings.hE<gt>>\n"
107 msgstr "B<#include E<lt>strings.hE<gt>>\n"
108
109 #. type: Plain text
110 #: build/C/man3/bcmp.3:39
111 #, no-wrap
112 msgid "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
113 msgstr "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
114
115 #. type: SH
116 #: build/C/man3/bcmp.3:40 build/C/man3/bcopy.3:42 build/C/man3/bstring.3:63
117 #: build/C/man3/bzero.3:40 build/C/man3/ffs.3:74 build/C/man3/index.3:42
118 #: build/C/man3/memccpy.3:39 build/C/man3/memchr.3:54 build/C/man3/memcmp.3:39
119 #: build/C/man3/memcpy.3:39 build/C/man3/memfrob.3:40 build/C/man3/memmem.3:41
120 #: build/C/man3/memmove.3:39 build/C/man3/mempcpy.3:27
121 #: build/C/man3/memset.3:39 build/C/man3/stpcpy.3:53 build/C/man3/stpncpy.3:42
122 #: build/C/man3/strcasecmp.3:41 build/C/man3/strcat.3:43
123 #: build/C/man3/strchr.3:49 build/C/man3/strcmp.3:43 build/C/man3/strcoll.3:39
124 #: build/C/man3/strcpy.3:46 build/C/man3/strdup.3:77
125 #: build/C/man3/strerror.3:67 build/C/man3/strfry.3:41
126 #: build/C/man3/string.3:90 build/C/man3/strlen.3:39 build/C/man3/strnlen.3:41
127 #: build/C/man3/strpbrk.3:39 build/C/man3/strsep.3:50
128 #: build/C/man3/strsignal.3:60 build/C/man3/strspn.3:41
129 #: build/C/man3/strstr.3:48 build/C/man3/strtok.3:54
130 #: build/C/man3/strverscmp.3:36 build/C/man3/strxfrm.3:39
131 #, no-wrap
132 msgid "DESCRIPTION"
133 msgstr "説明"
134
135 #. type: Plain text
136 #: build/C/man3/bcmp.3:56
137 msgid ""
138 "The B<bcmp>()  function compares the two byte sequences I<s1> and I<s2> of "
139 "length I<n> each.  If they are equal, and in particular if I<n> is zero, "
140 "B<bcmp>()  returns 0.  Otherwise it returns a nonzero result."
141 msgstr ""
142 "B<bcmp>()  は、2 つのバイト列 I<s1> と I<s2> の先頭 I<n> バイトを 比較する。"
143 "2 つが等しいか、特に I<n> が 0 の場合 B<bcmp>()  は 0 を返す。 さもなければ "
144 "0 以外を返す。"
145
146 #. type: SH
147 #: build/C/man3/bcmp.3:56 build/C/man3/bcopy.3:52 build/C/man3/bzero.3:48
148 #: build/C/man3/ffs.3:87 build/C/man3/index.3:55 build/C/man3/memccpy.3:55
149 #: build/C/man3/memchr.3:105 build/C/man3/memcmp.3:45 build/C/man3/memcpy.3:48
150 #: build/C/man3/memfrob.3:53 build/C/man3/memmem.3:54
151 #: build/C/man3/memmove.3:57 build/C/man3/mempcpy.3:53
152 #: build/C/man3/memset.3:49 build/C/man3/stpcpy.3:63 build/C/man3/stpncpy.3:82
153 #: build/C/man3/strcasecmp.3:63 build/C/man3/strcat.3:123
154 #: build/C/man3/strchr.3:81 build/C/man3/strcmp.3:66 build/C/man3/strcoll.3:58
155 #: build/C/man3/strcpy.3:108 build/C/man3/strdup.3:111
156 #: build/C/man3/strerror.3:136 build/C/man3/strfry.3:52
157 #: build/C/man3/strlen.3:45 build/C/man3/strnlen.3:58
158 #: build/C/man3/strpbrk.3:47 build/C/man3/strsep.3:74
159 #: build/C/man3/strsignal.3:77 build/C/man3/strspn.3:57
160 #: build/C/man3/strstr.3:62 build/C/man3/strtok.3:162
161 #: build/C/man3/strverscmp.3:81 build/C/man3/strxfrm.3:62
162 #, no-wrap
163 msgid "RETURN VALUE"
164 msgstr "返り値"
165
166 #. type: Plain text
167 #: build/C/man3/bcmp.3:61
168 msgid ""
169 "The B<bcmp>()  function returns 0 if the byte sequences are equal, otherwise "
170 "a nonzero result is returned."
171 msgstr "バイト列が等しい場合は 0 、等しくない場合は 0 以外を返す。"
172
173 #. type: SH
174 #: build/C/man3/bcmp.3:61 build/C/man3/bcopy.3:54 build/C/man3/bzero.3:50
175 #: build/C/man3/ffs.3:91 build/C/man3/index.3:62 build/C/man3/memccpy.3:70
176 #: build/C/man3/memchr.3:124 build/C/man3/memcmp.3:60 build/C/man3/memcpy.3:52
177 #: build/C/man3/memfrob.3:58 build/C/man3/memmem.3:59
178 #: build/C/man3/memmove.3:62 build/C/man3/mempcpy.3:60
179 #: build/C/man3/memset.3:54 build/C/man3/stpcpy.3:71 build/C/man3/stpncpy.3:91
180 #: build/C/man3/strcasecmp.3:76 build/C/man3/strcat.3:130
181 #: build/C/man3/strchr.3:107 build/C/man3/strcmp.3:79
182 #: build/C/man3/strcoll.3:69 build/C/man3/strcpy.3:116
183 #: build/C/man3/strdup.3:123 build/C/man3/strerror.3:184
184 #: build/C/man3/strfry.3:57 build/C/man3/strlen.3:50 build/C/man3/strnlen.3:71
185 #: build/C/man3/strpbrk.3:56 build/C/man3/strsep.3:80
186 #: build/C/man3/strsignal.3:84 build/C/man3/strspn.3:74
187 #: build/C/man3/strstr.3:65 build/C/man3/strtok.3:178
188 #: build/C/man3/strverscmp.3:90 build/C/man3/strxfrm.3:76
189 #, no-wrap
190 msgid "CONFORMING TO"
191 msgstr "準拠"
192
193 #. type: Plain text
194 #: build/C/man3/bcmp.3:68
195 msgid ""
196 "4.3BSD.  This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
197 "B<memcmp>(3)  in new programs.  POSIX.1-2008 removes the specification of "
198 "B<bcmp>()."
199 msgstr ""
200 "4.3BSD.  この関数は廃止予定である (POSIX.1-2001 では 過去の名残 (LEGACY) とさ"
201 "れている)。新しいプログラムでは B<memcmp>(3)  を使うべきである。 "
202 "POSIX.1-2008 では B<bcmp>()  の仕様が削除されている。"
203
204 #. type: SH
205 #: build/C/man3/bcmp.3:68 build/C/man3/bcopy.3:68 build/C/man3/bstring.3:82
206 #: build/C/man3/bzero.3:57 build/C/man3/ffs.3:103 build/C/man3/index.3:73
207 #: build/C/man3/memccpy.3:72 build/C/man3/memchr.3:136
208 #: build/C/man3/memcmp.3:62 build/C/man3/memcpy.3:54 build/C/man3/memfrob.3:63
209 #: build/C/man3/memmem.3:83 build/C/man3/memmove.3:64
210 #: build/C/man3/mempcpy.3:73 build/C/man3/memset.3:56
211 #: build/C/man3/stpcpy.3:110 build/C/man3/stpncpy.3:94
212 #: build/C/man3/strcasecmp.3:78 build/C/man3/strcat.3:169
213 #: build/C/man3/strchr.3:114 build/C/man3/strcmp.3:81
214 #: build/C/man3/strcoll.3:80 build/C/man3/strcpy.3:213
215 #: build/C/man3/strdup.3:133 build/C/man3/strerror.3:213
216 #: build/C/man3/strfry.3:62 build/C/man3/string.3:94 build/C/man3/strlen.3:52
217 #: build/C/man3/strnlen.3:73 build/C/man3/strpbrk.3:58
218 #: build/C/man3/strsep.3:100 build/C/man3/strsignal.3:87
219 #: build/C/man3/strspn.3:76 build/C/man3/strstr.3:84 build/C/man3/strtok.3:268
220 #: build/C/man3/strverscmp.3:92 build/C/man3/strxfrm.3:88
221 #, no-wrap
222 msgid "SEE ALSO"
223 msgstr "関連項目"
224
225 #. type: Plain text
226 #: build/C/man3/bcmp.3:75
227 msgid ""
228 "B<memcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), B<strncasecmp>"
229 "(3), B<strncmp>(3)"
230 msgstr ""
231 "B<memcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), B<strncasecmp>"
232 "(3), B<strncmp>(3)"
233
234 #. type: SH
235 #: build/C/man3/bcmp.3:75 build/C/man3/bcopy.3:74 build/C/man3/bstring.3:94
236 #: build/C/man3/bzero.3:60 build/C/man3/ffs.3:105 build/C/man3/index.3:83
237 #: build/C/man3/memccpy.3:78 build/C/man3/memchr.3:147
238 #: build/C/man3/memcmp.3:70 build/C/man3/memcpy.3:62 build/C/man3/memfrob.3:65
239 #: build/C/man3/memmem.3:85 build/C/man3/memmove.3:71
240 #: build/C/man3/mempcpy.3:78 build/C/man3/memset.3:60
241 #: build/C/man3/stpcpy.3:119 build/C/man3/stpncpy.3:97
242 #: build/C/man3/strcasecmp.3:87 build/C/man3/strcat.3:178
243 #: build/C/man3/strchr.3:127 build/C/man3/strcmp.3:91
244 #: build/C/man3/strcoll.3:88 build/C/man3/strcpy.3:224
245 #: build/C/man3/strdup.3:141 build/C/man3/strerror.3:219
246 #: build/C/man3/strfry.3:65 build/C/man3/string.3:119 build/C/man3/strlen.3:57
247 #: build/C/man3/strnlen.3:75 build/C/man3/strpbrk.3:69
248 #: build/C/man3/strsep.3:110 build/C/man3/strsignal.3:90
249 #: build/C/man3/strspn.3:88 build/C/man3/strstr.3:96 build/C/man3/strtok.3:279
250 #: build/C/man3/strverscmp.3:97 build/C/man3/strxfrm.3:96
251 #, no-wrap
252 msgid "COLOPHON"
253 msgstr "この文書について"
254
255 #. type: Plain text
256 #: build/C/man3/bcmp.3:82 build/C/man3/bcopy.3:81 build/C/man3/bstring.3:101
257 #: build/C/man3/bzero.3:67 build/C/man3/ffs.3:112 build/C/man3/index.3:90
258 #: build/C/man3/memccpy.3:85 build/C/man3/memchr.3:154
259 #: build/C/man3/memcmp.3:77 build/C/man3/memcpy.3:69 build/C/man3/memfrob.3:72
260 #: build/C/man3/memmem.3:92 build/C/man3/memmove.3:78
261 #: build/C/man3/mempcpy.3:85 build/C/man3/memset.3:67
262 #: build/C/man3/stpcpy.3:126 build/C/man3/stpncpy.3:104
263 #: build/C/man3/strcasecmp.3:94 build/C/man3/strcat.3:185
264 #: build/C/man3/strchr.3:134 build/C/man3/strcmp.3:98
265 #: build/C/man3/strcoll.3:95 build/C/man3/strcpy.3:231
266 #: build/C/man3/strdup.3:148 build/C/man3/strerror.3:226
267 #: build/C/man3/strfry.3:72 build/C/man3/string.3:126 build/C/man3/strlen.3:64
268 #: build/C/man3/strnlen.3:82 build/C/man3/strpbrk.3:76
269 #: build/C/man3/strsep.3:117 build/C/man3/strsignal.3:97
270 #: build/C/man3/strspn.3:95 build/C/man3/strstr.3:103
271 #: build/C/man3/strtok.3:286 build/C/man3/strverscmp.3:104
272 #: build/C/man3/strxfrm.3:103
273 msgid ""
274 "This page is part of release 3.53 of the Linux I<man-pages> project.  A "
275 "description of the project, and information about reporting bugs, can be "
276 "found at \\%http://www.kernel.org/doc/man-pages/."
277 msgstr ""
278 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.53 の一部\n"
279 "である。プロジェクトの説明とバグ報告に関する情報は\n"
280 "http://www.kernel.org/doc/man-pages/ に書かれている。"
281
282 #. type: TH
283 #: build/C/man3/bcopy.3:33
284 #, no-wrap
285 msgid "BCOPY"
286 msgstr "BCOPY"
287
288 #. type: TH
289 #: build/C/man3/bcopy.3:33
290 #, no-wrap
291 msgid "2009-03-15"
292 msgstr "2009-03-15"
293
294 #. type: Plain text
295 #: build/C/man3/bcopy.3:36
296 msgid "bcopy - copy byte sequence"
297 msgstr "bcopy - バイト列をコピーする"
298
299 #. type: Plain text
300 #: build/C/man3/bcopy.3:41
301 #, no-wrap
302 msgid "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, size_t >I<n>B<);>\n"
303 msgstr "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, size_t >I<n>B<);>\n"
304
305 #. type: Plain text
306 #: build/C/man3/bcopy.3:52
307 msgid ""
308 "The B<bcopy>()  function copies I<n> bytes from I<src> to I<dest>.  The "
309 "result is correct, even when both areas overlap."
310 msgstr ""
311 "B<bcopy>()  は I<src> から先頭 I<n> バイトを I<dest> にコピーする。 領域が重"
312 "なっていても、結果は正しいものである。"
313
314 #. type: Plain text
315 #: build/C/man3/bcopy.3:54 build/C/man3/bzero.3:50
316 msgid "None."
317 msgstr "なし。"
318
319 #. type: Plain text
320 #: build/C/man3/bcopy.3:68
321 msgid ""
322 "4.3BSD.  This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
323 "B<memcpy>(3)  or B<memmove>(3)  in new programs.  Note that the first two "
324 "arguments are interchanged for B<memcpy>(3)  and B<memmove>(3).  "
325 "POSIX.1-2008 removes the specification of B<bcopy>()."
326 msgstr ""
327 "4.3BSD.  この関数は廃止予定である (POSIX.1-2001 では 過去の名残 (LEGACY) とさ"
328 "れている)。新しいプログラムでは B<memcpy>()  や B<memmove>()  を使用すべきで"
329 "ある。 B<memcpy>()  や B<memmove>()  では、最初の 2 つの引数の順序が入れ替"
330 "わっていることに注意すること。 POSIX.1-2008 では、 B<bcopy>()  の仕様が削除さ"
331 "れている。"
332
333 #. type: Plain text
334 #: build/C/man3/bcopy.3:74
335 msgid "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
336 msgstr ""
337 "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
338
339 #. type: TH
340 #: build/C/man3/bstring.3:32
341 #, no-wrap
342 msgid "BSTRING"
343 msgstr "BSTRING"
344
345 #. type: TH
346 #: build/C/man3/bstring.3:32
347 #, no-wrap
348 msgid "2002-01-20"
349 msgstr "2002-01-20"
350
351 #. type: Plain text
352 #: build/C/man3/bstring.3:36
353 msgid ""
354 "bcmp, bcopy, bzero, memccpy, memchr, memcmp, memcpy, memfrob, memmem, "
355 "memmove, memset - byte string operations"
356 msgstr ""
357 "bcmp, bcopy, bzero, memccpy, memchr, memcmp, memcpy, memfrob, memmem, "
358 "memmove, memset - バイト列の操作を行なう"
359
360 #. type: Plain text
361 #: build/C/man3/bstring.3:39 build/C/man3/ffs.3:43 build/C/man3/memccpy.3:36
362 #: build/C/man3/memchr.3:38 build/C/man3/memcmp.3:36 build/C/man3/memcpy.3:36
363 #: build/C/man3/memmove.3:36 build/C/man3/mempcpy.3:18
364 #: build/C/man3/memset.3:36 build/C/man3/stpcpy.3:31 build/C/man3/stpncpy.3:20
365 #: build/C/man3/strcat.3:38 build/C/man3/strchr.3:39 build/C/man3/strcmp.3:38
366 #: build/C/man3/strcoll.3:36 build/C/man3/strcpy.3:41 build/C/man3/strdup.3:37
367 #: build/C/man3/strerror.3:45 build/C/man3/strfry.3:38
368 #: build/C/man3/string.3:49 build/C/man3/strlen.3:36 build/C/man3/strnlen.3:19
369 #: build/C/man3/strpbrk.3:36 build/C/man3/strsep.3:39
370 #: build/C/man3/strsignal.3:36 build/C/man3/strspn.3:36
371 #: build/C/man3/strstr.3:39 build/C/man3/strstr.3:45 build/C/man3/strtok.3:38
372 #: build/C/man3/strverscmp.3:33 build/C/man3/strxfrm.3:36
373 #, no-wrap
374 msgid "B<#include E<lt>string.hE<gt>>\n"
375 msgstr "B<#include E<lt>string.hE<gt>>\n"
376
377 #. type: Plain text
378 #: build/C/man3/bstring.3:41
379 #, no-wrap
380 msgid "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, int >I<n>B<);>\n"
381 msgstr "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, int >I<n>B<);>\n"
382
383 #. type: Plain text
384 #: build/C/man3/bstring.3:43
385 #, no-wrap
386 msgid "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, int >I<n>B<);>\n"
387 msgstr "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, int >I<n>B<);>\n"
388
389 #. type: Plain text
390 #: build/C/man3/bstring.3:45
391 #, no-wrap
392 msgid "B<void bzero(void *>I<s>B<, int >I<n>B<);>\n"
393 msgstr "B<void bzero(void *>I<s>B<, int >I<n>B<);>\n"
394
395 #. type: Plain text
396 #: build/C/man3/bstring.3:47 build/C/man3/memccpy.3:38
397 #, no-wrap
398 msgid "B<void *memccpy(void *>I<dest>B<, const void *>I<src>B<, int >I<c>B<, size_t >I<n>B<);>\n"
399 msgstr "B<void *memccpy(void *>I<dest>B<, const void *>I<src>B<, int >I<c>B<, size_t >I<n>B<);>\n"
400
401 #. type: Plain text
402 #: build/C/man3/bstring.3:49 build/C/man3/memchr.3:40
403 #, no-wrap
404 msgid "B<void *memchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
405 msgstr "B<void *memchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
406
407 #. type: Plain text
408 #: build/C/man3/bstring.3:51 build/C/man3/memcmp.3:38
409 #, no-wrap
410 msgid "B<int memcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
411 msgstr "B<int memcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
412
413 #. type: Plain text
414 #: build/C/man3/bstring.3:53 build/C/man3/memcpy.3:38
415 #, no-wrap
416 msgid "B<void *memcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
417 msgstr "B<void *memcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
418
419 #. type: Plain text
420 #: build/C/man3/bstring.3:55 build/C/man3/memfrob.3:39
421 #, no-wrap
422 msgid "B<void *memfrob(void *>I<s>B<, size_t >I<n>B<);>\n"
423 msgstr "B<void *memfrob(void *>I<s>B<, size_t >I<n>B<);>\n"
424
425 #. type: Plain text
426 #: build/C/man3/bstring.3:58
427 #, no-wrap
428 msgid ""
429 "B<void *memmem(const void *>I<needle>B<, size_t >I<needlelen>B<,>\n"
430 "B<             const void *>I<haystack>B<, size_t >I<haystacklen>B<);>\n"
431 msgstr ""
432 "B<void *memmem(const void *>I<needle>B<, size_t >I<needlelen>B<,>\n"
433 "B<             const void *>I<haystack>B<, size_t >I<haystacklen>B<);>\n"
434
435 #. type: Plain text
436 #: build/C/man3/bstring.3:60 build/C/man3/memmove.3:38
437 #, no-wrap
438 msgid "B<void *memmove(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
439 msgstr "B<void *memmove(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
440
441 #. type: Plain text
442 #: build/C/man3/bstring.3:62 build/C/man3/memset.3:38
443 #, no-wrap
444 msgid "B<void *memset(void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
445 msgstr "B<void *memset(void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
446
447 #. type: Plain text
448 #: build/C/man3/bstring.3:68
449 msgid ""
450 "The byte string functions perform operations on strings (byte arrays)  that "
451 "are not necessarily null-terminated.  See the individual man pages for "
452 "descriptions of each function."
453 msgstr ""
454 "これらの関数は NULL 終端する必要のない文字列 (バイト配列) の操作を行う。 関数"
455 "の詳しい説明は、それぞれの man ページを参照すること。"
456
457 #. type: SH
458 #: build/C/man3/bstring.3:68 build/C/man3/ffs.3:100 build/C/man3/strcat.3:132
459 #: build/C/man3/strcoll.3:71 build/C/man3/strcpy.3:118
460 #: build/C/man3/strsep.3:82 build/C/man3/strxfrm.3:78
461 #, no-wrap
462 msgid "NOTES"
463 msgstr "注意"
464
465 #.  The old functions are not even available on some non-GNU/Linux systems.
466 #. type: Plain text
467 #: build/C/man3/bstring.3:82
468 msgid ""
469 "The functions B<bcmp>(), B<bcopy>()  and B<bzero>()  are obsolete.  Use "
470 "B<memcmp>(), B<memcpy>()  and B<memset>()  instead."
471 msgstr ""
472 "B<bcmp>(), B<bcopy>(), B<bzero>()  関数は古いものである。代わりに B<memcmp>"
473 "(), B<memcpy>()  B<memset>()  を使うこと。"
474
475 #. type: Plain text
476 #: build/C/man3/bstring.3:94
477 msgid ""
478 "B<bcmp>(3), B<bcopy>(3), B<bzero>(3), B<memccpy>(3), B<memchr>(3), B<memcmp>"
479 "(3), B<memcpy>(3), B<memfrob>(3), B<memmem>(3), B<memmove>(3), B<memset>(3)"
480 msgstr ""
481 "B<bcmp>(3), B<bcopy>(3), B<bzero>(3), B<memccpy>(3), B<memchr>(3), B<memcmp>"
482 "(3), B<memcpy>(3), B<memfrob>(3), B<memmem>(3), B<memmove>(3), B<memset>(3)"
483
484 #. type: TH
485 #: build/C/man3/bzero.3:31
486 #, no-wrap
487 msgid "BZERO"
488 msgstr "BZERO"
489
490 #. type: Plain text
491 #: build/C/man3/bzero.3:34
492 msgid "bzero - write zero-valued bytes"
493 msgstr "bzero - 値 0 のバイトで埋める"
494
495 #. type: Plain text
496 #: build/C/man3/bzero.3:39
497 #, no-wrap
498 msgid "B<void bzero(void *>I<s>B<, size_t >I<n>B<);>\n"
499 msgstr "B<void bzero(void *>I<s>B<, size_t >I<n>B<);>\n"
500
501 #. type: Plain text
502 #: build/C/man3/bzero.3:48
503 msgid ""
504 "The B<bzero>()  function sets the first I<n> bytes of the area starting at "
505 "I<s> to zero (bytes containing \\(aq\\e0\\(aq)."
506 msgstr ""
507 "B<bzero>()  関数は バイト列 I<s> から始まる領域の先頭 I<n> バイトを 数値ゼロ "
508 "(値が \\(aq\\e0\\(aq のバイト) で埋める。"
509
510 #. type: Plain text
511 #: build/C/man3/bzero.3:57
512 msgid ""
513 "4.3BSD.  This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
514 "B<memset>(3)  in new programs.  POSIX.1-2008 removes the specification of "
515 "B<bzero>()."
516 msgstr ""
517 "4.3BSD.  この関数は廃止予定である (POSIX.1-2001 では 過去の名残 (LEGACY) とさ"
518 "れている)。新しいプログラムでは B<memset>(3)  を使用すべきである。 "
519 "POSIX.1-2008 では B<bzero>()  の仕様が削除されている。"
520
521 #. type: Plain text
522 #: build/C/man3/bzero.3:60
523 msgid "B<memset>(3), B<swab>(3)"
524 msgstr "B<memset>(3), B<swab>(3)"
525
526 #. type: TH
527 #: build/C/man3/ffs.3:33
528 #, no-wrap
529 msgid "FFS"
530 msgstr "FFS"
531
532 #. type: TH
533 #: build/C/man3/ffs.3:33 build/C/man3/strcoll.3:30 build/C/man3/strfry.3:30
534 #, no-wrap
535 msgid "2010-09-20"
536 msgstr "2010-09-20"
537
538 #. type: TH
539 #: build/C/man3/ffs.3:33 build/C/man3/index.3:31 build/C/man3/memccpy.3:30
540 #: build/C/man3/memfrob.3:30 build/C/man3/memmem.3:30
541 #: build/C/man3/memmove.3:30 build/C/man3/mempcpy.3:10
542 #: build/C/man3/memset.3:30 build/C/man3/stpcpy.3:25 build/C/man3/stpncpy.3:14
543 #: build/C/man3/strcat.3:32 build/C/man3/strchr.3:33 build/C/man3/strcoll.3:30
544 #: build/C/man3/strcpy.3:35 build/C/man3/strdup.3:31 build/C/man3/strfry.3:30
545 #: build/C/man3/strlen.3:30 build/C/man3/strnlen.3:13 build/C/man3/strsep.3:33
546 #: build/C/man3/strsignal.3:30 build/C/man3/strstr.3:33
547 #: build/C/man3/strtok.3:32 build/C/man3/strverscmp.3:25
548 #: build/C/man3/strxfrm.3:30
549 #, no-wrap
550 msgid "GNU"
551 msgstr "GNU"
552
553 #. type: Plain text
554 #: build/C/man3/ffs.3:36
555 msgid "ffs, ffsl, ffsll - find first bit set in a word"
556 msgstr "ffs, ffsl, ffsll - ワードの中で最初にセットされているビットの検出"
557
558 #. type: Plain text
559 #: build/C/man3/ffs.3:41
560 #, no-wrap
561 msgid "B<int ffs(int >I<i>B<);>\n"
562 msgstr "B<int ffs(int >I<i>B<);>\n"
563
564 #. type: Plain text
565 #: build/C/man3/ffs.3:45
566 #, no-wrap
567 msgid "B<int ffsl(long int >I<i>B<);>\n"
568 msgstr "B<int ffsl(long int >I<i>B<);>\n"
569
570 #. type: Plain text
571 #: build/C/man3/ffs.3:47
572 #, no-wrap
573 msgid "B<int ffsll(long long int >I<i>B<);>\n"
574 msgstr "B<int ffsll(long long int >I<i>B<);>\n"
575
576 #. type: Plain text
577 #: build/C/man3/ffs.3:52 build/C/man3/memchr.3:49 build/C/man3/stpcpy.3:38
578 #: build/C/man3/stpncpy.3:27 build/C/man3/strdup.3:50
579 #: build/C/man3/strerror.3:58 build/C/man3/strnlen.3:26
580 #: build/C/man3/strsep.3:46 build/C/man3/strsignal.3:45
581 #: build/C/man3/strtok.3:47
582 msgid ""
583 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
584 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
585
586 #. type: Plain text
587 #: build/C/man3/ffs.3:57
588 msgid "B<ffs>():"
589 msgstr "B<ffs>():"
590
591 #. type: TP
592 #: build/C/man3/ffs.3:58
593 #, no-wrap
594 msgid "Since glibc 2.12:"
595 msgstr "glibc 2.10 以降:"
596
597 #. type: Plain text
598 #: build/C/man3/ffs.3:62
599 msgid ""
600 "_SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L || "
601 "_XOPEN_SOURCE\\ E<gt>=\\ 700 ||"
602 msgstr ""
603 "_SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L || "
604 "_XOPEN_SOURCE\\ E<gt>=\\ 700 ||"
605
606 #. type: TP
607 #: build/C/man3/ffs.3:62
608 #, no-wrap
609 msgid "Before glibc 2.12:"
610 msgstr "glibc 2.10 より前:"
611
612 #. type: Plain text
613 #: build/C/man3/ffs.3:65
614 msgid "none"
615 msgstr "none"
616
617 #. type: Plain text
618 #: build/C/man3/ffs.3:69
619 msgid "B<ffsl>(), B<ffsll>():"
620 msgstr "B<ffsl>(), B<ffsll>():"
621
622 #. type: Plain text
623 #: build/C/man3/ffs.3:71 build/C/man3/stpcpy.3:50 build/C/man3/stpncpy.3:39
624 #: build/C/man3/strdup.3:70 build/C/man3/strnlen.3:38
625 #: build/C/man3/strsignal.3:57
626 msgid "_GNU_SOURCE"
627 msgstr "_GNU_SOURCE"
628
629 #. type: Plain text
630 #: build/C/man3/ffs.3:87
631 msgid ""
632 "The B<ffs>()  function returns the position of the first (least significant) "
633 "bit set in the word I<i>.  The least significant bit is position 1 and the "
634 "most significant position is, for example, 32 or 64.  The functions B<ffsll>"
635 "()  and B<ffsl>()  do the same but take arguments of possibly different size."
636 msgstr ""
637 "B<ffs>()  関数は、ワード I<i> の中で最初にセットされている (最下位)ビットの位"
638 "置を返す。 最下位ビットの位置は 1、最上位ビットの位置は例えば 32 や 64 であ"
639 "る。 B<ffsll>()  関数と B<ffsl>()  関数も同様だが、 異なったサイズの引数をと"
640 "る。"
641
642 #. type: Plain text
643 #: build/C/man3/ffs.3:91
644 msgid ""
645 "These functions return the position of the first bit set, or 0 if no bits "
646 "are set in I<i>."
647 msgstr ""
648 "これらの関数は、最初にセットされているビットの位置を返し、 I<i> のどのビット"
649 "もセットされていなければ 0 を返す。"
650
651 #. type: Plain text
652 #: build/C/man3/ffs.3:94
653 msgid "B<ffs>(): 4.3BSD, POSIX.1-2001."
654 msgstr "B<ffs>(): 4.3BSD, POSIX.1-2001."
655
656 #. type: Plain text
657 #: build/C/man3/ffs.3:100
658 msgid "The B<ffsl>()  and B<ffsll>()  functions are glibc extensions."
659 msgstr "関数 B<ffsl>()  と B<ffsll>()  は glibc による拡張である。"
660
661 #. type: Plain text
662 #: build/C/man3/ffs.3:103
663 msgid "BSD systems have a prototype in I<E<lt>string.hE<gt>>."
664 msgstr "BSD システムでは I<E<lt>string.hE<gt>> にプロトタイプがある。"
665
666 #. type: Plain text
667 #: build/C/man3/ffs.3:105
668 msgid "B<memchr>(3)"
669 msgstr "B<memchr>(3)"
670
671 #. type: TH
672 #: build/C/man3/index.3:31
673 #, no-wrap
674 msgid "INDEX"
675 msgstr "INDEX"
676
677 #. type: TH
678 #: build/C/man3/index.3:31
679 #, no-wrap
680 msgid "2011-09-21"
681 msgstr "2011-09-21"
682
683 #. type: Plain text
684 #: build/C/man3/index.3:34
685 msgid "index, rindex - locate character in string"
686 msgstr "index, rindex - 文字列中の文字の位置を示す"
687
688 #. type: Plain text
689 #: build/C/man3/index.3:39 build/C/man3/string.3:45
690 #, no-wrap
691 msgid "B<char *index(const char *>I<s>B<, int >I<c>B<);>\n"
692 msgstr "B<char *index(const char *>I<s>B<, int >I<c>B<);>\n"
693
694 #. type: Plain text
695 #: build/C/man3/index.3:41 build/C/man3/string.3:47
696 #, no-wrap
697 msgid "B<char *rindex(const char *>I<s>B<, int >I<c>B<);>\n"
698 msgstr "B<char *rindex(const char *>I<s>B<, int >I<c>B<);>\n"
699
700 #. type: Plain text
701 #: build/C/man3/index.3:47
702 msgid ""
703 "The B<index>()  function returns a pointer to the first occurrence of the "
704 "character I<c> in the string I<s>."
705 msgstr ""
706 "B<index>()  関数は、文字列 I<s> 中に最初に文字 I<c> が 現れた位置へのポインタ"
707 "を返す。"
708
709 #. type: Plain text
710 #: build/C/man3/index.3:52
711 msgid ""
712 "The B<rindex>()  function returns a pointer to the last occurrence of the "
713 "character I<c> in the string I<s>."
714 msgstr ""
715 "B<rindex>()  関数は、文字列 I<s> 中に最後に文字 I<c> が 現れた位置へのポイン"
716 "タを返す。"
717
718 #. type: Plain text
719 #: build/C/man3/index.3:55
720 msgid ""
721 "The terminating null byte (\\(aq\\e0\\(aq) is considered to be a part of the "
722 "strings."
723 msgstr ""
724 "文字列を終端する NULL バイト (\\(aq\\e0\\(aq) は、文字列の一部とみなされる。"
725
726 #. type: Plain text
727 #: build/C/man3/index.3:62
728 msgid ""
729 "The B<index>()  and B<rindex>()  functions return a pointer to the matched "
730 "character or NULL if the character is not found."
731 msgstr ""
732 "B<index>()  と B<rindex>()  関数は、一致した文字へのポインタか、 もし文字が見"
733 "つからない場合は NULL を返す。"
734
735 #. type: Plain text
736 #: build/C/man3/index.3:73
737 msgid ""
738 "4.3BSD; marked as LEGACY in POSIX.1-2001.  POSIX.1-2008 removes the "
739 "specifications of B<index>()  and B<rindex>(), recommending B<strchr>(3)  "
740 "and B<strrchr>(3)  instead."
741 msgstr ""
742 "4.3BSD; POSIX.1-2001 では「過去の名残 (LEGACY)」と位置付けられている。 "
743 "POSIX.1-2008 では B<index>()  と B<rindex>()  の仕様が削除されている。 代わり"
744 "に、 B<strchr>(3)  と B<strrchr>(3)  の使用が推奨されている。"
745
746 #. type: Plain text
747 #: build/C/man3/index.3:83
748 msgid ""
749 "B<memchr>(3), B<strchr>(3), B<string>(3), B<strpbrk>(3), B<strrchr>(3), "
750 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
751 msgstr ""
752 "B<memchr>(3), B<strchr>(3), B<string>(3), B<strpbrk>(3), B<strrchr>(3), "
753 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
754
755 #. type: TH
756 #: build/C/man3/memccpy.3:30
757 #, no-wrap
758 msgid "MEMCCPY"
759 msgstr "MEMCCPY"
760
761 #. type: TH
762 #: build/C/man3/memccpy.3:30
763 #, no-wrap
764 msgid "2009-01-13"
765 msgstr "1993-04-10"
766
767 #. type: Plain text
768 #: build/C/man3/memccpy.3:33
769 msgid "memccpy - copy memory area"
770 msgstr "memccpy - メモリ領域をコピーする"
771
772 #. type: Plain text
773 #: build/C/man3/memccpy.3:53
774 msgid ""
775 "The B<memccpy>()  function copies no more than I<n> bytes from memory area "
776 "I<src> to memory area I<dest>, stopping when the character I<c> is found."
777 msgstr ""
778 "B<memccpy>()  は、メモリ領域 I<src> からメモリ領域 I<dest> に 最大で I<n> バ"
779 "イトのコピーを行う。 I<n> バイトコピーする前に文字 I<c> が見つかると、 そこで"
780 "コピーを中止する。"
781
782 #. type: Plain text
783 #: build/C/man3/memccpy.3:55
784 msgid "If the memory areas overlap, the results are undefined."
785 msgstr "コピー元とコピー先のメモリ領域が重なっている場合、 結果は不定である。"
786
787 #. type: Plain text
788 #: build/C/man3/memccpy.3:70
789 msgid ""
790 "The B<memccpy>()  function returns a pointer to the next character in "
791 "I<dest> after I<c>, or NULL if I<c> was not found in the first I<n> "
792 "characters of I<src>."
793 msgstr ""
794 "B<memccpy>()  は、I<dest> 中に見つかった I<c> の 次にあるキャラクター型の変数"
795 "を指すポインタを返す。 見つからなかった場合、NULL を返す。"
796
797 #. type: Plain text
798 #: build/C/man3/memccpy.3:72
799 msgid "SVr4, 4.3BSD, POSIX.1-2001."
800 msgstr "SVr4, 4.3BSD, POSIX.1-2001."
801
802 #. type: Plain text
803 #: build/C/man3/memccpy.3:78
804 msgid "B<bcopy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
805 msgstr "B<bcopy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
806
807 #. type: TH
808 #: build/C/man3/memchr.3:32
809 #, no-wrap
810 msgid "MEMCHR"
811 msgstr "MEMCHR"
812
813 #. type: TH
814 #: build/C/man3/memchr.3:32
815 #, no-wrap
816 msgid "2012-04-23"
817 msgstr "2012-04-23"
818
819 #. type: Plain text
820 #: build/C/man3/memchr.3:35
821 msgid "memchr, memrchr, rawmemchr - scan memory for a character"
822 msgstr "memchr, memrchr, rawmemchr - 文字を探すためにメモリをスキャンする"
823
824 #. type: Plain text
825 #: build/C/man3/memchr.3:42
826 #, no-wrap
827 msgid "B<void *memrchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
828 msgstr "B<void *memrchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
829
830 #. type: Plain text
831 #: build/C/man3/memchr.3:44
832 #, no-wrap
833 msgid "B<void *rawmemchr(const void *>I<s>B<, int >I<c>B<);>\n"
834 msgstr "B<void *rawmemchr(const void *>I<s>B<, int >I<c>B<);>\n"
835
836 #. type: Plain text
837 #: build/C/man3/memchr.3:54
838 msgid "B<memrchr>(), B<rawmemchr>(): _GNU_SOURCE"
839 msgstr "B<memrchr>(): B<rawmemchr>(): _GNU_SOURCE"
840
841 #. type: Plain text
842 #: build/C/man3/memchr.3:70
843 msgid ""
844 "The B<memchr>()  function scans the initial I<n> bytes of the memory area "
845 "pointed to by I<s> for the first instance of I<c>.  Both I<c> and the bytes "
846 "of the memory area pointed to by I<s> are interpreted as I<unsigned char>."
847 msgstr ""
848 "B<memchr>() 関数は、ポインタ I<s> が指し示すメモリ領域の先頭の\n"
849 "I<n> バイトから最初に登場する文字 I<c> を探す。\n"
850 "I<c> と I<s> が指し示すメモリ領域の各バイトは両方とも\n"
851 "I<unsigned char> と解釈される。"
852
853 #. type: Plain text
854 #: build/C/man3/memchr.3:81
855 msgid ""
856 "The B<memrchr>()  function is like the B<memchr>()  function, except that it "
857 "searches backward from the end of the I<n> bytes pointed to by I<s> instead "
858 "of forward from the beginning."
859 msgstr ""
860 "B<memrchr>()  関数は B<memchr>()  関数に似ているが、 先頭から順方向に探すので"
861 "はなく、 ポインタ I<s> が指し示す I<n> バイトのメモリブロックの 末尾から逆向"
862 "きに探す。"
863
864 #. type: Plain text
865 #: build/C/man3/memchr.3:99
866 msgid ""
867 "The B<rawmemchr>()  function is similar to B<memchr>(): it assumes (i.e., "
868 "the programmer knows for certain)  that an instance of I<c> lies somewhere "
869 "in the memory area starting at the location pointed to by I<s>, and so "
870 "performs an optimized search for I<c> (i.e., no use of a count argument to "
871 "limit the range of the search).  If an instance of I<c> is not found, the "
872 "results are unpredictable.  The following call is a fast means of locating a "
873 "string's terminating null byte:"
874 msgstr ""
875 "B<rawmemchr>() 関数は B<memchr>() と同様だが、 I<c> が I<s> が指す場所\n"
876 "から始まるメモリ領域のどこかにあることを前提にして (つまり、プログラマ\n"
877 "はそのことを知っている)、最適化した方法で I<c> の検索を実行する (すなわ\n"
878 "ち、検索範囲の上限を示す引き数も使用されない)。I<c> が見つからなかった\n"
879 "場合、その結果はどうなるか分からない。次に示す呼び出しは、文字列終端の\n"
880 "NULL バイトの位置を特定する高速な手段である。"
881
882 #. type: Plain text
883 #: build/C/man3/memchr.3:103
884 #, no-wrap
885 msgid "char *p = rawmemchr(s,\\ \\(aq\\e0\\(aq);\n"
886 msgstr "char *p = rawmemchr(s,\\ \\(aq\\e0\\(aq);\n"
887
888 #. type: Plain text
889 #: build/C/man3/memchr.3:113
890 msgid ""
891 "The B<memchr>()  and B<memrchr>()  functions return a pointer to the "
892 "matching byte or NULL if the character does not occur in the given memory "
893 "area."
894 msgstr ""
895 "B<memchr>()  関数と B<memrchr>()  関数は一致する文字へのポインタを返し、 もし"
896 "文字が指定メモリ領域に現れない場合は NULL を返す。"
897
898 #. type: Plain text
899 #: build/C/man3/memchr.3:118
900 msgid ""
901 "The B<rawmemchr>()  function returns a pointer to the matching byte, if one "
902 "is found.  If no matching byte is found, the result is unspecified."
903 msgstr ""
904 "B<rawmemchr>()  関数はマッチするバイトが見つかった場合はマッチしたバイトへの"
905 "ポインタを返す。 マッチするバイトが見つからなかった場合、結果は不定である。"
906
907 #. type: SH
908 #: build/C/man3/memchr.3:118 build/C/man3/mempcpy.3:57
909 #: build/C/man3/strchr.3:104
910 #, no-wrap
911 msgid "VERSIONS"
912 msgstr "バージョン"
913
914 #. type: Plain text
915 #: build/C/man3/memchr.3:121
916 msgid "B<rawmemchr>()  first appeared in glibc in version 2.1."
917 msgstr "B<rawmemchr>()  は glibc バージョン 2.1 で初めて登場した。"
918
919 #. type: Plain text
920 #: build/C/man3/memchr.3:124
921 msgid "B<memrchr>()  first appeared in glibc in version 2.2."
922 msgstr "B<memrchr>()  は glibc バージョン 2.2 で初めて登場した。"
923
924 #. type: Plain text
925 #: build/C/man3/memchr.3:128
926 msgid ""
927 "The B<memchr>()  function conforms to SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
928 msgstr "B<memchr>()  関数は SVr4, 4.3BSD, C89, C99, POSIX.1-2001 に準拠する。"
929
930 #. type: Plain text
931 #: build/C/man3/memchr.3:132
932 msgid ""
933 "The B<memrchr>()  function is a GNU extension, available since glibc 2.1.91."
934 msgstr "B<memrchr>()  関数は GNU 拡張であり、glibc 2.1.91 から使用可能である。"
935
936 #. type: Plain text
937 #: build/C/man3/memchr.3:136
938 msgid ""
939 "The B<rawmemchr>()  function is a GNU extension, available since glibc 2.1."
940 msgstr "B<rawmemchr>()  関数は GNU 拡張であり、glibc 2.1 から使用可能である。"
941
942 #. type: Plain text
943 #: build/C/man3/memchr.3:147
944 msgid ""
945 "B<ffs>(3), B<index>(3), B<rindex>(3), B<strchr>(3), B<strpbrk>(3), B<strrchr>"
946 "(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wmemchr>(3)"
947 msgstr ""
948 "B<ffs>(3), B<index>(3), B<rindex>(3), B<strchr>(3), B<strpbrk>(3), B<strrchr>"
949 "(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wmemchr>(3)"
950
951 #. type: TH
952 #: build/C/man3/memcmp.3:30
953 #, no-wrap
954 msgid "MEMCMP"
955 msgstr "MEMCMP"
956
957 #. type: TH
958 #: build/C/man3/memcmp.3:30 build/C/man3/strcmp.3:32
959 #, no-wrap
960 msgid "2012-11-25"
961 msgstr "2012-11-25"
962
963 #. type: Plain text
964 #: build/C/man3/memcmp.3:33
965 msgid "memcmp - compare memory areas"
966 msgstr "memcmp - メモリ領域を比較する"
967
968 #. type: Plain text
969 #: build/C/man3/memcmp.3:45
970 msgid ""
971 "The B<memcmp>()  function compares the first I<n> bytes (each interpreted as "
972 "I<unsigned char>)  of the memory areas I<s1> and I<s2>."
973 msgstr ""
974 "B<memcmp>()  関数は、メモリ領域 I<s1> とI<s2> の最初の I<n> バイトを比較する "
975 "(各バイトは I<unsigned char> として解釈される)。"
976
977 #. type: Plain text
978 #: build/C/man3/memcmp.3:52
979 msgid ""
980 "The B<memcmp>()  function returns an integer less than, equal to, or greater "
981 "than zero if the first I<n> bytes of I<s1> is found, respectively, to be "
982 "less than, to match, or be greater than the first I<n> bytes of I<s2>."
983 msgstr ""
984 "B<memcmp>()  関数は、I<s1> の最初の I<n> バイトが I<s2> の最初の I<n> バイト"
985 "よりも 小さいか、同じか、あるいは大きいかによってそれぞれ、負の整数、0、 正の"
986 "整数を返す。"
987
988 #. type: Plain text
989 #: build/C/man3/memcmp.3:60
990 msgid ""
991 "For a nonzero return value, the sign is determined by the sign of the "
992 "difference between the first pair of bytes (interpreted as I<unsigned "
993 "char>)  that differ in I<s1> and I<s2>."
994 msgstr ""
995 "0 でない値の場合、 I<s1> と I<s2> で値が異なった最初のバイトの値の差で符号は"
996 "決定される (バイトは I<unsigned char> で解釈される)。"
997
998 #. type: Plain text
999 #: build/C/man3/memcmp.3:62 build/C/man3/memcpy.3:54 build/C/man3/memmove.3:64
1000 #: build/C/man3/memset.3:56
1001 msgid "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
1002 msgstr "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
1003
1004 #. type: Plain text
1005 #: build/C/man3/memcmp.3:70
1006 msgid ""
1007 "B<bcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), B<strncasecmp>"
1008 "(3), B<strncmp>(3), B<wmemcmp>(3)"
1009 msgstr ""
1010 "B<bcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), B<strncasecmp>"
1011 "(3), B<strncmp>(3), B<wmemcmp>(3)"
1012
1013 #. type: TH
1014 #: build/C/man3/memcpy.3:30
1015 #, no-wrap
1016 msgid "MEMCPY"
1017 msgstr "MEMCPY"
1018
1019 #. type: TH
1020 #: build/C/man3/memcpy.3:30
1021 #, no-wrap
1022 msgid "2010-11-15"
1023 msgstr "2010-11-15"
1024
1025 #. type: Plain text
1026 #: build/C/man3/memcpy.3:33
1027 msgid "memcpy - copy memory area"
1028 msgstr "memcpy - メモリ領域をコピーする。"
1029
1030 #. type: Plain text
1031 #: build/C/man3/memcpy.3:48
1032 msgid ""
1033 "The B<memcpy>()  function copies I<n> bytes from memory area I<src> to "
1034 "memory area I<dest>.  The memory areas must not overlap.  Use B<memmove>(3)  "
1035 "if the memory areas do overlap."
1036 msgstr ""
1037 "B<memcpy>()  はメモリ領域 I<src> の先頭 I<n> バイトを メモリ領域 I<dest> にコ"
1038 "ピーする。コピー元の領域と コピー先の領域が重なってはならない。重なっている場"
1039 "合は B<memmove>(3)  を使うこと。"
1040
1041 #. type: Plain text
1042 #: build/C/man3/memcpy.3:52
1043 msgid "The B<memcpy>()  function returns a pointer to I<dest>."
1044 msgstr "B<memcpy>()  は I<dest> へのポインタを返す。"
1045
1046 #. type: Plain text
1047 #: build/C/man3/memcpy.3:62
1048 msgid ""
1049 "B<bcopy>(3), B<memccpy>(3), B<memmove>(3), B<mempcpy>(3), B<strcpy>(3), "
1050 "B<strncpy>(3), B<wmemcpy>(3)"
1051 msgstr ""
1052 "B<bcopy>(3), B<memccpy>(3), B<memmove>(3), B<mempcpy>(3), B<strcpy>(3), "
1053 "B<strncpy>(3), B<wmemcpy>(3)"
1054
1055 #. type: TH
1056 #: build/C/man3/memfrob.3:30
1057 #, no-wrap
1058 msgid "MEMFROB"
1059 msgstr "MEMFROB"
1060
1061 #. type: TH
1062 #: build/C/man3/memfrob.3:30
1063 #, no-wrap
1064 msgid "2010-09-10"
1065 msgstr "2010-09-10"
1066
1067 #. type: Plain text
1068 #: build/C/man3/memfrob.3:33
1069 msgid "memfrob - frobnicate (encrypt) a memory area"
1070 msgstr "memfrob - メモリエリアの操作 (暗号化)"
1071
1072 #. type: Plain text
1073 #: build/C/man3/memfrob.3:37
1074 #, no-wrap
1075 msgid ""
1076 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
1077 "B<#include E<lt>string.hE<gt>>\n"
1078 msgstr ""
1079 "B<#define _GNU_SOURCE>             /* feature_test_macros(7) 参照 */\n"
1080 "B<#include E<lt>string.hE<gt>>\n"
1081
1082 #. type: Plain text
1083 #: build/C/man3/memfrob.3:50
1084 msgid ""
1085 "The B<memfrob>()  function encrypts the first I<n> bytes of the memory area "
1086 "I<s> by exclusive-ORing each character with the number 42.  The effect can "
1087 "be reversed by using B<memfrob>()  on the encrypted memory area."
1088 msgstr ""
1089 "B<memfrob>()  関数は、メモリエリア I<s> の最初の I<n> バイトの それぞれの文字"
1090 "を 42 との排他的論理をとることによって暗号化する。 変換後のデータは、暗号化さ"
1091 "れているメモリエリアに (再度)  B<memfrob>()  関数を施すことで、元に戻すことが"
1092 "できる。"
1093
1094 #. type: Plain text
1095 #: build/C/man3/memfrob.3:53
1096 msgid ""
1097 "Note that this function is not a proper encryption routine as the XOR "
1098 "constant is fixed, and is suitable only for hiding strings."
1099 msgstr ""
1100 "この関数は妥当な暗号化ルーチンであるとは言えないことに注意して欲しい。 XOR を"
1101 "とる定数を固定しているので、せいぜい、文字列を隠す程度の用途にしか向いていな"
1102 "い。"
1103
1104 #. type: Plain text
1105 #: build/C/man3/memfrob.3:58
1106 msgid ""
1107 "The B<memfrob>()  function returns a pointer to the encrypted memory area."
1108 msgstr "B<memfrob>()  関数は、暗号化されたメモリエリアへのポインタを返す。"
1109
1110 #. type: Plain text
1111 #: build/C/man3/memfrob.3:63
1112 msgid "The B<memfrob>()  function is unique to the GNU C Library."
1113 msgstr "B<memfrob>()  関数は GNU C ライブラリに固有である。"
1114
1115 #. type: Plain text
1116 #: build/C/man3/memfrob.3:65
1117 msgid "B<strfry>(3)"
1118 msgstr "B<strfry>(3)"
1119
1120 #. type: TH
1121 #: build/C/man3/memmem.3:30
1122 #, no-wrap
1123 msgid "MEMMEM"
1124 msgstr "MEMMEM"
1125
1126 #. type: TH
1127 #: build/C/man3/memmem.3:30
1128 #, no-wrap
1129 msgid "2008-12-05"
1130 msgstr "2008-12-05"
1131
1132 #. type: Plain text
1133 #: build/C/man3/memmem.3:33
1134 msgid "memmem - locate a substring"
1135 msgstr "memmem - 部分文字列の位置を示す"
1136
1137 #. type: Plain text
1138 #: build/C/man3/memmem.3:37 build/C/man3/strchr.3:46
1139 #, no-wrap
1140 msgid ""
1141 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
1142 "B<#include E<lt>string.hE<gt>>\n"
1143 msgstr ""
1144 "B<#define _GNU_SOURCE>         /* feature_test_macros(7) 参照 */\n"
1145 "B<#include E<lt>string.hE<gt>>\n"
1146
1147 #. type: Plain text
1148 #: build/C/man3/memmem.3:40
1149 #, no-wrap
1150 msgid ""
1151 "B<void *memmem(const void *>I<haystack>B<, size_t >I<haystacklen>B<,>\n"
1152 "B<             const void *>I<needle>B<, size_t >I<needlelen>B<);>\n"
1153 msgstr ""
1154 "B<void *memmem(const void *>I<haystack>B<, size_t >I<haystacklen>B<,>\n"
1155 "B<             const void *>I<needle>B<, size_t >I<needlelen>B<);>\n"
1156
1157 #. type: Plain text
1158 #: build/C/man3/memmem.3:54
1159 msgid ""
1160 "The B<memmem>()  function finds the start of the first occurrence of the "
1161 "substring I<needle> of length I<needlelen> in the memory area I<haystack> of "
1162 "length I<haystacklen>."
1163 msgstr ""
1164 "B<memmem>()  関数は、 I<haystacklen> の大きさを持つメモリ領域 I<haystack> の"
1165 "中で I<needlelen> の大きさを持つ部分文字列 I<needle> が 最初に現れる位置を見"
1166 "つける。"
1167
1168 #. type: Plain text
1169 #: build/C/man3/memmem.3:59
1170 msgid ""
1171 "The B<memmem>()  function returns a pointer to the beginning of the "
1172 "substring, or NULL if the substring is not found."
1173 msgstr ""
1174 "B<memmem>()  関数は、部分文字列の開始を指すポインタを返し、もし部分文字列が "
1175 "見つからない場合は NULL を返す。"
1176
1177 #. type: Plain text
1178 #: build/C/man3/memmem.3:61 build/C/man3/mempcpy.3:62
1179 #: build/C/man3/strverscmp.3:92
1180 msgid "This function is a GNU extension."
1181 msgstr "この関数は GNU による拡張である。"
1182
1183 #. type: SH
1184 #: build/C/man3/memmem.3:61 build/C/man3/stpcpy.3:78 build/C/man3/strcpy.3:202
1185 #: build/C/man3/strsep.3:91 build/C/man3/strstr.3:72 build/C/man3/strtok.3:185
1186 #, no-wrap
1187 msgid "BUGS"
1188 msgstr "バグ"
1189
1190 #. type: Plain text
1191 #: build/C/man3/memmem.3:71
1192 msgid ""
1193 "This function was broken in Linux libraries up to and including libc 5.0.9; "
1194 "there the I<needle> and I<haystack> arguments were interchanged, and a "
1195 "pointer to the end of the first occurrence of I<needle> was returned."
1196 msgstr ""
1197 "Linux のライブラリに関していうと、 libc 5.0.9 と それ以前のすべてのバージョン"
1198 "で、この関数は壊れている。 それらのライブラリでは I<needle> と I<haystack> 引"
1199 "数が 入れ替わっており、 I<needle> が最初に出現する部分の最後を 示すポインタが"
1200 "返されていたのである。"
1201
1202 #. type: Plain text
1203 #: build/C/man3/memmem.3:83
1204 msgid ""
1205 "Both old and new libc's have the bug that if I<needle> is empty, "
1206 "I<haystack-1> (instead of I<haystack>)  is returned.  And glibc 2.0 makes it "
1207 "worse, returning a pointer to the last byte of I<haystack>.  This is fixed "
1208 "in glibc 2.1."
1209 msgstr ""
1210 "新旧両方の libc ライブラリが、 I<needle> が空の場合 (I<haystack> のかわりに) "
1211 "I<haystack-1>\\ が 返されるというバグを持っている。 そして、glibc 2.0 ではさ"
1212 "らに悪くなっており、 I<haystack> の最後のバイトへのポインタを返す。 これは "
1213 "glibc 2.1 で修正された。"
1214
1215 #. type: Plain text
1216 #: build/C/man3/memmem.3:85
1217 msgid "B<strstr>(3)"
1218 msgstr "B<strstr>(3)"
1219
1220 #. type: TH
1221 #: build/C/man3/memmove.3:30
1222 #, no-wrap
1223 msgid "MEMMOVE"
1224 msgstr "MEMMOVE"
1225
1226 #. type: TH
1227 #: build/C/man3/memmove.3:30
1228 #, no-wrap
1229 msgid "1993-04-10"
1230 msgstr "1993-04-10"
1231
1232 #. type: Plain text
1233 #: build/C/man3/memmove.3:33
1234 msgid "memmove - copy memory area"
1235 msgstr "memmove - メモリ領域をコピーする"
1236
1237 #. type: Plain text
1238 #: build/C/man3/memmove.3:57
1239 msgid ""
1240 "The B<memmove>()  function copies I<n> bytes from memory area I<src> to "
1241 "memory area I<dest>.  The memory areas may overlap: copying takes place as "
1242 "though the bytes in I<src> are first copied into a temporary array that does "
1243 "not overlap I<src> or I<dest>, and the bytes are then copied from the "
1244 "temporary array to I<dest>."
1245 msgstr ""
1246 "B<memmove>()  は、メモリ領域 I<src> の先頭 I<n> バイトを メモリ領域 I<dest> "
1247 "にコピーする。コピー元とコピー先の 領域が重なっていてもよい。 最初に I<src> "
1248 "のバイトが I<src> とも I<dest> とも重ならない一時的な配列にコピーされてから、"
1249 "一時的な配列から I<dest> にバイトのコピーが行われたかのように、コピーが行われ"
1250 "る。"
1251
1252 #. type: Plain text
1253 #: build/C/man3/memmove.3:62
1254 msgid "The B<memmove>()  function returns a pointer to I<dest>."
1255 msgstr "B<memmove>()  は I<dest> へのポインタを返す。"
1256
1257 #. type: Plain text
1258 #: build/C/man3/memmove.3:71
1259 msgid ""
1260 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<strncpy>(3), "
1261 "B<wmemmove>(3)"
1262 msgstr ""
1263 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<strncpy>(3), "
1264 "B<wmemmove>(3)"
1265
1266 #. type: TH
1267 #: build/C/man3/mempcpy.3:10
1268 #, no-wrap
1269 msgid "MEMPCPY"
1270 msgstr "MEMPCPY"
1271
1272 #. type: TH
1273 #: build/C/man3/mempcpy.3:10
1274 #, no-wrap
1275 msgid "2008-08-12"
1276 msgstr "2008-08-11"
1277
1278 #. type: Plain text
1279 #: build/C/man3/mempcpy.3:13
1280 msgid "mempcpy, wmempcpy - copy memory area"
1281 msgstr "mempcpy, wmempcpy - メモリ領域をコピーする"
1282
1283 #. type: Plain text
1284 #: build/C/man3/mempcpy.3:16 build/C/man3/mempcpy.3:22
1285 #: build/C/man3/strfry.3:36 build/C/man3/strstr.3:43
1286 #: build/C/man3/strverscmp.3:31
1287 #, no-wrap
1288 msgid "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
1289 msgstr "B<#define _GNU_SOURCE>         /* feature_test_macros(7) 参照 */\n"
1290
1291 #. type: Plain text
1292 #: build/C/man3/mempcpy.3:20
1293 #, no-wrap
1294 msgid "B<void *mempcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
1295 msgstr "B<void *mempcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
1296
1297 #. type: Plain text
1298 #: build/C/man3/mempcpy.3:24
1299 #, no-wrap
1300 msgid "B<#include E<lt>wchar.hE<gt>>\n"
1301 msgstr "B<#include E<lt>wchar.hE<gt>>\n"
1302
1303 #. type: Plain text
1304 #: build/C/man3/mempcpy.3:26
1305 #, no-wrap
1306 msgid "B<wchar_t *wmempcpy(wchar_t *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
1307 msgstr "B<wchar_t *wmempcpy(wchar_t *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
1308
1309 #. type: Plain text
1310 #: build/C/man3/mempcpy.3:42
1311 msgid ""
1312 "The B<mempcpy>()  function is nearly identical to the B<memcpy>(3)  "
1313 "function.  It copies I<n> bytes from the object beginning at I<src> into the "
1314 "object pointed to by I<dest>.  But instead of returning the value of I<dest> "
1315 "it returns a pointer to the byte following the last written byte."
1316 msgstr ""
1317 "B<mempcpy>()  関数は B<memcpy>(3)  関数とほぼ同一である。 この関数は、 "
1318 "I<src> で始まるオブジェクトから I<n> バイトを、 I<dest> で指されるオブジェク"
1319 "トにコピーする。 ただし I<dest> の値を返すのではなく、 最後に書き込まれたバイ"
1320 "トの後に続くバイトへのポインタを返す。"
1321
1322 #. type: Plain text
1323 #: build/C/man3/mempcpy.3:45
1324 msgid ""
1325 "This function is useful in situations where a number of objects shall be "
1326 "copied to consecutive memory positions."
1327 msgstr ""
1328 "この関数はいくつかのオブジェクトが 連続的なメモリの場所にコピーされるような状"
1329 "況で役に立つ。"
1330
1331 #. type: Plain text
1332 #: build/C/man3/mempcpy.3:53
1333 msgid ""
1334 "The B<wmempcpy>()  function is identical but takes I<wchar_t> type arguments "
1335 "and copies I<n> wide characters."
1336 msgstr ""
1337 "B<wmempcpy>()  関数はこの関数と同じであるが、 I<wchar_t> 型の引き数をとり、 "
1338 "I<n> ワイド文字列をコピーする。"
1339
1340 #. type: Plain text
1341 #: build/C/man3/mempcpy.3:57
1342 msgid "I<dest> + I<n>."
1343 msgstr "I<dest> + I<n>."
1344
1345 #. type: Plain text
1346 #: build/C/man3/mempcpy.3:60
1347 msgid "B<mempcpy>()  first appeared in glibc in version 2.1."
1348 msgstr "B<mempcpy>()  は glibc バージョン 2.1 で初めて登場した。"
1349
1350 #. type: SH
1351 #: build/C/man3/mempcpy.3:62 build/C/man3/stpcpy.3:81
1352 #: build/C/man3/strtok.3:201
1353 #, no-wrap
1354 msgid "EXAMPLE"
1355 msgstr "例"
1356
1357 #. type: Plain text
1358 #: build/C/man3/mempcpy.3:72
1359 #, no-wrap
1360 msgid ""
1361 "void *\n"
1362 "combine(void *o1, size_t s1, void *o2, size_t s2)\n"
1363 "{\n"
1364 "    void *result = malloc(s1 + s2);\n"
1365 "    if (result != NULL)\n"
1366 "        mempcpy(mempcpy(result, o1, s1), o2, s2);\n"
1367 "    return result;\n"
1368 "}\n"
1369 msgstr ""
1370 "void *\n"
1371 "combine (void *o1, size_t s1, void *o2, size_t s2)\n"
1372 "{\n"
1373 "    void *result = malloc(s1 + s2);\n"
1374 "    if (result != NULL)\n"
1375 "        mempcpy(mempcpy(result, o1, s1), o2, s2);\n"
1376 "    return result;\n"
1377
1378 #. type: Plain text
1379 #: build/C/man3/mempcpy.3:78
1380 msgid "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<wmemcpy>(3)"
1381 msgstr "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<wmemcpy>(3)"
1382
1383 #. type: TH
1384 #: build/C/man3/memset.3:30
1385 #, no-wrap
1386 msgid "MEMSET"
1387 msgstr "MEMSET"
1388
1389 #. type: TH
1390 #: build/C/man3/memset.3:30
1391 #, no-wrap
1392 msgid "1993-04-11"
1393 msgstr "1993-04-11"
1394
1395 #. type: Plain text
1396 #: build/C/man3/memset.3:33
1397 msgid "memset - fill memory with a constant byte"
1398 msgstr "memset - ある一定のバイトでメモリ領域を埋める。"
1399
1400 #. type: Plain text
1401 #: build/C/man3/memset.3:49
1402 msgid ""
1403 "The B<memset>()  function fills the first I<n> bytes of the memory area "
1404 "pointed to by I<s> with the constant byte I<c>."
1405 msgstr ""
1406 "B<memset>()  は I<s> で示されるメモリ領域の先頭から I<n> バイトを I<c> で埋め"
1407 "る。"
1408
1409 #. type: Plain text
1410 #: build/C/man3/memset.3:54
1411 msgid "The B<memset>()  function returns a pointer to the memory area I<s>."
1412 msgstr "B<memset>()  は I<s> へのポインタを返す。"
1413
1414 #. type: Plain text
1415 #: build/C/man3/memset.3:60
1416 msgid "B<bzero>(3), B<swab>(3), B<wmemset>(3)"
1417 msgstr "B<bzero>(3), B<swab>(3), B<wmemset>(3)"
1418
1419 #. type: TH
1420 #: build/C/man3/stpcpy.3:25
1421 #, no-wrap
1422 msgid "STPCPY"
1423 msgstr "STPCPY"
1424
1425 #. type: TH
1426 #: build/C/man3/stpcpy.3:25
1427 #, no-wrap
1428 msgid "2012-03-15"
1429 msgstr "2012-03-15"
1430
1431 #. type: Plain text
1432 #: build/C/man3/stpcpy.3:28
1433 msgid "stpcpy - copy a string returning a pointer to its end"
1434 msgstr "stpcpy - 文字列をコピーし、コピーした文字列の終りへのポインタを返す"
1435
1436 #. type: Plain text
1437 #: build/C/man3/stpcpy.3:33 build/C/man3/string.3:51
1438 #, no-wrap
1439 msgid "B<char *stpcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
1440 msgstr "B<char *stpcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
1441
1442 #. type: Plain text
1443 #: build/C/man3/stpcpy.3:41
1444 msgid "B<stpcpy>():"
1445 msgstr "B<stpcpy>():"
1446
1447 #. type: TP
1448 #: build/C/man3/stpcpy.3:44 build/C/man3/stpncpy.3:33 build/C/man3/strdup.3:64
1449 #: build/C/man3/strnlen.3:32 build/C/man3/strsignal.3:51
1450 #, no-wrap
1451 msgid "Since glibc 2.10:"
1452 msgstr "glibc 2.10 以降:"
1453
1454 #. type: Plain text
1455 #: build/C/man3/stpcpy.3:47 build/C/man3/stpncpy.3:36
1456 #: build/C/man3/strnlen.3:35 build/C/man3/strsignal.3:54
1457 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1458 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1459
1460 #. type: TP
1461 #: build/C/man3/stpcpy.3:47 build/C/man3/stpncpy.3:36 build/C/man3/strdup.3:67
1462 #: build/C/man3/strnlen.3:35 build/C/man3/strsignal.3:54
1463 #, no-wrap
1464 msgid "Before glibc 2.10:"
1465 msgstr "glibc 2.10 より前:"
1466
1467 #. type: Plain text
1468 #: build/C/man3/stpcpy.3:63
1469 msgid ""
1470 "The B<stpcpy>()  function copies the string pointed to by I<src> (including "
1471 "the terminating null byte (\\(aq\\e0\\(aq)) to the array pointed to by "
1472 "I<dest>.  The strings may not overlap, and the destination string I<dest> "
1473 "must be large enough to receive the copy."
1474 msgstr ""
1475 "B<stpcpy>()  関数は、I<src> で指された文字列を (文字列を終端する NULL バイト "
1476 "(\\(aq\\e0\\(aq) を含めて) I<dest> で指された配列にコピーする。 文字列は重複"
1477 "してはならず、コピー先の文字列 I<dest> はコピーを受け取る のに十分大きくなく"
1478 "てはならない。"
1479
1480 #. type: Plain text
1481 #: build/C/man3/stpcpy.3:71
1482 msgid ""
1483 "B<stpcpy>()  returns a pointer to the B<end> of the string I<dest> (that is, "
1484 "the address of the terminating null byte)  rather than the beginning."
1485 msgstr ""
1486 "B<stpcpy>()  は、文字列 I<dest> の始まりではなく B<終り>を指すポインタ (すな"
1487 "わち、文字列を終端する NULL バイト) を返す。"
1488
1489 #. type: Plain text
1490 #: build/C/man3/stpcpy.3:78
1491 msgid ""
1492 "This function was added to POSIX.1-2008.  Before that, it was not part of "
1493 "the C or POSIX.1 standards, nor customary on UNIX systems, but was not a GNU "
1494 "invention either.  Perhaps it came from MS-DOS.  It is also present on the "
1495 "BSDs."
1496 msgstr ""
1497 "この関数は POSIX.1-2008 に追加された。 それ以前は、この関数は C や POSIX.1 標"
1498 "準の一部でも UNIX システムの慣習的なものでもなかったが、 GNU の発明というわけ"
1499 "でもなかった。 ひょっとしたら MS-DOS 由来のものかもしれない。 この関数は BSD "
1500 "系にも存在する。"
1501
1502 #. type: Plain text
1503 #: build/C/man3/stpcpy.3:81
1504 msgid "This function may overrun the buffer I<dest>."
1505 msgstr "この関数はバッファ I<dest> の範囲を行き過ぎてしまう可能性がある。"
1506
1507 #. type: Plain text
1508 #: build/C/man3/stpcpy.3:91
1509 msgid ""
1510 "For example, this program uses B<stpcpy>()  to concatenate B<foo> and B<bar> "
1511 "to produce B<foobar>, which it then prints."
1512 msgstr ""
1513 "例として、このプログラムは B<foo> と B<bar> を連結して B<foobar> を作るため"
1514 "に B<stpcpy>()  を使用し、その後表示する。"
1515
1516 #. type: Plain text
1517 #: build/C/man3/stpcpy.3:97
1518 #, no-wrap
1519 msgid ""
1520 "#define _GNU_SOURCE\n"
1521 "#include E<lt>string.hE<gt>\n"
1522 "#include E<lt>stdio.hE<gt>\n"
1523 msgstr ""
1524 "#define _GNU_SOURCE\n"
1525 "#include E<lt>string.hE<gt>\n"
1526 "#include E<lt>stdio.hE<gt>\n"
1527
1528 #. type: Plain text
1529 #: build/C/man3/stpcpy.3:103
1530 #, no-wrap
1531 msgid ""
1532 "int\n"
1533 "main(void)\n"
1534 "{\n"
1535 "    char buffer[20];\n"
1536 "    char *to = buffer;\n"
1537 msgstr ""
1538 "int\n"
1539 "main(void)\n"
1540 "{\n"
1541 "    char buffer[20];\n"
1542 "    char *to = buffer;\n"
1543
1544 #. type: Plain text
1545 #: build/C/man3/stpcpy.3:108
1546 #, no-wrap
1547 msgid ""
1548 "    to = stpcpy(to, \"foo\");\n"
1549 "    to = stpcpy(to, \"bar\");\n"
1550 "    printf(\"%s\\en\", buffer);\n"
1551 "}\n"
1552 msgstr ""
1553 "    to = stpcpy(to, \"foo\");\n"
1554 "    to = stpcpy(to, \"bar\");\n"
1555 "    printf(\"%s\\en\", buffer);\n"
1556 "}\n"
1557
1558 #. type: Plain text
1559 #: build/C/man3/stpcpy.3:119
1560 msgid ""
1561 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpncpy>(3), "
1562 "B<strcpy>(3), B<string>(3), B<wcpcpy>(3)"
1563 msgstr ""
1564 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpncpy>(3), "
1565 "B<strcpy>(3), B<string>(3), B<wcpcpy>(3)"
1566
1567 #. type: TH
1568 #: build/C/man3/stpncpy.3:14
1569 #, no-wrap
1570 msgid "STPNCPY"
1571 msgstr "STPNCPY"
1572
1573 #. type: TH
1574 #: build/C/man3/stpncpy.3:14 build/C/man3/strsep.3:33 build/C/man3/strstr.3:33
1575 #, no-wrap
1576 msgid "2011-09-28"
1577 msgstr "2011-09-28"
1578
1579 #. type: Plain text
1580 #: build/C/man3/stpncpy.3:17
1581 msgid "stpncpy - copy a fixed-size string, returning a pointer to its end"
1582 msgstr "stpncpy - 固定長の文字列をコピーして、その最後へのポインターを返す"
1583
1584 #. type: Plain text
1585 #: build/C/man3/stpncpy.3:22
1586 #, no-wrap
1587 msgid "B<char *stpncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1588 msgstr "B<char *stpncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1589
1590 #. type: Plain text
1591 #: build/C/man3/stpncpy.3:30
1592 msgid "B<stpncpy>():"
1593 msgstr "B<stpncpy>():"
1594
1595 #. type: Plain text
1596 #: build/C/man3/stpncpy.3:74
1597 msgid ""
1598 "The B<stpncpy>()  function copies at most I<n> characters from the string "
1599 "pointed to by I<src>, including the terminating null byte (\\(aq\\e0\\(aq), "
1600 "to the array pointed to by I<dest>.  Exactly I<n> characters are written at "
1601 "I<dest>.  If the length I<strlen(src)> is smaller than I<n>, the remaining "
1602 "characters in the array pointed to by I<dest> are filled with null bytes "
1603 "(\\(aq\\e0\\(aq), If the length I<strlen(src)> is greater or equal to I<n>, "
1604 "the string pointed to by I<dest> will not be null-terminated."
1605 msgstr ""
1606 "B<stpncpy>()  関数は I<src> が指している文字列から終端の NULL バイト (\\(aq"
1607 "\\e0\\(aq)  を含めて最大 I<n> バイトを I<dest> にコピーする。長さ I<strlen"
1608 "(src)> が I<n> より小さい場合には I<dest> の残りの 部分には NULL バイト "
1609 "(\\(aq\\e0\\(aq) 文字が埋められる。 長さ I<strlen(src)> が I<n> 以上ならば、 "
1610 "I<dest> が指す文字列は NULL で終端されていない。"
1611
1612 #. type: Plain text
1613 #: build/C/man3/stpncpy.3:76
1614 msgid "The strings may not overlap."
1615 msgstr "二つの文字列は重なってはならない。"
1616
1617 #. type: Plain text
1618 #: build/C/man3/stpncpy.3:82
1619 msgid ""
1620 "The programmer must ensure that there is room for at least I<n> characters "
1621 "at I<dest>."
1622 msgstr ""
1623 "プログラマーは I<dest> に少なくとも I<n> バイトの空きがあることを 保証しなけ"
1624 "ればならない。"
1625
1626 #. type: Plain text
1627 #: build/C/man3/stpncpy.3:91
1628 msgid ""
1629 "B<stpncpy>()  returns a pointer to the terminating null byte in I<dest>, or, "
1630 "if I<dest> is not null-terminated, I<dest + n>."
1631 msgstr ""
1632 "B<stpncpy>()  は I<dest> の終端の NULL バイトを指すポインターを返すか、 "
1633 "I<dest> が NULL バイトで終端されていない場合には I<dest + n> を返す。"
1634
1635 #. type: Plain text
1636 #: build/C/man3/stpncpy.3:94
1637 msgid ""
1638 "This function was added to POSIX.1-2008.  Before that, it was a GNU "
1639 "extension."
1640 msgstr ""
1641 "この関数は POSIX.1-2008 に追加された。 それ以前は GNU による拡張であった。"
1642
1643 #. type: Plain text
1644 #: build/C/man3/stpncpy.3:97
1645 msgid "B<strncpy>(3), B<wcpncpy>(3)"
1646 msgstr "B<strncpy>(3), B<wcpncpy>(3)"
1647
1648 #. type: TH
1649 #: build/C/man3/strcasecmp.3:30
1650 #, no-wrap
1651 msgid "STRCASECMP"
1652 msgstr "STRCASECMP"
1653
1654 #. type: TH
1655 #: build/C/man3/strcasecmp.3:30 build/C/man3/strnlen.3:13
1656 #: build/C/man3/strpbrk.3:30 build/C/man3/strspn.3:30
1657 #: build/C/man3/strxfrm.3:30
1658 #, no-wrap
1659 msgid "2012-05-10"
1660 msgstr "2012-05-10"
1661
1662 #. type: Plain text
1663 #: build/C/man3/strcasecmp.3:33
1664 msgid "strcasecmp, strncasecmp - compare two strings ignoring case"
1665 msgstr "strcasecmp, strncasecmp - 二つの文字列を大文字小文字を区別せず比較する"
1666
1667 #. type: Plain text
1668 #: build/C/man3/strcasecmp.3:38 build/C/man3/string.3:41
1669 #, no-wrap
1670 msgid "B<int strcasecmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
1671 msgstr "B<int strcasecmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
1672
1673 #. type: Plain text
1674 #: build/C/man3/strcasecmp.3:40 build/C/man3/string.3:43
1675 #, no-wrap
1676 msgid "B<int strncasecmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>\n"
1677 msgstr "B<int strncasecmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>\n"
1678
1679 #. type: Plain text
1680 #: build/C/man3/strcasecmp.3:55
1681 msgid ""
1682 "The B<strcasecmp>()  function compares the two strings I<s1> and I<s2>, "
1683 "ignoring the case of the characters.  It returns an integer less than, equal "
1684 "to, or greater than zero if I<s1> is found, respectively, to be less than, "
1685 "to match, or be greater than I<s2>."
1686 msgstr ""
1687 "B<strcasecmp>()  関数は、二つの文字列 I<s1> と I<s2> を、 大文字小文字を区別"
1688 "せずに比較する。 I<s1> が I<s2> よりも小さいか、同じか、大きいかによってそれ"
1689 "ぞれ 負の整数、0、正の整数を返す。"
1690
1691 #. type: Plain text
1692 #: build/C/man3/strcasecmp.3:63
1693 msgid ""
1694 "The B<strncasecmp>()  function is similar, except it compares the only first "
1695 "I<n> bytes of I<s1>."
1696 msgstr ""
1697 "B<strncasecmp>() 関数も同様であるが、 I<s1> の最初の I<n> バイトだけを\n"
1698 "比較する点だけが異なる。"
1699
1700 #. type: Plain text
1701 #: build/C/man3/strcasecmp.3:76
1702 msgid ""
1703 "The B<strcasecmp>()  and B<strncasecmp>()  functions return an integer less "
1704 "than, equal to, or greater than zero if I<s1> (or the first I<n> bytes "
1705 "thereof) is found, respectively, to be less than, to match, or be greater "
1706 "than I<s2>."
1707 msgstr ""
1708 "B<strcasecmp>()  と B<strncasecmp>()  関数は、I<s1> (または、その最初の I<n> "
1709 "バイト)が I<s2> よりも小さいか、 同じか、大きいかにより、それぞれ負の整数、"
1710 "0、正の整数を返す。"
1711
1712 #. type: Plain text
1713 #: build/C/man3/strcasecmp.3:78
1714 msgid "4.4BSD, POSIX.1-2001."
1715 msgstr "4.4BSD, POSIX.1-2001."
1716
1717 #. type: Plain text
1718 #: build/C/man3/strcasecmp.3:87
1719 msgid ""
1720 "B<bcmp>(3), B<memcmp>(3), B<strcmp>(3), B<strcoll>(3), B<string>(3), "
1721 "B<strncmp>(3), B<wcscasecmp>(3), B<wcsncasecmp>(3)"
1722 msgstr ""
1723 "B<bcmp>(3), B<memcmp>(3), B<strcmp>(3), B<strcoll>(3), B<string>(3), "
1724 "B<strncmp>(3), B<wcscasecmp>(3), B<wcsncasecmp>(3)"
1725
1726 #. type: TH
1727 #: build/C/man3/strcat.3:32
1728 #, no-wrap
1729 msgid "STRCAT"
1730 msgstr "STRCAT"
1731
1732 #. type: TH
1733 #: build/C/man3/strcat.3:32 build/C/man3/strcpy.3:35
1734 #, no-wrap
1735 msgid "2012-07-19"
1736 msgstr "2012-07-19"
1737
1738 #. type: Plain text
1739 #: build/C/man3/strcat.3:35
1740 msgid "strcat, strncat - concatenate two strings"
1741 msgstr "strcat, strncat - 二つの文字列を連結する"
1742
1743 #. type: Plain text
1744 #: build/C/man3/strcat.3:40 build/C/man3/string.3:53
1745 #, no-wrap
1746 msgid "B<char *strcat(char *>I<dest>B<, const char *>I<src>B<);>\n"
1747 msgstr "B<char *strcat(char *>I<dest>B<, const char *>I<src>B<);>\n"
1748
1749 #. type: Plain text
1750 #: build/C/man3/strcat.3:42 build/C/man3/string.3:71
1751 #, no-wrap
1752 msgid "B<char *strncat(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1753 msgstr "B<char *strncat(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1754
1755 #. type: Plain text
1756 #: build/C/man3/strcat.3:62
1757 msgid ""
1758 "The B<strcat>()  function appends the I<src> string to the I<dest> string, "
1759 "overwriting the terminating null byte (\\(aq\\e0\\(aq) at the end of "
1760 "I<dest>, and then adds a terminating null byte.  The strings may not "
1761 "overlap, and the I<dest> string must have enough space for the result.  If "
1762 "I<dest> is not large enough, program behavior is unpredictable; I<buffer "
1763 "overruns are a favorite avenue for attacking secure programs>."
1764 msgstr ""
1765 "B<strcat>()  関数は、I<dest> 文字列の後に I<src> 文字列を付け加える。 その際"
1766 "に、I<dest> の最後にある終端の NULL バイト (\\(aq\\e0\\(aq)  は上書きされ、新"
1767 "たに生成された文字列の末尾に終端の NULL バイトが付与される。 二つの文字列 "
1768 "I<src> と I<dest> は重なってはならない。 また、文字列 I<dest> は、連結後の結"
1769 "果を格納するのに 十分な大きさでなければならない。 I<dest> が十分な大きさでな"
1770 "い場合、プログラムがどのような動作をするか分からない。 バッファオーバーランは"
1771 "セキュアなプログラムを攻撃する際に好んで使われる方法である。"
1772
1773 #. type: Plain text
1774 #: build/C/man3/strcat.3:66
1775 msgid "The B<strncat>()  function is similar, except that"
1776 msgstr "B<strncat>()  も同様だが、以下の点が異なる。"
1777
1778 #. type: IP
1779 #: build/C/man3/strcat.3:66 build/C/man3/strcat.3:72 build/C/man3/strsep.3:94
1780 #: build/C/man3/strsep.3:96 build/C/man3/strsep.3:98 build/C/man3/strtok.3:188
1781 #: build/C/man3/strtok.3:190 build/C/man3/strtok.3:192
1782 #: build/C/man3/strtok.3:194
1783 #, no-wrap
1784 msgid "*"
1785 msgstr "*"
1786
1787 #. type: Plain text
1788 #: build/C/man3/strcat.3:72
1789 msgid "it will use at most I<n> bytes from I<src>; and"
1790 msgstr "I<src> のうち最大 I<n> バイトが使用される。"
1791
1792 #. type: Plain text
1793 #: build/C/man3/strcat.3:77
1794 msgid ""
1795 "I<src> does not need to be null-terminated if it contains I<n> or more bytes."
1796 msgstr ""
1797 "I<src> が I<n> バイト以上の場合、 \n"
1798 "I<src> は NULL 終端されている必要はない。"
1799
1800 #. type: Plain text
1801 #: build/C/man3/strcat.3:83
1802 msgid ""
1803 "As with B<strcat>(), the resulting string in I<dest> is always null-"
1804 "terminated."
1805 msgstr ""
1806 "B<strcat>()  と同じく、I<dest> に格納される結果の文字列は常に NULL 終端され"
1807 "る。"
1808
1809 #. type: Plain text
1810 #: build/C/man3/strcat.3:102
1811 msgid ""
1812 "If I<src> contains I<n> or more bytes, B<strncat>()  writes I<n+1> bytes to "
1813 "I<dest> (I<n> from I<src> plus the terminating null byte).  Therefore, the "
1814 "size of I<dest> must be at least I<strlen(dest)+n+1>."
1815 msgstr ""
1816 "I<src> が I<n> バイト以上の場合、 B<strncat>() は I<dest> に I<n+1> \n"
1817 "バイトを書き込む (I<src> からの I<n> バイトと終端の NULL バイトである)。\n"
1818 "したがって、I<dest> の大きさは最低でも I<strlen(dest)+n+1> でなければ\n"
1819 "ならない。"
1820
1821 #. type: Plain text
1822 #: build/C/man3/strcat.3:106
1823 msgid "A simple implementation of B<strncat>()  might be:"
1824 msgstr "B<strncat>()  の簡単な実装は以下のような感じであろう:"
1825
1826 #. type: Plain text
1827 #: build/C/man3/strcat.3:114
1828 #, no-wrap
1829 msgid ""
1830 "char*\n"
1831 "strncat(char *dest, const char *src, size_t n)\n"
1832 "{\n"
1833 "    size_t dest_len = strlen(dest);\n"
1834 "    size_t i;\n"
1835 msgstr ""
1836 "char*\n"
1837 "strncat(char *dest, const char *src, size_t n)\n"
1838 "{\n"
1839 "    size_t dest_len = strlen(dest);\n"
1840 "    size_t i;\n"
1841
1842 #. type: Plain text
1843 #: build/C/man3/strcat.3:118
1844 #, no-wrap
1845 msgid ""
1846 "    for (i = 0 ; i E<lt> n && src[i] != \\(aq\\e0\\(aq ; i++)\n"
1847 "        dest[dest_len + i] = src[i];\n"
1848 "    dest[dest_len + i] = \\(aq\\e0\\(aq;\n"
1849 msgstr ""
1850 "    for (i = 0 ; i E<lt> n && src[i] != \\(aq\\e0\\(aq ; i++)\n"
1851 "        dest[dest_len + i] = src[i];\n"
1852 "    dest[dest_len + i] = \\(aq\\e0\\(aq;\n"
1853
1854 #. type: Plain text
1855 #: build/C/man3/strcat.3:121 build/C/man3/strcpy.3:106
1856 #, no-wrap
1857 msgid ""
1858 "    return dest;\n"
1859 "}\n"
1860 msgstr ""
1861 "    return dest;\n"
1862 "}\n"
1863
1864 #. type: Plain text
1865 #: build/C/man3/strcat.3:130
1866 msgid ""
1867 "The B<strcat>()  and B<strncat>()  functions return a pointer to the "
1868 "resulting string I<dest>."
1869 msgstr ""
1870 "B<strcat>()  関数と B<strncat>()  関数は、結果としてできる文字列 I<dest> への"
1871 "ポインタを返す。"
1872
1873 #. type: Plain text
1874 #: build/C/man3/strcat.3:132 build/C/man3/strcmp.3:81
1875 #: build/C/man3/strcoll.3:71 build/C/man3/strcpy.3:118
1876 #: build/C/man3/strlen.3:52 build/C/man3/strpbrk.3:58 build/C/man3/strspn.3:76
1877 #: build/C/man3/strxfrm.3:78
1878 msgid "SVr4, 4.3BSD, C89, C99."
1879 msgstr "SVr4, 4.3BSD, C89, C99."
1880
1881 #. type: Plain text
1882 #: build/C/man3/strcat.3:134 build/C/man3/strcpy.3:165
1883 msgid ""
1884 "Some systems (the BSDs, Solaris, and others) provide the following function:"
1885 msgstr ""
1886 "いくつかのシステム (BSD、Solaris など) では以下の関数が提供されている。"
1887
1888 #. type: Plain text
1889 #: build/C/man3/strcat.3:136
1890 #, no-wrap
1891 msgid "    size_t strlcat(char *dest, const char *src, size_t size);\n"
1892 msgstr "    size_t strlcat(char *dest, const char *src, size_t size);\n"
1893
1894 #.  https://lwn.net/Articles/506530/
1895 #. type: Plain text
1896 #: build/C/man3/strcat.3:169
1897 msgid ""
1898 "This function appends the null-terminated string I<src> to the string "
1899 "I<dest>, copying at most I<size-strlen(dest)-1> from I<src>, and adds a null "
1900 "terminator to the result, I<unless> I<size> is less than I<strlen(dest)>.  "
1901 "This function fixes the buffer overrun problem of B<strcat>(), but the "
1902 "caller must still handle the possibility of data loss if I<size> is too "
1903 "small.  The function returns the length of the string B<strlcat>()  tried to "
1904 "create; if the return value is greater than or equal to I<size>, data loss "
1905 "occurred.  If data loss matters, the caller I<must> either check the "
1906 "arguments before the call, or test the function return value.  B<strlcat>()  "
1907 "is not present in glibc and is not standardized by POSIX, but is available "
1908 "on Linux via the I<libbsd> library."
1909 msgstr ""
1910 "この関数は、 NULL 終端された文字列 I<src> を文字列 I<dest> に追加する。 具体"
1911 "例には、 I<size> が I<strlen(dest)> より大きい場合には最大で I<size-strlen"
1912 "(dest)-1> バイトを I<src> からコピーし、 結果の末尾に終端の NULL バイトを追加"
1913 "する。 この関数では B<strcat>() のバッファオーバーランが発生するという問題が"
1914 "修正されているが、  I<size> が小さすぎた場合にはデータが失われる問題には、 依"
1915 "然として呼び出し側で対処する必要がある。 この関数は B<strlcat>() が作成しよう"
1916 "とした文字列の長さを返す。 返り値が I<size> 以上の場合、 データロスが発生して"
1917 "いる。 データロスが問題となる場合は、 呼び出し側で、 呼び出し前に引き数を"
1918 "チェックするか、 この関数の返り値を検査するかのいずれかをしなければならな"
1919 "い。 B<strlcat>() は glibc には存在せず、 POSIX による標準化もされていない"
1920 "が、 Linux では I<libbsd> ライブラリ経由で利用できる。"
1921
1922 #. type: Plain text
1923 #: build/C/man3/strcat.3:178
1924 msgid ""
1925 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<string>(3), "
1926 "B<strncpy>(3), B<wcscat>(3), B<wcsncat>(3)"
1927 msgstr ""
1928 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<string>(3), "
1929 "B<strncpy>(3), B<wcscat>(3), B<wcsncat>(3)"
1930
1931 #. type: TH
1932 #: build/C/man3/strchr.3:33
1933 #, no-wrap
1934 msgid "STRCHR"
1935 msgstr "STRCHR"
1936
1937 #. type: TH
1938 #: build/C/man3/strchr.3:33
1939 #, no-wrap
1940 msgid "2012-04-24"
1941 msgstr "2012-04-24"
1942
1943 #. type: Plain text
1944 #: build/C/man3/strchr.3:36
1945 msgid "strchr, strrchr, strchrnul - locate character in string"
1946 msgstr "strchr, strrchr, strchrnul - 文字列中の文字の位置を特定する"
1947
1948 #. type: Plain text
1949 #: build/C/man3/strchr.3:41 build/C/man3/string.3:55
1950 #, no-wrap
1951 msgid "B<char *strchr(const char *>I<s>B<, int >I<c>B<);>\n"
1952 msgstr "B<char *strchr(const char *>I<s>B<, int >I<c>B<);>\n"
1953
1954 #. type: Plain text
1955 #: build/C/man3/strchr.3:43 build/C/man3/string.3:79
1956 #, no-wrap
1957 msgid "B<char *strrchr(const char *>I<s>B<, int >I<c>B<);>\n"
1958 msgstr "B<char *strrchr(const char *>I<s>B<, int >I<c>B<);>\n"
1959
1960 #. type: Plain text
1961 #: build/C/man3/strchr.3:48
1962 #, no-wrap
1963 msgid "B<char *strchrnul(const char *>I<s>B<, int >I<c>B<);>\n"
1964 msgstr "B<char *strchrnul(const char *>I<s>B<, int >I<c>B<);>\n"
1965
1966 #. type: Plain text
1967 #: build/C/man3/strchr.3:57
1968 msgid ""
1969 "The B<strchr>()  function returns a pointer to the first occurrence of the "
1970 "character I<c> in the string I<s>."
1971 msgstr ""
1972 "B<strchr>()  関数は、文字列 I<s> 中に最初に文字 I<c> が現れた位置へのポインタ"
1973 "を返す。"
1974
1975 #. type: Plain text
1976 #: build/C/man3/strchr.3:65
1977 msgid ""
1978 "The B<strrchr>()  function returns a pointer to the last occurrence of the "
1979 "character I<c> in the string I<s>."
1980 msgstr ""
1981 "B<strrchr>()  関数は、文字列 I<s> 中に最後に文字 I<c> が現れた位置へのポイン"
1982 "タを返す。"
1983
1984 #. type: Plain text
1985 #: build/C/man3/strchr.3:78
1986 msgid ""
1987 "The B<strchrnul>()  function is like B<strchr>()  except that if I<c> is not "
1988 "found in I<s>, then it returns a pointer to the null byte at the end of "
1989 "I<s>, rather than NULL."
1990 msgstr ""
1991 "B<strchrnul>()  関数は B<strchr>()  と同様だが、 I<c> が I<s> 中に見つからな"
1992 "かった場合に、返り値として NULL でなく、I<s> の末尾のヌルバイトへのポインタを"
1993 "返す点が異なる。"
1994
1995 #. type: Plain text
1996 #: build/C/man3/strchr.3:81
1997 msgid ""
1998 "Here \"character\" means \"byte\"; these functions do not work with wide or "
1999 "multibyte characters."
2000 msgstr ""
2001 "ここでいう「文字」は「バイト」の意味なので、 これらの関数はワイド文字やマルチ"
2002 "バイト文字では動作しない。"
2003
2004 #. type: Plain text
2005 #: build/C/man3/strchr.3:93
2006 msgid ""
2007 "The B<strchr>()  and B<strrchr>()  functions return a pointer to the matched "
2008 "character or NULL if the character is not found.  The terminating null byte "
2009 "is considered part of the string, so that if I<c> is specified as \\(aq"
2010 "\\e0\\(aq, these functions return a pointer to the terminator."
2011 msgstr ""
2012 "B<strchr>() と B<strrchr>() 関数は一致した文字へのポインタを返し、もし\n"
2013 "文字が見つからない場合は NULL を返す。終端の NULL バイトは文字列の一部と\n"
2014 "みなされ、I<c> に \\(aq\\e0\\(aq が指定された場合には、これらの関数は\n"
2015 "終端の NULL バイトへのポインタを返す。"
2016
2017 #. type: Plain text
2018 #: build/C/man3/strchr.3:104
2019 msgid ""
2020 "The B<strchrnul>()  function returns a pointer to the matched character, or "
2021 "a pointer to the null byte at the end of I<s> (i.e., I<s+strlen(s)>)  if the "
2022 "character is not found."
2023 msgstr ""
2024 "B<strchrnul>()  関数は一致した文字へのポインタを返す。 文字が見つからない場合"
2025 "は、I<s> の末尾のヌルバイトへの ポインタ (つまり I<s+strlen(s)>) を返す。"
2026
2027 #. type: Plain text
2028 #: build/C/man3/strchr.3:107
2029 msgid "B<strchrnul>()  first appeared in glibc in version 2.1.1."
2030 msgstr "B<strchrnul>()  は glibc バージョン 2.1.1 で初めて登場した。"
2031
2032 #. type: Plain text
2033 #: build/C/man3/strchr.3:114
2034 msgid ""
2035 "B<strchr>()  and B<strrchr>()  are in SVr4, 4.3BSD, C89, C99.  B<strchrnul>"
2036 "()  is a GNU extension."
2037 msgstr ""
2038 "B<strchr>()  と B<strrchr>()  は SVr4, 4.3BSD, C89, C99 に準拠している。 "
2039 "B<strchrnul>()  は GNU 拡張である。"
2040
2041 #. type: Plain text
2042 #: build/C/man3/strchr.3:127
2043 msgid ""
2044 "B<index>(3), B<memchr>(3), B<rindex>(3), B<string>(3), B<strlen>(3), "
2045 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), "
2046 "B<wcschr>(3), B<wcsrchr>(3)"
2047 msgstr ""
2048 "B<index>(3), B<memchr>(3), B<rindex>(3), B<string>(3), B<strlen>(3), "
2049 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), "
2050 "B<wcschr>(3), B<wcsrchr>(3)"
2051
2052 #. type: TH
2053 #: build/C/man3/strcmp.3:32
2054 #, no-wrap
2055 msgid "STRCMP"
2056 msgstr "STRCMP"
2057
2058 #. type: Plain text
2059 #: build/C/man3/strcmp.3:35
2060 msgid "strcmp, strncmp - compare two strings"
2061 msgstr "strcmp, strncmp - 二つの文字列を比べる"
2062
2063 #. type: Plain text
2064 #: build/C/man3/strcmp.3:40 build/C/man3/string.3:57
2065 #, no-wrap
2066 msgid "B<int strcmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2067 msgstr "B<int strcmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2068
2069 #. type: Plain text
2070 #: build/C/man3/strcmp.3:42 build/C/man3/string.3:73
2071 #, no-wrap
2072 msgid "B<int strncmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>\n"
2073 msgstr "B<int strncmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>\n"
2074
2075 #. type: Plain text
2076 #: build/C/man3/strcmp.3:56
2077 msgid ""
2078 "The B<strcmp>()  function compares the two strings I<s1> and I<s2>.  It "
2079 "returns an integer less than, equal to, or greater than zero if I<s1> is "
2080 "found, respectively, to be less than, to match, or be greater than I<s2>."
2081 msgstr ""
2082 "B<strcmp>()  関数は二つの文字列 I<s1> と I<s2> を較べる。 この関数は、 I<s1> "
2083 "が I<s2> に較べて 1)小さい、2)等しい、3)大きい場合に、 ゼロよりも 1)小さい、"
2084 "2)等しい、3)大きい整数を返す。"
2085
2086 #. type: Plain text
2087 #: build/C/man3/strcmp.3:66
2088 msgid ""
2089 "The B<strncmp>()  function is similar, except it compares the only first (at "
2090 "most)  I<n> bytes of I<s1> and I<s2>."
2091 msgstr ""
2092 "B<strncmp>() 関数は、I<s1> と I<s2> の最初の I<n> バイトだけを比較する\n"
2093 "ことを除けば、strcmp()と同様である。"
2094
2095 #. type: Plain text
2096 #: build/C/man3/strcmp.3:79
2097 msgid ""
2098 "The B<strcmp>()  and B<strncmp>()  functions return an integer less than, "
2099 "equal to, or greater than zero if I<s1> (or the first I<n> bytes thereof) is "
2100 "found, respectively, to be less than, to match, or be greater than I<s2>."
2101 msgstr ""
2102 "B<strcmp>()  関数と B<strncmp>()  関数は整数を返す。 この整数は、ゼロよりも、"
2103 "1)小さい、2)等しい、3)大きいのいずれかである。 それぞれは、I<s1>(または、こ"
2104 "の文字列の最初の I<n> バイト)が I<s2> よりも、1)小さい、2)等しい、3)大きいに"
2105 "対応している。"
2106
2107 #. type: Plain text
2108 #: build/C/man3/strcmp.3:91
2109 msgid ""
2110 "B<bcmp>(3), B<memcmp>(3), B<strcasecmp>(3), B<strcoll>(3), B<string>(3), "
2111 "B<strncasecmp>(3), B<strverscmp>(3), B<wcscmp>(3), B<wcsncmp>(3)"
2112 msgstr ""
2113 "B<bcmp>(3), B<memcmp>(3), B<strcasecmp>(3), B<strcoll>(3), B<string>(3), "
2114 "B<strncasecmp>(3), B<strverscmp>(3), B<wcscmp>(3), B<wcsncmp>(3)"
2115
2116 #. type: TH
2117 #: build/C/man3/strcoll.3:30
2118 #, no-wrap
2119 msgid "STRCOLL"
2120 msgstr "STRCOLL"
2121
2122 #. type: Plain text
2123 #: build/C/man3/strcoll.3:33
2124 msgid "strcoll - compare two strings using the current locale"
2125 msgstr "strcoll - 現在のロケールを使用して二つの文字列を比較する"
2126
2127 #. type: Plain text
2128 #: build/C/man3/strcoll.3:38 build/C/man3/string.3:59
2129 #, no-wrap
2130 msgid "B<int strcoll(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2131 msgstr "B<int strcoll(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2132
2133 #. type: Plain text
2134 #: build/C/man3/strcoll.3:58
2135 msgid ""
2136 "The B<strcoll>()  function compares the two strings I<s1> and I<s2>.  It "
2137 "returns an integer less than, equal to, or greater than zero if I<s1> is "
2138 "found, respectively, to be less than, to match, or be greater than I<s2>.  "
2139 "The comparison is based on strings interpreted as appropriate for the "
2140 "program's current locale for category B<LC_COLLATE>.  (See B<setlocale>(3).)"
2141 msgstr ""
2142 "B<strcoll>() 関数は二つの文字列 I<s1> と I<s2> を比較する。 この関数は、"
2143 "I<s1> が I<s2> よりも小さいか、等しいか、大きいかによって それぞれ負の整数、"
2144 "0、正の整数を返す。 比較は、プログラムの現在のロケールの B<LC_COLLATE> カテゴ"
2145 "リに応じて 解釈された文字列に基づいて行われる (B<setlocale>(3)  参照)。"
2146
2147 #. type: Plain text
2148 #: build/C/man3/strcoll.3:69
2149 msgid ""
2150 "The B<strcoll>()  function returns an integer less than, equal to, or "
2151 "greater than zero if I<s1> is found, respectively, to be less than, to "
2152 "match, or be greater than I<s2>, when both are interpreted as appropriate "
2153 "for the current locale."
2154 msgstr ""
2155 "B<strcoll>()  関数は、I<s1> が I<s2> よりも小さいか、等しいか、 大きいかに"
2156 "よって、それぞれ負の整数、0、正の整数を返す。 どちらの文字列も現在のロケール"
2157 "に応じて解釈されたものが使用される。"
2158
2159 #. type: Plain text
2160 #: build/C/man3/strcoll.3:80
2161 #, fuzzy
2162 #| msgid ""
2163 #| "In the I<POSIX> or I<\\&\\& C\"> locales B<strcoll>()  is equivalent to "
2164 #| "B<strcmp>(3)."
2165 msgid ""
2166 "In the I<POSIX> or I<C> locales B<strcoll>()  is equivalent to B<strcmp>(3)."
2167 msgstr ""
2168 "I<POSIX> および I<\\&\\& C\"> ロケールにおいては、 B<strcoll>()  は B<strcmp>"
2169 "(3)  と等価である。"
2170
2171 #. type: Plain text
2172 #: build/C/man3/strcoll.3:88
2173 msgid ""
2174 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
2175 "B<string>(3), B<strxfrm>(3)"
2176 msgstr ""
2177 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
2178 "B<string>(3), B<strxfrm>(3)"
2179
2180 #. type: TH
2181 #: build/C/man3/strcpy.3:35
2182 #, no-wrap
2183 msgid "STRCPY"
2184 msgstr "STRCPY"
2185
2186 #. type: Plain text
2187 #: build/C/man3/strcpy.3:38
2188 msgid "strcpy, strncpy - copy a string"
2189 msgstr "strcpy, strncpy - 文字列をコピーする"
2190
2191 #. type: Plain text
2192 #: build/C/man3/strcpy.3:43 build/C/man3/string.3:61
2193 #, no-wrap
2194 msgid "B<char *strcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
2195 msgstr "B<char *strcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
2196
2197 #. type: Plain text
2198 #: build/C/man3/strcpy.3:45 build/C/man3/string.3:75
2199 #, no-wrap
2200 msgid "B<char *strncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
2201 msgstr "B<char *strncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
2202
2203 #. type: Plain text
2204 #: build/C/man3/strcpy.3:59
2205 msgid ""
2206 "The B<strcpy>()  function copies the string pointed to by I<src>, including "
2207 "the terminating null byte (\\(aq\\e0\\(aq), to the buffer pointed to by "
2208 "I<dest>.  The strings may not overlap, and the destination string I<dest> "
2209 "must be large enough to receive the copy.  I<Beware of buffer overruns!> "
2210 "(See BUGS.)"
2211 msgstr ""
2212 "B<strcpy>()  関数は I<src> が指す文字列を末尾のヌルバイト (\\(aq\\e0\\(aq) も"
2213 "含めて I<dest> が指すバッファにコピーする。 二つの文字列は重なってはならな"
2214 "い。受け側の文字列 I<dest> は コピーを受け取るのに十分な大きさでなければなら"
2215 "ない。 I<バッファオーバーランに気を付けること!> (「バグ」の節を参照)"
2216
2217 #. type: Plain text
2218 #: build/C/man3/strcpy.3:76
2219 msgid ""
2220 "The B<strncpy>()  function is similar, except that at most I<n> bytes of "
2221 "I<src> are copied.  B<Warning>: If there is no null byte among the first "
2222 "I<n> bytes of I<src>, the string placed in I<dest> will not be null-"
2223 "terminated."
2224 msgstr ""
2225 "B<strncpy>()  関数も同様だが、 I<src> のうち最大でも I<n> バイトしかコピーさ"
2226 "れない点が異なる。 B<警告>: I<src> の最初の I<n> バイトの中にヌルバイトがない"
2227 "場合、 I<dest> に格納される文字列はヌルで終端されないことになる。"
2228
2229 #. type: Plain text
2230 #: build/C/man3/strcpy.3:87
2231 msgid ""
2232 "If the length of I<src> is less than I<n>, B<strncpy>()  writes additional "
2233 "null bytes to I<dest> to ensure that a total of I<n> bytes are written."
2234 msgstr ""
2235 "I<src> の長さが I<n> よりも短い場合、 B<strncpy>() は I<dest> に追加のヌルバ"
2236 "イトを書き込み、全部で I<n> バイトが書き込まれるようにする。"
2237
2238 #. type: Plain text
2239 #: build/C/man3/strcpy.3:91
2240 msgid "A simple implementation of B<strncpy>()  might be:"
2241 msgstr "B<strncpy>()  の簡単な実装は以下のような感じであろう:"
2242
2243 #. type: Plain text
2244 #: build/C/man3/strcpy.3:98
2245 #, no-wrap
2246 msgid ""
2247 "char *\n"
2248 "strncpy(char *dest, const char *src, size_t n)\n"
2249 "{\n"
2250 "    size_t i;\n"
2251 msgstr ""
2252 "char *\n"
2253 "strncpy(char *dest, const char *src, size_t n)\n"
2254 "{\n"
2255 "    size_t i;\n"
2256
2257 #. type: Plain text
2258 #: build/C/man3/strcpy.3:103
2259 #, no-wrap
2260 msgid ""
2261 "    for (i = 0; i E<lt> n && src[i] != \\(aq\\e0\\(aq; i++)\n"
2262 "        dest[i] = src[i];\n"
2263 "    for ( ; i E<lt> n; i++)\n"
2264 "        dest[i] = \\(aq\\e0\\(aq;\n"
2265 msgstr ""
2266 "    for (i = 0; i E<lt> n && src[i] != \\(aq\\e0\\(aq; i++)\n"
2267 "        dest[i] = src[i];\n"
2268 "    for ( ; i E<lt> n; i++)\n"
2269 "        dest[i] = \\(aq\\e0\\(aq;\n"
2270
2271 #. type: Plain text
2272 #: build/C/man3/strcpy.3:116
2273 msgid ""
2274 "The B<strcpy>()  and B<strncpy>()  functions return a pointer to the "
2275 "destination string I<dest>."
2276 msgstr ""
2277 "B<strcpy>()  関数と B<strncpy>()  関数は 受け側の文字列I<dest>へのポインタを"
2278 "返す。"
2279
2280 #. type: Plain text
2281 #: build/C/man3/strcpy.3:131
2282 msgid ""
2283 "Some programmers consider B<strncpy>()  to be inefficient and error prone.  "
2284 "If the programmer knows (i.e., includes code to test!)  that the size of "
2285 "I<dest> is greater than the length of I<src>, then B<strcpy>()  can be used."
2286 msgstr ""
2287 "B<strncpy>()  は効率的でなく間違いを起こしやすいと考えるプログラマもいるだろ"
2288 "う。 プログラマが I<dest> の大きさが I<src> の長さよりも 大きいことを知ってい"
2289 "る (つまり、そのことをチェックするコードを 書いている) 場合は、 B<strcpy()> "
2290 "を使うことができる。"
2291
2292 #. type: Plain text
2293 #: build/C/man3/strcpy.3:140
2294 msgid ""
2295 "One valid (and intended) use of B<strncpy>()  is to copy a C string to a "
2296 "fixed-length buffer while ensuring both that the buffer is not overflowed "
2297 "and that unused bytes in the target buffer are zeroed out (perhaps to "
2298 "prevent information leaks if the buffer is to be written to media or "
2299 "transmitted to another process via an interprocess communication technique)."
2300 msgstr ""
2301 "B<strncpy>() の正しい (かつ意図された) 用途は、 C 文字列の固定長バッファへの"
2302 "コピーを、 バッファがオーバーフローしないことと、 宛先バッファの未使用バイト"
2303 "が 0 で埋められることの両方を保証しつつ行うことである。 (宛先バッファを 0 で"
2304 "埋めるのは、 たいていの場合、 バッファを媒体に書き込んだり、別のプロセスにプ"
2305 "ロセス間通信を用いて送信したりした場合に情報洩れを防ぐためである)。"
2306
2307 #. type: Plain text
2308 #: build/C/man3/strcpy.3:149
2309 msgid ""
2310 "If there is no terminating null byte in the first I<n> bytes of I<src>, "
2311 "B<strncpy>()  produces an unterminated string in I<dest>.  You can force "
2312 "termination using something like the following:"
2313 msgstr ""
2314 "I<src> の最初の I<n> バイトに終端のヌルバイトがない場合、 B<strncpy>()\n"
2315 "は I<dest> に終端されていない文字列を生成する。以下のようにして\n"
2316 "強制的に終端することができる。"
2317
2318 #. type: Plain text
2319 #: build/C/man3/strcpy.3:155
2320 #, no-wrap
2321 msgid ""
2322 "strncpy(buf, str, n);\n"
2323 "if (n E<gt> 0)\n"
2324 "    buf[n - 1]= \\(aq\\e0\\(aq;\n"
2325 msgstr ""
2326 "strncpy(buf, str, n);\n"
2327 "if (n E<gt> 0)\n"
2328 "    buf[n - 1]= \\(aq\\e0\\(aq;\n"
2329
2330 #. type: Plain text
2331 #: build/C/man3/strcpy.3:163
2332 msgid ""
2333 "(Of course, the above technique ignores the fact that information contained "
2334 "in I<src> is lost in the copying to I<dest>.)"
2335 msgstr ""
2336 "(もちろん、上記の方法では、 I<src> に入っている情報が I<dest> へのコピー時に"
2337 "失われるという事実は無視している。)"
2338
2339 #. type: Plain text
2340 #: build/C/man3/strcpy.3:167
2341 #, no-wrap
2342 msgid "    size_t strlcpy(char *dest, const char *src, size_t size);\n"
2343 msgstr "    size_t strlcpy(char *dest, const char *src, size_t size);\n"
2344
2345 #.  http://static.usenix.org/event/usenix99/full_papers/millert/millert_html/index.html
2346 #.      "strlcpy and strlcat - consistent, safe, string copy and concatenation"
2347 #.      1999 USENIX Annual Technical Conference
2348 #.  https://lwn.net/Articles/506530/
2349 #. type: Plain text
2350 #: build/C/man3/strcpy.3:202
2351 msgid ""
2352 "This function is similar to B<strncpy>(), but it copies at most I<size-1> "
2353 "bytes to I<dest>, always adds a terminating null byte, and does not pad the "
2354 "target with (further) null bytes.  This function fixes some of the problems "
2355 "of B<strcpy>()  and B<strncpy>(), but the caller must still handle the "
2356 "possibility of data loss if I<size> is too small.  The return value of the "
2357 "function is the length of I<src>, which allows truncation to be easily "
2358 "detected: if the return value is greater than or equal to I<size>, "
2359 "truncation occurred.  If loss of data matters, the caller I<must> either "
2360 "check the arguments before the call, or test the function return value.  "
2361 "B<strlcpy>()  is not present in glibc and is not standardized by POSIX, but "
2362 "is available on Linux via the I<libbsd> library."
2363 msgstr ""
2364 "この関数は B<strncpy>() と同様だが、 最大でも I<size-1> バイトしか I<dest> に"
2365 "コピーをせず、 末尾への終端の NULL バイトの追加が必ず行われ、 宛先バッファ "
2366 "(の未使用部分) への NULL バイトの書き込みが行われない。 この関数では "
2367 "B<strcpy>() や B<strncpy>() の持つ問題のいくつかが修正されているが、 I<size> "
2368 "が小さすぎた場合にはデータが失われる問題には、 依然として呼び出し側で対処する"
2369 "必要がある。 この関数の返り値は I<src> の長さである。 これにより、 末尾の切り"
2370 "詰めが行われたかを簡単に検出することができる。 返り値が I<size> 以上の場合に"
2371 "は、 末尾の切り詰めが発生している。 データロスが問題となる場合は、 呼び出し側"
2372 "で、 呼び出し前に引き数をチェックするか、 この関数の返り値を検査するかのいず"
2373 "れかをしなければならない。 B<strlcpy>() は glibc  には存在せず、 POSIX による"
2374 "標準化もされていないが、 Linux では I<libbsd> ライブラリ経由で利用できる。"
2375
2376 #. type: Plain text
2377 #: build/C/man3/strcpy.3:213
2378 msgid ""
2379 "If the destination string of a B<strcpy>()  is not large enough, then "
2380 "anything might happen.  Overflowing fixed-length string buffers is a "
2381 "favorite cracker technique for taking complete control of the machine.  Any "
2382 "time a program reads or copies data into a buffer, the program first needs "
2383 "to check that there's enough space.  This may be unnecessary if you can show "
2384 "that overflow is impossible, but be careful: programs can get changed over "
2385 "time, in ways that may make the impossible possible."
2386 msgstr ""
2387 "B<strcpy>()  の受け側の文字列が十分な大きさでない場合、何が起こるかわからな"
2388 "い。 固定長文字列を溢れさせるのは、マシンの制御を掌中に収めるために クラッ"
2389 "カーが好んで使うテクニックである。 プログラムでデータをバッファに読み込んだり"
2390 "コピーしたりする場合には、 必ずまず最初に十分な大きさがあるかどうかをチェック"
2391 "する必要がある。 プログラマがオーバーフローが不可能だと示せる場合には この"
2392 "チェックは不要かもしれないが、十分注意すること。 長い間には、不可能だったこと"
2393 "が可能になるような方法でプログラムが 変更されることもあるからだ。"
2394
2395 #. type: Plain text
2396 #: build/C/man3/strcpy.3:224
2397 msgid ""
2398 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpcpy>(3), "
2399 "B<stpncpy>(3), B<strdup>(3), B<string>(3), B<wcscpy>(3), B<wcsncpy>(3)"
2400 msgstr ""
2401 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpcpy>(3), "
2402 "B<stpncpy>(3), B<strdup>(3), B<string>(3), B<wcscpy>(3), B<wcsncpy>(3)"
2403
2404 #. type: TH
2405 #: build/C/man3/strdup.3:31
2406 #, no-wrap
2407 msgid "STRDUP"
2408 msgstr "STRDUP"
2409
2410 #. type: TH
2411 #: build/C/man3/strdup.3:31
2412 #, no-wrap
2413 msgid "2013-04-19"
2414 msgstr "2013-04-19"
2415
2416 #. type: Plain text
2417 #: build/C/man3/strdup.3:34
2418 msgid "strdup, strndup, strdupa, strndupa - duplicate a string"
2419 msgstr "strdup, strndup, strdupa, strndupa - 文字列を複製する"
2420
2421 #. type: Plain text
2422 #: build/C/man3/strdup.3:39 build/C/man3/string.3:65
2423 #, no-wrap
2424 msgid "B<char *strdup(const char *>I<s>B<);>\n"
2425 msgstr "B<char *strdup(const char *>I<s>B<);>\n"
2426
2427 #. type: Plain text
2428 #: build/C/man3/strdup.3:41
2429 #, no-wrap
2430 msgid "B<char *strndup(const char *>I<s>B<, size_t >I<n>B<);>\n"
2431 msgstr "B<char *strndup(const char *>I<s>B<, size_t >I<n>B<);>\n"
2432
2433 #. type: Plain text
2434 #: build/C/man3/strdup.3:43
2435 #, no-wrap
2436 msgid "B<char *strdupa(const char *>I<s>B<);>\n"
2437 msgstr "B<char *strdupa(const char *>I<s>B<);>\n"
2438
2439 #. type: Plain text
2440 #: build/C/man3/strdup.3:45
2441 #, no-wrap
2442 msgid "B<char *strndupa(const char *>I<s>B<, size_t >I<n>B<);>\n"
2443 msgstr "B<char *strndupa(const char *>I<s>B<, size_t >I<n>B<);>\n"
2444
2445 #. type: Plain text
2446 #: build/C/man3/strdup.3:55
2447 msgid "B<strdup>():"
2448 msgstr "B<strdup>():"
2449
2450 #. type: Plain text
2451 #: build/C/man3/strdup.3:58
2452 msgid ""
2453 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
2454 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
2455 msgstr ""
2456 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
2457 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
2458
2459 #. type: Plain text
2460 #: build/C/man3/strdup.3:60
2461 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
2462 msgstr "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
2463
2464 #. type: Plain text
2465 #: build/C/man3/strdup.3:63
2466 msgid "B<strndup>():"
2467 msgstr "B<strndup>():"
2468
2469 #. type: Plain text
2470 #: build/C/man3/strdup.3:67
2471 msgid "POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700"
2472 msgstr "POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700"
2473
2474 #. type: Plain text
2475 #: build/C/man3/strdup.3:75
2476 msgid "B<strdupa>(), B<strndupa>(): _GNU_SOURCE"
2477 msgstr "B<strdupa>(), B<strndupa>(): _GNU_SOURCE"
2478
2479 #. type: Plain text
2480 #: build/C/man3/strdup.3:88
2481 msgid ""
2482 "The B<strdup>()  function returns a pointer to a new string which is a "
2483 "duplicate of the string I<s>.  Memory for the new string is obtained with "
2484 "B<malloc>(3), and can be freed with B<free>(3)."
2485 msgstr ""
2486 "B<strdup>()  関数は、文字列 I<s>の複製である 新しい文字列へのポインタを返"
2487 "す。 新しい文字列のためのメモリは B<malloc>(3)  で得ている。 そして、 B<free>"
2488 "(3)  で解放することができる。"
2489
2490 #. type: Plain text
2491 #: build/C/man3/strdup.3:101
2492 msgid ""
2493 "The B<strndup>()  function is similar, but copies at most I<n> bytes.  If "
2494 "I<s> is longer than I<n>, only I<n> bytes are copied, and a terminating null "
2495 "byte (\\(aq\\e0\\(aq) is added."
2496 msgstr ""
2497 "B<strndup>() 関数は同様であるが、最大で I<n> バイトを複製する。\n"
2498 "I<s> が I<n> よりも長い場合、I<n> バイトだけが複製され、\n"
2499 "終端の NULL バイト (\\(aq\\e0\\(aq)) が追加される。"
2500
2501 #. type: Plain text
2502 #: build/C/man3/strdup.3:111
2503 msgid ""
2504 "B<strdupa>()  and B<strndupa>()  are similar, but use B<alloca>(3)  to "
2505 "allocate the buffer.  They are available only when using the GNU GCC suite, "
2506 "and suffer from the same limitations described in B<alloca>(3)."
2507 msgstr ""
2508 "B<strdupa>() と B<strndupa>() も同様だが、バッファの確保に\n"
2509 "B<alloca>(3) を使用する点が異なる。\n"
2510 "これらが使用できるのは GNU GCC ツール群を使う場合だけであり、\n"
2511 "B<alloca>(3) で説明されているのと同じ制限がある。"
2512
2513 #. type: Plain text
2514 #: build/C/man3/strdup.3:119
2515 msgid ""
2516 "On success, the B<strdup>()  function returns a pointer to the duplicated "
2517 "string.  It returns NULL if insufficient memory was available, with I<errno> "
2518 "set to indicate the cause of the error."
2519 msgstr ""
2520 "成功すると、 B<strdup>() 関数は複製された文字列へのポインタを返す。 十分なメ"
2521 "モリが確保できなかった場合には、 NULL を返し、 I<errno> にエラーの原因を示す"
2522 "値を設定する。"
2523
2524 #. type: SH
2525 #: build/C/man3/strdup.3:119 build/C/man3/strerror.3:166
2526 #, no-wrap
2527 msgid "ERRORS"
2528 msgstr "エラー"
2529
2530 #. type: TP
2531 #: build/C/man3/strdup.3:120
2532 #, no-wrap
2533 msgid "B<ENOMEM>"
2534 msgstr "B<ENOMEM>"
2535
2536 #. type: Plain text
2537 #: build/C/man3/strdup.3:123
2538 msgid "Insufficient memory available to allocate duplicate string."
2539 msgstr "複製された文字列を割り当てる十分なメモリが確保できなかった。"
2540
2541 #.  4.3BSD-Reno, not (first) 4.3BSD.
2542 #. type: Plain text
2543 #: build/C/man3/strdup.3:133
2544 msgid ""
2545 "B<strdup>()  conforms to SVr4, 4.3BSD, POSIX.1-2001.  B<strndup>()  conforms "
2546 "to POSIX.1-2008.  B<strdupa>()  and B<strndupa>()  are GNU extensions."
2547 msgstr ""
2548 "B<strdup>()  は SVr4, 4.3BSD, POSIX.1-2001 準拠である。 B<strndup>()  は "
2549 "POSIX.1-2008 準拠である。 B<strdupa>(), B<strndupa>()  は GNU 拡張である。"
2550
2551 #. type: Plain text
2552 #: build/C/man3/strdup.3:141
2553 msgid ""
2554 "B<alloca>(3), B<calloc>(3), B<free>(3), B<malloc>(3), B<realloc>(3), "
2555 "B<string>(3), B<wcsdup>(3)"
2556 msgstr ""
2557 "B<alloca>(3), B<calloc>(3), B<free>(3), B<malloc>(3), B<realloc>(3), "
2558 "B<string>(3), B<wcsdup>(3)"
2559
2560 #. type: TH
2561 #: build/C/man3/strerror.3:39
2562 #, no-wrap
2563 msgid "STRERROR"
2564 msgstr "STRERROR"
2565
2566 #. type: TH
2567 #: build/C/man3/strerror.3:39
2568 #, no-wrap
2569 msgid "2013-06-21"
2570 msgstr "2013-06-21"
2571
2572 #. type: Plain text
2573 #: build/C/man3/strerror.3:42
2574 msgid "strerror, strerror_r - return string describing error number"
2575 msgstr "strerror, strerror_r - エラー番号を説明する文字列を返す。"
2576
2577 #. type: Plain text
2578 #: build/C/man3/strerror.3:47
2579 #, no-wrap
2580 msgid "B<char *strerror(int >I<errnum>B<);>\n"
2581 msgstr "B<char *strerror(int >I<errnum>B<);>\n"
2582
2583 #. type: Plain text
2584 #: build/C/man3/strerror.3:50
2585 #, no-wrap
2586 msgid ""
2587 "B<int strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2588 "            /* XSI-compliant */\n"
2589 msgstr ""
2590 "B<int strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2591 "            /* XSI-compliant */\n"
2592
2593 #. type: Plain text
2594 #: build/C/man3/strerror.3:53
2595 #, no-wrap
2596 msgid ""
2597 "B<char *strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2598 "            /* GNU-specific */\n"
2599 msgstr ""
2600 "B<char *strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2601 "            /* GNU-specific */\n"
2602
2603 #. type: Plain text
2604 #: build/C/man3/strerror.3:63
2605 msgid "The XSI-compliant version of B<strerror_r>()  is provided if:"
2606 msgstr "次の場合には XSI 準拠のバージョンの B<strerror_r>()  が提供される:"
2607
2608 #. type: Plain text
2609 #: build/C/man3/strerror.3:65
2610 msgid ""
2611 "(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600) && !\\ "
2612 "_GNU_SOURCE"
2613 msgstr ""
2614 "(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600) && !\\ "
2615 "_GNU_SOURCE"
2616
2617 #. type: Plain text
2618 #: build/C/man3/strerror.3:67
2619 msgid "Otherwise, the GNU-specific version is provided."
2620 msgstr "それ以外の場合、GNU バージョンが提供される。"
2621
2622 #. type: Plain text
2623 #: build/C/man3/strerror.3:87
2624 msgid ""
2625 "The B<strerror>()  function returns a pointer to a string that describes the "
2626 "error code passed in the argument I<errnum>, possibly using the "
2627 "B<LC_MESSAGES> part of the current locale to select the appropriate "
2628 "language.  (For example, if I<errnum> is B<EINVAL>, the returned description "
2629 "will \"Invalid argument\".)  This string must not be modified by the "
2630 "application, but may be modified by a subsequent call to B<strerror>().  No "
2631 "library function, including B<perror>(3), will modify this string."
2632 msgstr ""
2633 "B<strerror>() 関数は、引き数 I<errnum> で渡されたエラーコードについての\n"
2634 "説明が入った文字列へのポインタを返す。 可能であるならば、適切な言語を選\n"
2635 "択するために、 現在のロケールの B<LC_MESSAGES> を使う。(例えば、\n"
2636 "I<errnum> が B<EINVAL> の場合、説明として\"Invalid argument\" が返され\n"
2637 "る。) この文字列は、アプリケーションで変更してはならないが、 これ以降に\n"
2638 "行われる B<strerror>() の呼び出しで 変更されても構わない。この文字列を\n"
2639 "変更するライブラリ関数はない (B<perror>(3) も含まれる)。"
2640
2641 #. type: Plain text
2642 #: build/C/man3/strerror.3:108
2643 msgid ""
2644 "The B<strerror_r>()  function is similar to B<strerror>(), but is thread "
2645 "safe.  This function is available in two versions: an XSI-compliant version "
2646 "specified in POSIX.1-2001 (available since glibc 2.3.4, but not POSIX-"
2647 "compliant until glibc 2.13), and a GNU-specific version (available since "
2648 "glibc 2.0).  The XSI-compliant version is provided with the feature test "
2649 "macros settings shown in the SYNOPSIS; otherwise the GNU-specific version is "
2650 "provided.  If no feature test macros are explicitly defined, then (since "
2651 "glibc 2.4)  B<_POSIX_SOURCE> is defined by default with the value 200112L, "
2652 "so that the XSI-compliant version of B<strerror_r>()  is provided by default."
2653 msgstr ""
2654 "B<strerror_r>() 関数は B<strerror>() と似ているが、スレッドセーフである。\n"
2655 "この関数には二種類のバージョンが存在し、 POSIX.1-2001 で規定された XSI\n"
2656 "準拠のバージョン (glibc 2.3.4 以降で利用可能だが、glibc 2.13 までは\n"
2657 "POSIX 準拠ではない) と、 GNU 仕様のバージョン (glibc 2.0 以降で利用可能)\n"
2658 "である。 「書式」の節に記載された機能検査マクロの場合には、 XSI 準拠の\n"
2659 "バージョンが提供される。それ以外の場合には GNU 仕様のバージョンが提供さ\n"
2660 "れる。機能検査マクロが一つも明示的に定義されない場合、 (glibc 2.4 以降\n"
2661 "では) デフォルトで B<_POSIX_SOURCE> は値 200112l で定義され、その結果\n"
2662 "XSI 準拠のバージョンの B<strerror_r>() がデフォルトで提供される。"
2663
2664 #. type: Plain text
2665 #: build/C/man3/strerror.3:116
2666 msgid ""
2667 "The XSI-compliant B<strerror_r>()  is preferred for portable applications.  "
2668 "It returns the error string in the user-supplied buffer I<buf> of length "
2669 "I<buflen>."
2670 msgstr ""
2671 "移植性が必要なアプリケーションでは、 XSI 準拠の B<strerror_r>()  を使う方がよ"
2672 "い。 この関数は、ユーザーから提供される長さ I<buflen> のバッファ I<buf> にエ"
2673 "ラー文字列を返す。"
2674
2675 #. type: Plain text
2676 #: build/C/man3/strerror.3:136
2677 msgid ""
2678 "The GNU-specific B<strerror_r>()  returns a pointer to a string containing "
2679 "the error message.  This may be either a pointer to a string that the "
2680 "function stores in I<buf>, or a pointer to some (immutable) static string "
2681 "(in which case I<buf> is unused).  If the function stores a string in "
2682 "I<buf>, then at most I<buflen> bytes are stored (the string may be truncated "
2683 "if I<buflen> is too small and I<errnum> is unknown).  The string always "
2684 "includes a terminating null byte (\\(aq\\e0\\(aq)."
2685 msgstr ""
2686 "GNU 仕様の B<strerror_r>() は、 エラーメッセージを格納した文字列へのポインタ"
2687 "を返す。 返り値は、 この関数が I<buf> に格納した文字列へのポインタか、 何らか"
2688 "の (不変な) 静的な文字列へのポインタ、 のいずれかとなる (後者の場合は I<buf> "
2689 "は使用されない)。 I<buf> に文字列が格納される場合は、 最大で I<buflen> バイト"
2690 "が格納される (I<buflen> が小さ過ぎたときには文字列は切り詰められ、 I<errnum> "
2691 "は不定である)。 文字列には必ず終端ヌル文字 (\\(aq\\e0\\(aq) が含まれる。"
2692
2693 #. type: Plain text
2694 #: build/C/man3/strerror.3:144
2695 msgid ""
2696 "The B<strerror>()  and the GNU-specific B<strerror_r>()  functions return "
2697 "the appropriate error description string, or an \"Unknown error nnn\" "
2698 "message if the error number is unknown."
2699 msgstr ""
2700 "B<strerror>()  と B<strerror_r>()  はエラー内容を説明する 文字列を返す。エ"
2701 "ラー番号が未知の場合は \"Unknown error nnn\" という メッセージを返す。"
2702
2703 #. type: Plain text
2704 #: build/C/man3/strerror.3:157
2705 msgid ""
2706 "POSIX.1-2001 and POSIX.1-2008 require that a successful call to B<strerror>"
2707 "()  shall leave I<errno> unchanged, and note that, since no function return "
2708 "value is reserved to indicate an error, an application that wishes to check "
2709 "for errors should initialize I<errno> to zero before the call, and then "
2710 "check I<errno> after the call."
2711 msgstr ""
2712 "POSIX.1-2001 と POSIX.1-2008 では、 B<strerror>() が成功した場合は\n"
2713 "I<errno> を変更せずに元のままにしなければならないとされている。関数のど\n"
2714 "の返り値もエラーを示すために予約されていないので、エラーをチェックした\n"
2715 "いアプリケーションは呼び出しを行う前に I<errno> を 0 に初期化し、呼び出\n"
2716 "しの後で I<errno> をチェックすべき点に注意すること。"
2717
2718 #. type: Plain text
2719 #: build/C/man3/strerror.3:166
2720 msgid ""
2721 "The XSI-compliant B<strerror_r>()  function returns 0 on success.  On error, "
2722 "a (positive) error number is returned (since glibc 2.13), or -1 is returned "
2723 "and I<errno> is set to indicate the error (glibc versions before 2.13)."
2724 msgstr ""
2725 "XSI 準拠の B<strerror_r>() 関数は成功すると 0 を返す。エラーの場合には、\n"
2726 "(glibc 2.13 以降では) (正の) エラー番号が返され、(バージョン 2.13 より前\n"
2727 "の glibc では) -1 が返され、 I<errno> にエラーを示す値がセットされる。"
2728
2729 #. type: TP
2730 #: build/C/man3/strerror.3:167
2731 #, no-wrap
2732 msgid "B<EINVAL>"
2733 msgstr "B<EINVAL>"
2734
2735 #. type: Plain text
2736 #: build/C/man3/strerror.3:172
2737 msgid "The value of I<errnum> is not a valid error number."
2738 msgstr "I<errnum> の値が有効なエラー番号ではない。"
2739
2740 #. type: TP
2741 #: build/C/man3/strerror.3:172
2742 #, no-wrap
2743 msgid "B<ERANGE>"
2744 msgstr "B<ERANGE>"
2745
2746 #. type: Plain text
2747 #: build/C/man3/strerror.3:175
2748 msgid ""
2749 "Insufficient storage was supplied to contain the error description string."
2750 msgstr "エラーコードを説明する文字列のために、充分な領域が確保できなかった。"
2751
2752 #. type: SH
2753 #: build/C/man3/strerror.3:175 build/C/man3/strtok.3:169
2754 #, no-wrap
2755 msgid "ATTRIBUTES"
2756 msgstr "属性"
2757
2758 #. type: SS
2759 #: build/C/man3/strerror.3:176 build/C/man3/strtok.3:170
2760 #, no-wrap
2761 msgid "Multithreading (see pthreads(7))"
2762 msgstr "マルチスレッディング (pthreads(7) 参照)"
2763
2764 #. type: Plain text
2765 #: build/C/man3/strerror.3:180
2766 msgid "The B<strerror>()  function is not thread-safe."
2767 msgstr "B<strerror>() 関数はスレッドセーフではない。"
2768
2769 #. type: Plain text
2770 #: build/C/man3/strerror.3:184
2771 msgid "The B<strerror_r>()  function is thread-safe."
2772 msgstr "B<strerror_r>() 関数はスレッドセーフである。"
2773
2774 #. type: Plain text
2775 #: build/C/man3/strerror.3:189
2776 msgid ""
2777 "B<strerror>()  is specified by POSIX.1-2001, C89, C99.  B<strerror_r>()  is "
2778 "specified by POSIX.1-2001."
2779 msgstr ""
2780 "B<strerror>()  は POSIX.1-2001, C89, C99 で規定されている。 B<strerror_r>()  "
2781 "は POSIX.1-2001 で規定されている。"
2782
2783 #. type: Plain text
2784 #: build/C/man3/strerror.3:193
2785 msgid "The GNU-specific B<strerror_r>()  function is a nonstandard extension."
2786 msgstr "GNU 仕様の B<strerror_r>()  関数は非標準の拡張である。"
2787
2788 #.  e.g., Solaris 8, HP-UX 11
2789 #.  e.g., FreeBSD 5.4, Tru64 5.1B
2790 #. type: Plain text
2791 #: build/C/man3/strerror.3:213
2792 msgid ""
2793 "POSIX.1-2001 permits B<strerror>()  to set I<errno> if the call encounters "
2794 "an error, but does not specify what value should be returned as the function "
2795 "result in the event of an error.  On some systems, B<strerror>()  returns "
2796 "NULL if the error number is unknown.  On other systems, B<strerror>()  "
2797 "returns a string something like \"Error nnn occurred\" and sets I<errno> to "
2798 "B<EINVAL> if the error number is unknown.  C99 and POSIX.1-2008 require the "
2799 "return value to be non-NULL."
2800 msgstr ""
2801 "POSIX.1-2001 は、 B<strerror>() がエラーに遭遇した場合に I<errno> をセッ\n"
2802 "トすることを認めているが、エラー発生時に関数の結果として どんな値を返す\n"
2803 "べきかを規定してない。 あるシステムでは、 エラー番号が未知の場合、\n"
2804 "B<strerror>() は NULL を返す。 他のシステムでは、 エラー番号が未知の場\n"
2805 "合、 B<strerror>() は \"Error nnn occurred\" といった文字列を返し、\n"
2806 "I<errno> に B<EINVAL> をセットする。 C99 と POSIX.1-2008 では、返り値が\n"
2807 "NULL 以外になることが求められている。"
2808
2809 #. type: Plain text
2810 #: build/C/man3/strerror.3:219
2811 msgid "B<err>(3), B<errno>(3), B<error>(3), B<perror>(3), B<strsignal>(3)"
2812 msgstr "B<err>(3), B<errno>(3), B<error>(3), B<perror>(3), B<strsignal>(3)"
2813
2814 #. type: TH
2815 #: build/C/man3/strfry.3:30
2816 #, no-wrap
2817 msgid "STRFRY"
2818 msgstr "STRFRY"
2819
2820 #. type: Plain text
2821 #: build/C/man3/strfry.3:33
2822 msgid "strfry - randomize a string"
2823 msgstr "strfry - 文字列をランダムに並べ変える"
2824
2825 #. type: Plain text
2826 #: build/C/man3/strfry.3:40 build/C/man3/string.3:67
2827 #, no-wrap
2828 msgid "B<char *strfry(char *>I<string>B<);>\n"
2829 msgstr "B<char *strfry(char *>I<string>B<);>\n"
2830
2831 #. type: Plain text
2832 #: build/C/man3/strfry.3:52
2833 msgid ""
2834 "The B<strfry>()  function randomizes the contents of I<string> by using "
2835 "B<rand>(3)  to randomly swap characters in the string.  The result is an "
2836 "anagram of I<string>."
2837 msgstr ""
2838 "B<strfry>()  関数は、文字列 I<string> の内容をランダムに並び換える。 並び換え"
2839 "は、 B<rand>(3)  関数を用いて、文字列中の各文字を無作為に 交換することで実現"
2840 "される。結果は、文字列 I<string> のアナグラムである。"
2841
2842 #. type: Plain text
2843 #: build/C/man3/strfry.3:57
2844 msgid "The B<strfry>()  functions returns a pointer to the randomized string."
2845 msgstr ""
2846 "B<strfry>()  関数は、ランダムに並び換えられた文字列へのポインタを返す。"
2847
2848 #. type: Plain text
2849 #: build/C/man3/strfry.3:62
2850 msgid "The B<strfry>()  function is unique to the GNU C Library."
2851 msgstr "B<strfry>()  関数は GNU C ライブラリに特有である。"
2852
2853 #. type: Plain text
2854 #: build/C/man3/strfry.3:65
2855 msgid "B<memfrob>(3), B<string>(3)"
2856 msgstr "B<memfrob>(3), B<string>(3)"
2857
2858 #. type: TH
2859 #: build/C/man3/string.3:30
2860 #, no-wrap
2861 msgid "STRING"
2862 msgstr "STRING"
2863
2864 #. type: TH
2865 #: build/C/man3/string.3:30
2866 #, no-wrap
2867 msgid "2010-02-25"
2868 msgstr "2010-02-25"
2869
2870 #. type: Plain text
2871 #: build/C/man3/string.3:36
2872 msgid ""
2873 "stpcpy, strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, "
2874 "strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, "
2875 "strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex - string "
2876 "operations"
2877 msgstr ""
2878 "stpcpy, strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, "
2879 "strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, "
2880 "strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex - 文字列を操"
2881 "作する関数"
2882
2883 #. type: Plain text
2884 #: build/C/man3/string.3:63 build/C/man3/strspn.3:40
2885 #, no-wrap
2886 msgid "B<size_t strcspn(const char *>I<s>B<, const char *>I<reject>B<);>\n"
2887 msgstr "B<size_t strcspn(const char *>I<s>B<, const char *>I<reject>B<);>\n"
2888
2889 #. type: Plain text
2890 #: build/C/man3/string.3:69 build/C/man3/strlen.3:38
2891 #, no-wrap
2892 msgid "B<size_t strlen(const char *>I<s>B<);>\n"
2893 msgstr "B<size_t strlen(const char *>I<s>B<);>\n"
2894
2895 #. type: Plain text
2896 #: build/C/man3/string.3:77 build/C/man3/strpbrk.3:38
2897 #, no-wrap
2898 msgid "B<char *strpbrk(const char *>I<s>B<, const char *>I<accept>B<);>\n"
2899 msgstr "B<char *strpbrk(const char *>I<s>B<, const char *>I<accept>B<);>\n"
2900
2901 #. type: Plain text
2902 #: build/C/man3/string.3:81 build/C/man3/strsep.3:41
2903 #, no-wrap
2904 msgid "B<char *strsep(char **>I<stringp>B<, const char *>I<delim>B<);>\n"
2905 msgstr "B<char *strsep(char **>I<stringp>B<, const char *>I<delim>B<);>\n"
2906
2907 #. type: Plain text
2908 #: build/C/man3/string.3:83 build/C/man3/strspn.3:38
2909 #, no-wrap
2910 msgid "B<size_t strspn(const char *>I<s>B<, const char *>I<accept>B<);>\n"
2911 msgstr "B<size_t strspn(const char *>I<s>B<, const char *>I<accept>B<);>\n"
2912
2913 #. type: Plain text
2914 #: build/C/man3/string.3:85 build/C/man3/strstr.3:41
2915 #, no-wrap
2916 msgid "B<char *strstr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
2917 msgstr "B<char *strstr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
2918
2919 #. type: Plain text
2920 #: build/C/man3/string.3:87
2921 #, no-wrap
2922 msgid "B<char *strtok(char *>I<s>B<, const char *>I<delim>B<);>\n"
2923 msgstr "B<char *strtok(char *>I<s>B<, const char *>I<delim>B<);>\n"
2924
2925 #. type: Plain text
2926 #: build/C/man3/string.3:89 build/C/man3/strxfrm.3:38
2927 #, no-wrap
2928 msgid "B<size_t strxfrm(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
2929 msgstr "B<size_t strxfrm(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
2930
2931 #. type: Plain text
2932 #: build/C/man3/string.3:94
2933 msgid ""
2934 "The string functions perform string operations on null-terminated strings.  "
2935 "See the individual man pages for descriptions of each function."
2936 msgstr ""
2937 "文字列関数は、NULL 終端された文字列に 対して、文字列操作を実行する。 それぞれ"
2938 "の関数の説明については個々のmanページを見よ。"
2939
2940 #. type: Plain text
2941 #: build/C/man3/string.3:119
2942 msgid ""
2943 "B<index>(3), B<rindex>(3), B<stpcpy>(3), B<strcasecmp>(3), B<strcat>(3), "
2944 "B<strchr>(3), B<strcmp>(3), B<strcoll>(3), B<strcpy>(3), B<strcspn>(3), "
2945 "B<strdup>(3), B<strfry>(3), B<strlen>(3), B<strncasecmp>(3), B<strncat>(3), "
2946 "B<strncmp>(3), B<strncpy>(3), B<strpbrk>(3), B<strrchr>(3), B<strsep>(3), "
2947 "B<strspn>(3), B<strstr>(3), B<strtok>(3), B<strxfrm>(3)"
2948 msgstr ""
2949 "B<index>(3), B<rindex>(3), B<stpcpy>(3), B<strcasecmp>(3), B<strcat>(3), "
2950 "B<strchr>(3), B<strcmp>(3), B<strcoll>(3), B<strcpy>(3), B<strcspn>(3), "
2951 "B<strdup>(3), B<strfry>(3), B<strlen>(3), B<strncasecmp>(3), B<strncat>(3), "
2952 "B<strncmp>(3), B<strncpy>(3), B<strpbrk>(3), B<strrchr>(3), B<strsep>(3), "
2953 "B<strspn>(3), B<strstr>(3), B<strtok>(3), B<strxfrm>(3)"
2954
2955 #. type: TH
2956 #: build/C/man3/strlen.3:30
2957 #, no-wrap
2958 msgid "STRLEN"
2959 msgstr "STRLEN"
2960
2961 #. type: TH
2962 #: build/C/man3/strlen.3:30
2963 #, no-wrap
2964 msgid "2012-05-04"
2965 msgstr "2012-05-04"
2966
2967 #. type: Plain text
2968 #: build/C/man3/strlen.3:33
2969 msgid "strlen - calculate the length of a string"
2970 msgstr "strlen - 文字列の長さを計算する"
2971
2972 #. type: Plain text
2973 #: build/C/man3/strlen.3:45
2974 msgid ""
2975 "The B<strlen>()  function calculates the length of the string I<s>, "
2976 "excluding the terminating null byte (\\(aq\\e0\\(aq)."
2977 msgstr ""
2978 "B<strlen>()  関数は文字列 I<s> の長さを計算する。 このとき、終端 NULL バイト "
2979 "(\\(aq\\e0\\(aq) は計算に含まれない。"
2980
2981 #. type: Plain text
2982 #: build/C/man3/strlen.3:50
2983 msgid ""
2984 "The B<strlen>()  function returns the number of bytes in the string I<s>."
2985 msgstr "B<strlen>() 関数は文字列 I<s> のバイト数を返す。"
2986
2987 #. type: Plain text
2988 #: build/C/man3/strlen.3:57
2989 msgid "B<string>(3), B<strnlen>(3), B<wcslen>(3), B<wcsnlen>(3)"
2990 msgstr "B<string>(3), B<strnlen>(3), B<wcslen>(3), B<wcsnlen>(3)"
2991
2992 #. type: TH
2993 #: build/C/man3/strnlen.3:13
2994 #, no-wrap
2995 msgid "STRNLEN"
2996 msgstr "STRNLEN"
2997
2998 #. type: Plain text
2999 #: build/C/man3/strnlen.3:16
3000 msgid "strnlen - determine the length of a fixed-size string"
3001 msgstr "strnlen - 固定長の文字列の長さを調べる"
3002
3003 #. type: Plain text
3004 #: build/C/man3/strnlen.3:21
3005 #, no-wrap
3006 msgid "B<size_t strnlen(const char *>I<s>B<, size_t >I<maxlen>B<);>\n"
3007 msgstr "B<size_t strnlen(const char *>I<s>B<, size_t >I<maxlen>B<);>\n"
3008
3009 #. type: Plain text
3010 #: build/C/man3/strnlen.3:29
3011 msgid "B<strnlen>():"
3012 msgstr "B<strnlen>():"
3013
3014 #. type: Plain text
3015 #: build/C/man3/strnlen.3:58
3016 msgid ""
3017 "The B<strnlen>()  function returns the number of bytes in the string pointed "
3018 "to by I<s>, excluding the terminating null byte (\\(aq\\e0\\(aq), but at "
3019 "most I<maxlen>.  In doing this, B<strnlen>()  looks only at the first "
3020 "I<maxlen> bytes at I<s> and never beyond I<s+maxlen>."
3021 msgstr ""
3022 "B<strnlen>() 関数は I<s> が指す文字列の長さをバイト数で返す。 長さには\n"
3023 "終端の NULL バイト (\\(aq\\e0\\(aq) は含まない。 また長さは最大で\n"
3024 "I<maxlen> までであり、 B<strnlen>() は I<s> の最初の I<maxlen> バイト\n"
3025 "のみを検査し I<s+maxlen> より先を検査することはない。"
3026
3027 #. type: Plain text
3028 #: build/C/man3/strnlen.3:71
3029 msgid ""
3030 "The B<strnlen>()  function returns I<strlen(s)>, if that is less than "
3031 "I<maxlen>, or I<maxlen> if there is no null byte (\\(aq\\e0\\(aq) among the "
3032 "first I<maxlen> bytes pointed to by I<s>."
3033 msgstr ""
3034 "B<strnlen>() 関数は I<maxlen> 以下ならば I<strlen(s)> と同じ値を返す。\n"
3035 "I<s> の指す文字列が最大 I<maxlen> バイトまでに NULL バイト\n"
3036 "(\\(aq\\e0\\(aq) 文字を含まない場合には I<maxlen> を返す。"
3037
3038 #. type: Plain text
3039 #: build/C/man3/strnlen.3:73
3040 msgid "POSIX.1-2008."
3041 msgstr "POSIX.1-2008."
3042
3043 #. type: Plain text
3044 #: build/C/man3/strnlen.3:75
3045 msgid "B<strlen>(3)"
3046 msgstr "B<strlen>(3)"
3047
3048 #. type: TH
3049 #: build/C/man3/strpbrk.3:30
3050 #, no-wrap
3051 msgid "STRPBRK"
3052 msgstr "STRPBRK"
3053
3054 #. type: Plain text
3055 #: build/C/man3/strpbrk.3:33
3056 msgid "strpbrk - search a string for any of a set of bytes"
3057 msgstr "strpbrk - 文字列からバイト集合に含まれるバイトを探す"
3058
3059 #. type: Plain text
3060 #: build/C/man3/strpbrk.3:47
3061 msgid ""
3062 "The B<strpbrk>()  function locates the first occurrence in the string I<s> "
3063 "of any of the bytes in the string I<accept>."
3064 msgstr ""
3065 "B<strpbrk>() 関数は、文字列 I<accept> に含まれるバイトのいずれかが、\n"
3066 "文字列 I<s> 内で最初に現れる位置を特定する。"
3067
3068 #. type: Plain text
3069 #: build/C/man3/strpbrk.3:56
3070 msgid ""
3071 "The B<strpbrk>()  function returns a pointer to the byte in I<s> that "
3072 "matches one of the bytes in I<accept>, or NULL if no such byte is found."
3073 msgstr ""
3074 "B<strpbrk>() 関数は、I<s> 内のバイトで、I<accept> に含まれる\n"
3075 "バイトのいずれかに一致したバイトへのポインタを返す。\n"
3076 "I<accept> に含まれるバイトが見つからなかった場合は NULL を返す。"
3077
3078 #. type: Plain text
3079 #: build/C/man3/strpbrk.3:69
3080 msgid ""
3081 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3082 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), B<wcspbrk>(3)"
3083 msgstr ""
3084 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3085 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), B<wcspbrk>(3)"
3086
3087 #. type: TH
3088 #: build/C/man3/strsep.3:33
3089 #, no-wrap
3090 msgid "STRSEP"
3091 msgstr "STRSEP"
3092
3093 #. type: Plain text
3094 #: build/C/man3/strsep.3:36
3095 msgid "strsep - extract token from string"
3096 msgstr "strsep - 文字列からトークンを取り出す"
3097
3098 #. type: Plain text
3099 #: build/C/man3/strsep.3:50
3100 msgid "B<strsep>(): _BSD_SOURCE"
3101 msgstr "B<strsep>(): _BSD_SOURCE"
3102
3103 #. type: Plain text
3104 #: build/C/man3/strsep.3:74
3105 msgid ""
3106 "If I<*stringp> is NULL, the B<strsep>()  function returns NULL and does "
3107 "nothing else.  Otherwise, this function finds the first token in the string "
3108 "I<*stringp>, where tokens are delimited by symbols in the string I<delim>.  "
3109 "This token is terminated by overwriting the delimiter with a null byte (\\(aq"
3110 "\\e0\\(aq)  and I<*stringp> is updated to point past the token.  In case no "
3111 "delimiter was found, the token is taken to be the entire string I<*stringp>, "
3112 "and I<*stringp> is made NULL."
3113 msgstr ""
3114 "I<*stringp> が NULL の場合、 B<strsep>()  関数は何もせずに NULL を返す。 さも"
3115 "なければ、文字列 I<stringp> を I<delim> に含まれる文字で区切った トークンのう"
3116 "ち最初のものを返す。 トークンは、区切り文字を NULL バイト (\\(aq\\e0\\(aq) で"
3117 "上書きすることで 終端される。 I<*stringp> は切り出されたトークンの次の位置を"
3118 "示すように更新される。 区切り文字が見つからない場合、I<*stringp> 文字列全体が"
3119 "トークンとして 扱われ、I<*stringp> は NULL となる。"
3120
3121 #. type: Plain text
3122 #: build/C/man3/strsep.3:80
3123 msgid ""
3124 "The B<strsep>()  function returns a pointer to the token, that is, it "
3125 "returns the original value of I<*stringp>."
3126 msgstr ""
3127 "B<strsep>()  関数は、トークンへのポインタを返す。 つまり、元の I<*stringp> の"
3128 "値を返す。"
3129
3130 #. type: Plain text
3131 #: build/C/man3/strsep.3:82
3132 msgid "4.4BSD."
3133 msgstr "4.4BSD."
3134
3135 #. type: Plain text
3136 #: build/C/man3/strsep.3:91
3137 msgid ""
3138 "The B<strsep>()  function was introduced as a replacement for B<strtok>(3), "
3139 "since the latter cannot handle empty fields.  However, B<strtok>(3)  "
3140 "conforms to C89/C99 and hence is more portable."
3141 msgstr ""
3142 "B<strsep>()  関数は、 B<strtok>(3)  関数が空のフィールドを 扱えないために、そ"
3143 "の代替品として導入された。 しかしながら、 B<strtok>(3)  関数は C89/C99 に準拠"
3144 "しており、より移植性がある。"
3145
3146 #. type: Plain text
3147 #: build/C/man3/strsep.3:94
3148 msgid "Be cautious when using this function.  If you do use it, note that:"
3149 msgstr ""
3150 "この関数を使う時は注意すること。 もし使うなら、以下のことに注意すること。"
3151
3152 #. type: Plain text
3153 #: build/C/man3/strsep.3:96
3154 msgid "This function modifies its first argument."
3155 msgstr "この関数は最初の引数を変更する。"
3156
3157 #. type: Plain text
3158 #: build/C/man3/strsep.3:98
3159 msgid "This function cannot be used on constant strings."
3160 msgstr "この関数は定数文字列には使えない。"
3161
3162 #. type: Plain text
3163 #: build/C/man3/strsep.3:100
3164 msgid "The identity of the delimiting character is lost."
3165 msgstr "区切り文字自体は失われてしまう。"
3166
3167 #. type: Plain text
3168 #: build/C/man3/strsep.3:110
3169 msgid ""
3170 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3171 "B<strpbrk>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
3172 msgstr ""
3173 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3174 "B<strpbrk>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
3175
3176 #. type: TH
3177 #: build/C/man3/strsignal.3:30
3178 #, no-wrap
3179 msgid "STRSIGNAL"
3180 msgstr "STRSIGNAL"
3181
3182 #. type: TH
3183 #: build/C/man3/strsignal.3:30
3184 #, no-wrap
3185 msgid "2010-09-15"
3186 msgstr "2010-09-15"
3187
3188 #. type: Plain text
3189 #: build/C/man3/strsignal.3:33
3190 msgid "strsignal - return string describing signal"
3191 msgstr "strsignal - シグナルを説明する文字列を返す"
3192
3193 #. type: Plain text
3194 #: build/C/man3/strsignal.3:38
3195 #, no-wrap
3196 msgid "B<char *strsignal(int >I<sig>B<);>\n"
3197 msgstr "B<char *strsignal(int >I<sig>B<);>\n"
3198
3199 #. type: Plain text
3200 #: build/C/man3/strsignal.3:40
3201 #, no-wrap
3202 msgid "B<extern const char * const >I<sys_siglist>B<[];>\n"
3203 msgstr "B<extern const char * const >I<sys_siglist>B<[];>\n"
3204
3205 #. type: Plain text
3206 #: build/C/man3/strsignal.3:48
3207 msgid "B<strsignal>():"
3208 msgstr "B<strsignal>():"
3209
3210 #. type: Plain text
3211 #: build/C/man3/strsignal.3:68
3212 msgid ""
3213 "The B<strsignal>()  function returns a string describing the signal number "
3214 "passed in the argument I<sig>.  The string can be used only until the next "
3215 "call to B<strsignal>()."
3216 msgstr ""
3217 "B<strsignal>()  関数は、引数 I<sig> で渡されたシグナル番号を 説明する文字列を"
3218 "返す。 文字列は、次の B<strsignal>()  が呼ばれるまでの間だけ使用できる。"
3219
3220 #. type: Plain text
3221 #: build/C/man3/strsignal.3:77
3222 msgid ""
3223 "The array I<sys_siglist> holds the signal description strings indexed by "
3224 "signal number.  The B<strsignal>()  function should be used if possible "
3225 "instead of this array."
3226 msgstr ""
3227 "配列 I<sys_siglist> はシグナルを説明する文字列を保持しており、 配列へのアクセ"
3228 "スにはシグナル番号を添え字として用いる事ができる。 出来るだけこの配列の代わり"
3229 "に B<strsignal>()  関数を 使うべきである。"
3230
3231 #. type: Plain text
3232 #: build/C/man3/strsignal.3:84
3233 msgid ""
3234 "The B<strsignal>()  function returns the appropriate description string, or "
3235 "an unknown signal message if the signal number is invalid.  On some systems "
3236 "(but not on Linux), a NULL pointer may be returned instead for an invalid "
3237 "signal number."
3238 msgstr ""
3239 "B<strsignal>()  関数は、シグナルの適切な説明を返す。 もしシグナル番号が不正な"
3240 "場合は、未知のシグナル(unknown signal)を示す メッセージを返す。 (Linux はそう"
3241 "ではないが)不正なシグナル番号に対して、 NULL ポインタを 返すシステムもある。"
3242
3243 #. type: Plain text
3244 #: build/C/man3/strsignal.3:87
3245 msgid "POSIX.1-2008.  Present on Solaris and the BSDs."
3246 msgstr "POSIX.1-2008.  Solaris と BSD 系にも存在する。"
3247
3248 #. type: Plain text
3249 #: build/C/man3/strsignal.3:90
3250 msgid "B<psignal>(3), B<strerror>(3)"
3251 msgstr "B<psignal>(3), B<strerror>(3)"
3252
3253 #. type: TH
3254 #: build/C/man3/strspn.3:30
3255 #, no-wrap
3256 msgid "STRSPN"
3257 msgstr "STRSPN"
3258
3259 #. type: Plain text
3260 #: build/C/man3/strspn.3:33
3261 msgid "strspn, strcspn - search a string for a set of bytes"
3262 msgstr "strspn, strcspn - バイト集合で構成される文字列を探す"
3263
3264 #. type: Plain text
3265 #: build/C/man3/strspn.3:49
3266 msgid ""
3267 "The B<strspn>()  function calculates the length (in bytes) of the initial "
3268 "segment of I<s> which consists entirely of bytes in I<accept>."
3269 msgstr ""
3270 "B<strspn>() 関数は、 I<s> から、I<accept> に含まれる文字だけで\n"
3271 "構成される最初の部分文字列を探し、\n"
3272 "その部分の (バイト単位の) 長さを計算する。"
3273
3274 #. type: Plain text
3275 #: build/C/man3/strspn.3:57
3276 msgid ""
3277 "The B<strcspn>()  function calculates the length of the initial segment of "
3278 "I<s> which consists entirely of bytes not in I<reject>."
3279 msgstr ""
3280 "B<strcspn>() 関数は、 I<s> から、I<reject> に含まれない文字だけで\n"
3281 "構成される最初の部分文字列を探し、\n"
3282 "その部分の (バイト単位の) 長さを計算する。"
3283
3284 #. type: Plain text
3285 #: build/C/man3/strspn.3:66
3286 msgid ""
3287 "The B<strspn>()  function returns the number of bytes in the initial segment "
3288 "of I<s> which consist only of bytes from I<accept>."
3289 msgstr ""
3290 "B<strspn>() 関数は、 I<s> 内の、I<accept> からの文字だけで\n"
3291 "構成される最初の部分文字列のバイト数を返す。"
3292
3293 #. type: Plain text
3294 #: build/C/man3/strspn.3:74
3295 msgid ""
3296 "The B<strcspn>()  function returns the number of bytes in the initial "
3297 "segment of I<s> which are not in the string I<reject>."
3298 msgstr ""
3299 "B<strcspn>() 関数は、I<s> 内の、文字列 I<reject> に含まれない\n"
3300 "文字だけで構成される最初の部分文字列のバイト数を返す。"
3301
3302 #. type: Plain text
3303 #: build/C/man3/strspn.3:88
3304 msgid ""
3305 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3306 "B<strpbrk>(3), B<strsep>(3), B<strstr>(3), B<strtok>(3), B<wcscspn>(3), "
3307 "B<wcsspn>(3)"
3308 msgstr ""
3309 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3310 "B<strpbrk>(3), B<strsep>(3), B<strstr>(3), B<strtok>(3), B<wcscspn>(3), "
3311 "B<wcsspn>(3)"
3312
3313 #. type: TH
3314 #: build/C/man3/strstr.3:33
3315 #, no-wrap
3316 msgid "STRSTR"
3317 msgstr "STRSTR"
3318
3319 #. type: Plain text
3320 #: build/C/man3/strstr.3:36
3321 msgid "strstr, strcasestr - locate a substring"
3322 msgstr "strstr, strcasestr - 部分文字列の位置を示す"
3323
3324 #. type: Plain text
3325 #: build/C/man3/strstr.3:47
3326 #, no-wrap
3327 msgid "B<char *strcasestr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
3328 msgstr "B<char *strcasestr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
3329
3330 #. type: Plain text
3331 #: build/C/man3/strstr.3:56
3332 msgid ""
3333 "The B<strstr>()  function finds the first occurrence of the substring "
3334 "I<needle> in the string I<haystack>.  The terminating null bytes (\\(aq"
3335 "\\e0\\(aq) are not compared."
3336 msgstr ""
3337 "B<strstr>()  関数は、部分文字列 I<needle> が文字列 I<haystack> 中 で最初に現"
3338 "れる位置を見つける。 文字列を終端 NULL バイト (\\(aq\\e0\\(aq) は比較されな"
3339 "い。"
3340
3341 #. type: Plain text
3342 #: build/C/man3/strstr.3:62
3343 msgid ""
3344 "The B<strcasestr>()  function is like B<strstr>(), but ignores the case of "
3345 "both arguments."
3346 msgstr ""
3347 "B<strcasestr>()  関数は B<strstr>()  関数と同様だが、 両方の引数に対して大文"
3348 "字小文字を無視する。"
3349
3350 #. type: Plain text
3351 #: build/C/man3/strstr.3:65
3352 msgid ""
3353 "These functions return a pointer to the beginning of the substring, or NULL "
3354 "if the substring is not found."
3355 msgstr ""
3356 "これらの関数は、部分文字列の開始を指すポインタを返し、 もし部分文字列が見つか"
3357 "らない場合は NULL を返す。"
3358
3359 #. type: Plain text
3360 #: build/C/man3/strstr.3:72
3361 msgid ""
3362 "The B<strstr>()  function conforms to C89 and C99.  The B<strcasestr>()  "
3363 "function is a nonstandard extension."
3364 msgstr ""
3365 "B<strstr>()  関数は C89 と C99 に準拠している。 B<strcasestr>()  関数は非標準"
3366 "拡張である。"
3367
3368 #. type: Plain text
3369 #: build/C/man3/strstr.3:84
3370 msgid ""
3371 "Early versions of Linux libc (like 4.5.26) would not allow an empty "
3372 "I<needle> argument for B<strstr>().  Later versions (like 4.6.27) work "
3373 "correctly, and return I<haystack> when I<needle> is empty."
3374 msgstr ""
3375 "Linux libc の初期のバージョン(4.5.26 まで)は B<strstr>()  関数の I<needle> 引"
3376 "数に空文字列を指定できない。 最近のバージョン(4.6.27 以降)は正しく動作し、 "
3377 "I<needle> が空の時は I<haystack> を返す。"
3378
3379 #. type: Plain text
3380 #: build/C/man3/strstr.3:96
3381 msgid ""
3382 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strcasecmp>(3), B<strchr>(3), "
3383 "B<string>(3), B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strtok>(3), "
3384 "B<wcsstr>(3)"
3385 msgstr ""
3386 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strcasecmp>(3), B<strchr>(3), "
3387 "B<string>(3), B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strtok>(3), "
3388 "B<wcsstr>(3)"
3389
3390 #. type: TH
3391 #: build/C/man3/strtok.3:32
3392 #, no-wrap
3393 msgid "STRTOK"
3394 msgstr "STRTOK"
3395
3396 #. type: TH
3397 #: build/C/man3/strtok.3:32
3398 #, no-wrap
3399 msgid "2013-05-19"
3400 msgstr "2013-05-19"
3401
3402 #. type: Plain text
3403 #: build/C/man3/strtok.3:35
3404 msgid "strtok, strtok_r - extract tokens from strings"
3405 msgstr "strtok, strtok_r - 文字列からトークンを取り出す"
3406
3407 #. type: Plain text
3408 #: build/C/man3/strtok.3:40
3409 #, no-wrap
3410 msgid "B<char *strtok(char *>I<str>B<, const char *>I<delim>B<);>\n"
3411 msgstr "B<char *strtok(char *>I<str>B<, const char *>I<delim>B<);>\n"
3412
3413 #. type: Plain text
3414 #: build/C/man3/strtok.3:42
3415 #, no-wrap
3416 msgid "B<char *strtok_r(char *>I<str>B<, const char *>I<delim>B<, char **>I<saveptr>B<);>\n"
3417 msgstr "B<char *strtok_r(char *>I<str>B<, const char *>I<delim>B<, char **>I<saveptr>B<);>\n"
3418
3419 #. type: Plain text
3420 #: build/C/man3/strtok.3:53
3421 msgid ""
3422 "B<strtok_r>(): _SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 1 "
3423 "|| _XOPEN_SOURCE || _POSIX_SOURCE"
3424 msgstr ""
3425 "B<strtok_r>(): _SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 1 "
3426 "|| _XOPEN_SOURCE || _POSIX_SOURCE"
3427
3428 #. type: Plain text
3429 #: build/C/man3/strtok.3:66
3430 msgid ""
3431 "The B<strtok>()  function breaks a string into a sequence of zero or more "
3432 "nonempty tokens.  On the first call to B<strtok>()  the string to be parsed "
3433 "should be specified in I<str>.  In each subsequent call that should parse "
3434 "the same string, I<str> must be NULL."
3435 msgstr ""
3436 "B<strtok>()  関数は文字列を 0 個以上の空でないトークンの列に分割する。 "
3437 "B<strtok>()  を最初に呼び出す際には、解析対象の文字列を I<str> に 指定する。"
3438 "同じ文字列の解析を行うその後の呼び出しでは、 I<str> は NULL にしなければなら"
3439 "ない。"
3440
3441 #. type: Plain text
3442 #: build/C/man3/strtok.3:75
3443 msgid ""
3444 "The I<delim> argument specifies a set of bytes that delimit the tokens in "
3445 "the parsed string.  The caller may specify different strings in I<delim> in "
3446 "successive calls that parse the same string."
3447 msgstr ""
3448 "I<delim> 引き数には、解析対象の文字列をトークンに区切るのに使用する\n"
3449 "バイト集合を指定する。同じ文字列を解析する一連の呼び出しにおいて、\n"
3450 "I<delim> に違う文字列を指定してもよい。"
3451
3452 #. type: Plain text
3453 #: build/C/man3/strtok.3:84
3454 msgid ""
3455 "Each call to B<strtok>()  returns a pointer to a null-terminated string "
3456 "containing the next token.  This string does not include the delimiting "
3457 "byte.  If no more tokens are found, B<strtok>()  returns NULL."
3458 msgstr ""
3459 "B<strtok>() のそれぞれの呼び出しでは、次のトークンを格納した NULL 終端\n"
3460 "された文字列へのポインタが返される。この文字列には区切りバイトは含まれ\n"
3461 "ない。これ以上トークンが見つからなかった場合には、NULL が返される。"
3462
3463 #. type: Plain text
3464 #: build/C/man3/strtok.3:104
3465 msgid ""
3466 "A sequence of calls to B<strtok>()  that operate on the same string "
3467 "maintains a pointer that determines the point from which to start searching "
3468 "for the next token.  The first call to B<strtok>()  sets this pointer to "
3469 "point to the first byte of the string.  The start of the next token is "
3470 "determined by scanning forward for the next nondelimiter byte in I<str>.  If "
3471 "such a byte is found, it is taken as the start of the next token.  If no "
3472 "such byte is found, then there are no more tokens, and B<strtok>()  returns "
3473 "NULL.  (A string that is empty or that contains only delimiters will thus "
3474 "cause B<strtok>()  to return NULL on the first call.)"
3475 msgstr ""
3476 "同じ文字列に対して操作を行う B<strtok>() を連続して呼び出す場合、 次のトーク"
3477 "ンを探し始める位置を決めるためのポインタが保持される。 最初の B<strtok> の呼"
3478 "び出しでは、 このポインタは対象の文字列の最初のバイトにセットされる。 次の"
3479 "トークンの先頭は、 I<str> 内で次の区切りバイト以外のバイトを前方に検索して決"
3480 "定される。 区切りバイト以外のバイトが見つからなかった場合は、 トークンはこれ"
3481 "以上なく、 B<strtok>() は NULL を返す (したがって、 空の文字列や区切りバイト"
3482 "だけを含む文字列の場合には、 最初の B<strtok>() の呼び出しで NULL が返ること"
3483 "になる)。"
3484
3485 #. type: Plain text
3486 #: build/C/man3/strtok.3:117
3487 msgid ""
3488 "The end of each token is found by scanning forward until either the next "
3489 "delimiter byte is found or until the terminating null byte (\\(aq\\e0\\(aq) "
3490 "is encountered.  If a delimiter byte is found, it is overwritten with a null "
3491 "byte to terminate the current token, and B<strtok>()  saves a pointer to the "
3492 "following byte; that pointer will be used as the starting point when "
3493 "searching for the next token.  In this case, B<strtok>()  returns a pointer "
3494 "to the start of the found token."
3495 msgstr ""
3496 "各トークンの末尾は、次の区切りバイトが見つかるか、終端の NULL バイト (\\(aq"
3497 "\\e0\\(aq) に達するまで文字列を前方に検索することで見つかる。 区切りバイトが"
3498 "見つかった場合には、 現在のトークンの終わりを示すために、 見つかった区切りバ"
3499 "イトが NULL バイトで上書きされ、 B<strtok>() はポインタを次のバイトに設定す"
3500 "る。 このポインタは、次のトークンを検索する際の開始点として使用される。 この"
3501 "場合、 B<strtok>() は見つかったトークンの先頭へのポインタを返す。"
3502
3503 #. type: Plain text
3504 #: build/C/man3/strtok.3:131
3505 msgid ""
3506 "From the above description, it follows that a sequence of two or more "
3507 "contiguous delimiter bytes in the parsed string is considered to be a single "
3508 "delimiter, and that delimiter bytes at the start or end of the string are "
3509 "ignored.  Put another way: the tokens returned by B<strtok>()  are always "
3510 "nonempty strings.  Thus, for example, given the string \"I<aaa;;bbb,>\", "
3511 "successive calls to B<strtok>()  that specify the delimiter string \"I<;,>\" "
3512 "would return the strings \"I<aaa>\" and \"I<bbb>\", and then a NULL pointer."
3513 msgstr ""
3514 "上記の説明の通り、 解析対象の文字列に 2 つ以上の区切りバイトが連続している場"
3515 "合には、 一つの区切りバイトとみなされ、 文字列の先頭や末尾にある区切りバイト"
3516 "は無視される。 言い換えると、 B<strtok>() が返すトークンは必ず空でない文字列"
3517 "となる。 したがって、例えば \"I<aaa;;bbb,>\" という文字列が与えられたとする"
3518 "と、 区切り文字列 \"I<;,>\" を指定した一連の B<strtok>() の呼び出しでは、 "
3519 "\"I<aaa>\" と I<bbb>\" が返り、その次に NULL ポインタが返る。"
3520
3521 #. type: Plain text
3522 #: build/C/man3/strtok.3:144
3523 msgid ""
3524 "The B<strtok_r>()  function is a reentrant version B<strtok>().  The "
3525 "I<saveptr> argument is a pointer to a I<char\\ *> variable that is used "
3526 "internally by B<strtok_r>()  in order to maintain context between successive "
3527 "calls that parse the same string."
3528 msgstr ""
3529 "B<strtok_r>()  関数は B<strtok>()  のリエントラント版である。 I<saveptr> 引き"
3530 "数は I<char\\ *> 変数へのポインタであり、 同じ文字列の解析を行う B<strtok_r>"
3531 "()  の呼び出し間で処理状況を保存するために B<strtok_r>()  内部で使用される。"
3532
3533 #. type: Plain text
3534 #: build/C/man3/strtok.3:156
3535 msgid ""
3536 "On the first call to B<strtok_r>(), I<str> should point to the string to be "
3537 "parsed, and the value of I<saveptr> is ignored.  In subsequent calls, I<str> "
3538 "should be NULL, and I<saveptr> should be unchanged since the previous call."
3539 msgstr ""
3540 "B<strtok_r>()  を最初に呼び出す際には、 I<str> は解析対象の文字列を指していな"
3541 "ければならず、 I<saveptr> の値は無視される。それ以降の呼び出しでは、 I<str> "
3542 "は NULL とし、 I<saveptr> は前回の呼び出し以降変更しないようにしなければなら"
3543 "ない。"
3544
3545 #. type: Plain text
3546 #: build/C/man3/strtok.3:162
3547 msgid ""
3548 "Different strings may be parsed concurrently using sequences of calls to "
3549 "B<strtok_r>()  that specify different I<saveptr> arguments."
3550 msgstr ""
3551 "B<strtok_r>()  の呼び出し時に異なる I<saveptr> 引き数を指定することで、 異な"
3552 "る文字列の解析を同時に行うことができる。"
3553
3554 #. type: Plain text
3555 #: build/C/man3/strtok.3:169
3556 msgid ""
3557 "The B<strtok>()  and B<strtok_r>()  functions return a pointer to the next "
3558 "token, or NULL if there are no more tokens."
3559 msgstr ""
3560 "B<strtok>()  と B<strtok_r>()  は次のトークンへのポインタか、 トークンがなけ"
3561 "れば NULL を返す。"
3562
3563 #. type: Plain text
3564 #: build/C/man3/strtok.3:174
3565 msgid "The B<strtok>()  function is not thread-safe."
3566 msgstr "The B<strtok>() 関数はスレッドセーフではない。"
3567
3568 #. type: Plain text
3569 #: build/C/man3/strtok.3:178
3570 msgid "The B<strtok_r>()  function is thread-safe."
3571 msgstr "B<strtok_r>() 関数はスレッドセーフである。"
3572
3573 #. type: TP
3574 #: build/C/man3/strtok.3:179
3575 #, no-wrap
3576 msgid "B<strtok>()"
3577 msgstr "B<strtok>()"
3578
3579 #. type: Plain text
3580 #: build/C/man3/strtok.3:182
3581 msgid "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
3582 msgstr "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
3583
3584 #. type: TP
3585 #: build/C/man3/strtok.3:182
3586 #, no-wrap
3587 msgid "B<strtok_r>()"
3588 msgstr "B<strtok_r>()"
3589
3590 #. type: Plain text
3591 #: build/C/man3/strtok.3:185
3592 msgid "POSIX.1-2001."
3593 msgstr "POSIX.1-2001."
3594
3595 #. type: Plain text
3596 #: build/C/man3/strtok.3:188
3597 msgid "Be cautious when using these functions.  If you do use them, note that:"
3598 msgstr ""
3599 "これらの関数を使うのは慎重に吟味すること。 使用する場合は、以下の点に注意が必"
3600 "要である。"
3601
3602 #. type: Plain text
3603 #: build/C/man3/strtok.3:190
3604 msgid "These functions modify their first argument."
3605 msgstr "これらの関数はその最初の引数を変更する。"
3606
3607 #. type: Plain text
3608 #: build/C/man3/strtok.3:192
3609 msgid "These functions cannot be used on constant strings."
3610 msgstr "これらの関数は const な文字列では使えない。"
3611
3612 #. type: Plain text
3613 #: build/C/man3/strtok.3:194
3614 msgid "The identity of the delimiting byte is lost."
3615 msgstr "区切りバイト自体は失われてしまう。"
3616
3617 #. type: Plain text
3618 #: build/C/man3/strtok.3:201
3619 msgid ""
3620 "The B<strtok>()  function uses a static buffer while parsing, so it's not "
3621 "thread safe.  Use B<strtok_r>()  if this matters to you."
3622 msgstr ""
3623 "B<strtok>()  関数は文字列の解析に静的バッファを用いるので、スレッドセーフでな"
3624 "い。 これが問題になる場合は B<strtok_r>()  を用いること。"
3625
3626 #. type: Plain text
3627 #: build/C/man3/strtok.3:210
3628 msgid ""
3629 "The program below uses nested loops that employ B<strtok_r>()  to break a "
3630 "string into a two-level hierarchy of tokens.  The first command-line "
3631 "argument specifies the string to be parsed.  The second argument specifies "
3632 "the delimiter byte(s)  to be used to separate that string into \"major\" "
3633 "tokens.  The third argument specifies the delimiter byte(s)  to be used to "
3634 "separate the \"major\" tokens into subtokens."
3635 msgstr ""
3636 "以下のプログラムは、 B<strtok_r>() を利用するループを入れ子にして使用し、\n"
3637 "文字列を 2 階層のトークンに分割するものである。 1番目のコマンドライン\n"
3638 "引き数には、解析対象の文字列を指定する。 2 番目の引き数には、文字列を\n"
3639 "「大きな」トークンに分割するために 使用する区切りバイトを指定する。\n"
3640 "3 番目の引き数には、「大きな」トークンを細かく分割するために使用する\n"
3641 "区切りバイトを指定する。"
3642
3643 #. type: Plain text
3644 #: build/C/man3/strtok.3:212
3645 msgid "An example of the output produced by this program is the following:"
3646 msgstr "このプログラムの出力例を以下に示す。"
3647
3648 #. type: Plain text
3649 #: build/C/man3/strtok.3:224
3650 #, no-wrap
3651 msgid ""
3652 "$B< ./a.out \\(aqa/bbb///cc;xxx:yyy:\\(aq \\(aq:;\\(aq \\(aq/\\(aq>\n"
3653 "1: a/bbb///cc\n"
3654 "         --E<gt> a\n"
3655 "         --E<gt> bbb\n"
3656 "         --E<gt> cc\n"
3657 "2: xxx\n"
3658 "         --E<gt> xxx\n"
3659 "3: yyy\n"
3660 "         --E<gt> yyy\n"
3661 msgstr ""
3662 "$B< ./a.out \\(aqa/bbb///cc;xxx:yyy:\\(aq \\(aq:;\\(aq \\(aq/\\(aq>\n"
3663 "1: a/bbb///cc\n"
3664 "         --E<gt> a\n"
3665 "         --E<gt> bbb\n"
3666 "         --E<gt> cc\n"
3667 "2: xxx\n"
3668 "         --E<gt> xxx\n"
3669 "3: yyy\n"
3670 "         --E<gt> yyy\n"
3671
3672 #. type: SS
3673 #: build/C/man3/strtok.3:226
3674 #, no-wrap
3675 msgid "Program source"
3676 msgstr "プログラムのソース"
3677
3678 #. type: Plain text
3679 #: build/C/man3/strtok.3:232
3680 #, no-wrap
3681 msgid ""
3682 "#include E<lt>stdio.hE<gt>\n"
3683 "#include E<lt>stdlib.hE<gt>\n"
3684 "#include E<lt>string.hE<gt>\n"
3685 msgstr ""
3686 "#include E<lt>stdio.hE<gt>\n"
3687 "#include E<lt>stdlib.hE<gt>\n"
3688 "#include E<lt>string.hE<gt>\n"
3689
3690 #. type: Plain text
3691 #: build/C/man3/strtok.3:239
3692 #, no-wrap
3693 msgid ""
3694 "int\n"
3695 "main(int argc, char *argv[])\n"
3696 "{\n"
3697 "    char *str1, *str2, *token, *subtoken;\n"
3698 "    char *saveptr1, *saveptr2;\n"
3699 "    int j;\n"
3700 msgstr ""
3701 "int\n"
3702 "main(int argc, char *argv[])\n"
3703 "{\n"
3704 "    char *str1, *str2, *token, *subtoken;\n"
3705 "    char *saveptr1, *saveptr2;\n"
3706 "    int j;\n"
3707
3708 #. type: Plain text
3709 #: build/C/man3/strtok.3:245
3710 #, no-wrap
3711 msgid ""
3712 "    if (argc != 4) {\n"
3713 "        fprintf(stderr, \"Usage: %s string delim subdelim\\en\",\n"
3714 "                argv[0]);\n"
3715 "        exit(EXIT_FAILURE);\n"
3716 "    }\n"
3717 msgstr ""
3718 "    if (argc != 4) {\n"
3719 "        fprintf(stderr, \"Usage: %s string delim subdelim\\en\",\n"
3720 "                argv[0]);\n"
3721 "        exit(EXIT_FAILURE);\n"
3722 "    }\n"
3723
3724 #. type: Plain text
3725 #: build/C/man3/strtok.3:251
3726 #, no-wrap
3727 msgid ""
3728 "    for (j = 1, str1 = argv[1]; ; j++, str1 = NULL) {\n"
3729 "        token = strtok_r(str1, argv[2], &saveptr1);\n"
3730 "        if (token == NULL)\n"
3731 "            break;\n"
3732 "        printf(\"%d: %s\\en\", j, token);\n"
3733 msgstr ""
3734 "    for (j = 1, str1 = argv[1]; ; j++, str1 = NULL) {\n"
3735 "        token = strtok_r(str1, argv[2], &saveptr1);\n"
3736 "        if (token == NULL)\n"
3737 "            break;\n"
3738 "        printf(\"%d: %s\\en\", j, token);\n"
3739
3740 #. type: Plain text
3741 #: build/C/man3/strtok.3:259
3742 #, no-wrap
3743 msgid ""
3744 "        for (str2 = token; ; str2 = NULL) {\n"
3745 "            subtoken = strtok_r(str2, argv[3], &saveptr2);\n"
3746 "            if (subtoken == NULL)\n"
3747 "                break;\n"
3748 "            printf(\"\\t --E<gt> %s\\en\", subtoken);\n"
3749 "        }\n"
3750 "    }\n"
3751 msgstr ""
3752 "        for (str2 = token; ; str2 = NULL) {\n"
3753 "            subtoken = strtok_r(str2, argv[3], &saveptr2);\n"
3754 "            if (subtoken == NULL)\n"
3755 "                break;\n"
3756 "            printf(\"\\t --E<gt> %s\\en\", subtoken);\n"
3757 "        }\n"
3758 "    }\n"
3759
3760 #. type: Plain text
3761 #: build/C/man3/strtok.3:262
3762 #, no-wrap
3763 msgid ""
3764 "    exit(EXIT_SUCCESS);\n"
3765 "}\n"
3766 msgstr ""
3767 "    exit(EXIT_SUCCESS);\n"
3768 "}\n"
3769
3770 #. type: Plain text
3771 #: build/C/man3/strtok.3:268
3772 msgid ""
3773 "Another example program using B<strtok>()  can be found in B<getaddrinfo_a>"
3774 "(3)."
3775 msgstr "B<strtok>()  を使った別のプログラム例が B<getaddrinfo_a>(3)  にある。"
3776
3777 #. type: Plain text
3778 #: build/C/man3/strtok.3:279
3779 msgid ""
3780 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3781 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wcstok>(3)"
3782 msgstr ""
3783 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3784 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wcstok>(3)"
3785
3786 #. type: TH
3787 #: build/C/man3/strverscmp.3:25
3788 #, no-wrap
3789 msgid "STRVERSCMP"
3790 msgstr "STRVERSCMP"
3791
3792 #. type: TH
3793 #: build/C/man3/strverscmp.3:25
3794 #, no-wrap
3795 msgid "2001-12-19"
3796 msgstr "2001-12-19"
3797
3798 #. type: Plain text
3799 #: build/C/man3/strverscmp.3:28
3800 msgid "strverscmp - compare two version strings"
3801 msgstr "strverscmp - 2つのバージョン文字列を比較する"
3802
3803 #. type: Plain text
3804 #: build/C/man3/strverscmp.3:35
3805 #, no-wrap
3806 msgid "B<int strverscmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
3807 msgstr "B<int strverscmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
3808
3809 #.  classical solution: "rename jan jan0 jan?"
3810 #. type: Plain text
3811 #: build/C/man3/strverscmp.3:52
3812 msgid ""
3813 "Often one has files I<jan1>, I<jan2>, ..., I<jan9>, I<jan10>, ...  and it "
3814 "feels wrong when B<ls>(1)  orders them I<jan1>, I<jan10>, ..., I<jan2>, ..., "
3815 "I<jan9>.  In order to rectify this, GNU introduced the I<-v> option to B<ls>"
3816 "(1), which is implemented using B<versionsort>(3), which again uses "
3817 "B<strverscmp>()."
3818 msgstr ""
3819 "I<jan1>, I<jan2>, ..., I<jan9>, I<jan10>, ...  といった名前のファイルがある状"
3820 "況はよくあるが、 B<ls>(1)  を実行したときに I<jan1>, I<jan10>, ..., "
3821 "I<jan2>, ..., I<jan9> の順番で表示されるのには違和感がある。 これを修正するた"
3822 "めに、GNU は B<ls>(1)  に I<-v> オプションを導入した。 この機能は "
3823 "B<versionsort>(3)  を使って実装されているが、この中で B<strverscmp>()  が使用"
3824 "されている。"
3825
3826 #. type: Plain text
3827 #: build/C/man3/strverscmp.3:63
3828 msgid ""
3829 "Thus, the task of B<strverscmp>()  is to compare two strings and find the "
3830 "\"right\" order, while B<strcmp>(3)  finds only the lexicographic order.  "
3831 "This function does not use the locale category B<LC_COLLATE>, so is meant "
3832 "mostly for situations where the strings are expected to be in ASCII."
3833 msgstr ""
3834 "このように B<strverscmp>()  の役目は2つの文字列を比較して「正しい」順序を探す"
3835 "ことである。 これに対して B<strcmp>(3)  は辞書順だけで比較した結果を返す。 関"
3836 "数 B<strverscmp>()  はロケールのカテゴリである B<LC_COLLATE> を使用しない。 "
3837 "このことから、この関数が主にアスキー文字から成る文字列を 想定していることが分"
3838 "かる。"
3839
3840 #. type: Plain text
3841 #: build/C/man3/strverscmp.3:81
3842 msgid ""
3843 "What this function does is the following.  If both strings are equal, return "
3844 "0.  Otherwise find the position between two bytes with the property that "
3845 "before it both strings are equal, while directly after it there is a "
3846 "difference.  Find the largest consecutive digit strings containing (or "
3847 "starting at, or ending at) this position.  If one or both of these is empty, "
3848 "then return what B<strcmp>(3)  would have returned (numerical ordering of "
3849 "byte values).  Otherwise, compare both digit strings numerically, where "
3850 "digit strings with one or more leading zeros are interpreted as if they have "
3851 "a decimal point in front (so that in particular digit strings with more "
3852 "leading zeros come before digit strings with fewer leading zeros).  Thus, "
3853 "the ordering is I<000>, I<00>, I<01>, I<010>, I<09>, I<0>, I<1>, I<9>, I<10>."
3854 msgstr ""
3855 "この関数の動作は以下の通りである。 両方の文字列が等しい場合、0 を返す。 それ"
3856 "以外の場合、その直前までは両方の文字列が等しく、 その直後のバイトで両者に違い"
3857 "があるような、バイトの境界を探す。 見つかったバイト境界を含む数字列(数字だけ"
3858 "の文字列)の最長一致検索を行う。 (数字列は境界から始まっていても、境界で終わっ"
3859 "ていてもよい)。 2つの文字列から得られた数字列の一方または両方が空であれば、 "
3860 "B<strcmp>(3)  が返した結果を関数の返り値として返す。 すなわち、バイト値を比較"
3861 "した結果を返す。 それ以外の(数字列が両方とも空でない)場合、両方の数字列を数字"
3862 "順で比較する。 このとき、1つ以上の 0 が先頭にある数字列は、前に小数点がついて"
3863 "いるものと 解釈される。(先頭に 0 が多くある数字列ほど前に来ることになる)  こ"
3864 "の結果、順序は次のようになる: I<000>, I<00>, I<01>, I<010>, I<09>, I<0>, "
3865 "I<1>, I<9>, I<10>"
3866
3867 #. type: Plain text
3868 #: build/C/man3/strverscmp.3:90
3869 msgid ""
3870 "The B<strverscmp>()  function returns an integer less than, equal to, or "
3871 "greater than zero if I<s1> is found, respectively, to be earlier than, equal "
3872 "to, or later than I<s2>."
3873 msgstr ""
3874 "関数 B<strverscmp>()  は、ゼロよりも 1)小さい、2)等しい、3)大きいのいずれかの"
3875 "整数を返す。 それぞれは、I<s1> が I<s2> よりも、 1)小さい、2)等しい、3)大き"
3876 "い ことを示す。"
3877
3878 #. type: Plain text
3879 #: build/C/man3/strverscmp.3:97
3880 msgid "B<rename>(1), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3)"
3881 msgstr "B<rename>(1), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3)"
3882
3883 #. type: TH
3884 #: build/C/man3/strxfrm.3:30
3885 #, no-wrap
3886 msgid "STRXFRM"
3887 msgstr "STRXFRM"
3888
3889 #. type: Plain text
3890 #: build/C/man3/strxfrm.3:33
3891 msgid "strxfrm - string transformation"
3892 msgstr "strxfrm - 文字列の変換"
3893
3894 #. type: Plain text
3895 #: build/C/man3/strxfrm.3:62
3896 msgid ""
3897 "The B<strxfrm>()  function transforms the I<src> string into a form such "
3898 "that the result of B<strcmp>(3)  on two strings that have been transformed "
3899 "with B<strxfrm>()  is the same as the result of B<strcoll>(3)  on the two "
3900 "strings before their transformation.  The first I<n> bytes of the "
3901 "transformed string are placed in I<dest>.  The transformation is based on "
3902 "the program's current locale for category B<LC_COLLATE>.  (See B<setlocale>"
3903 "(3))."
3904 msgstr ""
3905 "B<strxfrm>() 関数は、文字列 I<src> に対して、次のような変換を行う。\n"
3906 "変換は、ある二つの文字列に対して、それぞれを B<strxfrm>() で変換\n"
3907 "した文字列に対して B<strcmp>(3) を行った結果が、 \n"
3908 "変換を行わずにB<strcoll>(3) を行った結果と同じとなるように行う。\n"
3909 "変換された文字列の先頭から I<n> バイト分が I<dest> に代入される。\n"
3910 "変換は、プログラムの現在のロケールのカテゴリ B<LC_COLLATE> に\n"
3911 "基づいて行われる (B<setlocale>(3) を参照)。"
3912
3913 #. type: Plain text
3914 #: build/C/man3/strxfrm.3:76
3915 msgid ""
3916 "The B<strxfrm>()  function returns the number of bytes required to store the "
3917 "transformed string in I<dest> excluding the terminating null byte (\\(aq"
3918 "\\e0\\(aq).  If the value returned is I<n> or more, the contents of I<dest> "
3919 "are indeterminate."
3920 msgstr ""
3921 "B<strxfrm>()  関数は、変換された文字列を I<dest> に代入するときに 必要なバイ"
3922 "ト数から、終端の NULL バイト (\\(aq\\e0\\(aq) の分を 引いたものを返す。もし返"
3923 "り値が I<n> 以上の場合、 I<dest> の内容は不定となる。"
3924
3925 #. type: Plain text
3926 #: build/C/man3/strxfrm.3:88
3927 msgid ""
3928 "In the I<POSIX> or I<C> locales B<strxfrm>()  is equivalent to copying the "
3929 "string with B<strncpy>(3)."
3930 msgstr ""
3931 "I<POSIX> または I<C> ロケールでは、関数 B<strxfrm>()  は、 関数 B<strncpy>"
3932 "(3)  を使って文字列をコピーするのと同じである。"
3933
3934 #. type: Plain text
3935 #: build/C/man3/strxfrm.3:96
3936 msgid ""
3937 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
3938 "B<strcoll>(3), B<string>(3)"
3939 msgstr ""
3940 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
3941 "B<strcoll>(3), B<string>(3)"
3942
3943 #~ msgid "2012-04-22"
3944 #~ msgstr "2012-04-22"