OSDN Git Service

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