OSDN Git Service

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