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.
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2014-06-08 01:30+0900\n"
10 "PO-Revision-Date: 2014-06-08 01:38+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
19 #: build/C/man3/bcmp.3:31
25 #: build/C/man3/bcmp.3:31
31 #: build/C/man3/bcmp.3:31 build/C/man3/bcopy.3:33 build/C/man3/bzero.3:31
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
53 msgid "Linux Programmer's Manual"
54 msgstr "Linux Programmer's Manual"
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
77 #: build/C/man3/bcmp.3:34
78 msgid "bcmp - compare byte sequences"
79 msgstr "bcmp - バイト列を比較する"
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
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
105 msgid "B<#include E<lt>strings.hE<gt>>\n"
106 msgstr "B<#include E<lt>strings.hE<gt>>\n"
109 #: build/C/man3/bcmp.3:39 build/C/man3/bstring.3:41
111 msgid "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
112 msgstr "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
115 #: build/C/man3/bcmp.3:40 build/C/man3/bcopy.3:42 build/C/man3/bstring.3:63
116 #: build/C/man3/bzero.3:40 build/C/man3/ffs.3:74 build/C/man3/index.3:42
117 #: build/C/man3/memccpy.3:39 build/C/man3/memchr.3:54 build/C/man3/memcmp.3:39
118 #: build/C/man3/memcpy.3:39 build/C/man3/memfrob.3:40 build/C/man3/memmem.3:41
119 #: build/C/man3/memmove.3:39 build/C/man3/mempcpy.3:27
120 #: build/C/man3/memset.3:39 build/C/man3/stpcpy.3:53 build/C/man3/stpncpy.3:42
121 #: build/C/man3/strcasecmp.3:41 build/C/man3/strcat.3:43
122 #: build/C/man3/strchr.3:49 build/C/man3/strcmp.3:43 build/C/man3/strcoll.3:39
123 #: build/C/man3/strcpy.3:46 build/C/man3/strdup.3:77
124 #: build/C/man3/strerror.3:72 build/C/man3/strfry.3:41
125 #: build/C/man3/string.3:204 build/C/man3/strlen.3:39
126 #: build/C/man3/strnlen.3:41 build/C/man3/strpbrk.3:39
127 #: build/C/man3/strsep.3:50 build/C/man3/strsignal.3:60
128 #: build/C/man3/strspn.3:41 build/C/man3/strstr.3:48 build/C/man3/strtok.3:54
129 #: build/C/man3/strverscmp.3:36 build/C/man3/strxfrm.3:39
135 #: build/C/man3/bcmp.3:56
137 "The B<bcmp>() function compares the two byte sequences I<s1> and I<s2> of "
138 "length I<n> each. If they are equal, and in particular if I<n> is zero, "
139 "B<bcmp>() returns 0. Otherwise, it returns a nonzero result."
141 "B<bcmp>() は、2 つのバイト列 I<s1> と I<s2> の先頭 I<n> バイトを 比較する。"
142 "2 つが等しいか、特に I<n> が 0 の場合 B<bcmp>() は 0 を返す。 さもなければ "
146 #: build/C/man3/bcmp.3:56 build/C/man3/bcopy.3:52 build/C/man3/bzero.3:48
147 #: build/C/man3/ffs.3:87 build/C/man3/index.3:55 build/C/man3/memccpy.3:55
148 #: build/C/man3/memchr.3:105 build/C/man3/memcmp.3:45 build/C/man3/memcpy.3:48
149 #: build/C/man3/memfrob.3:53 build/C/man3/memmem.3:54
150 #: build/C/man3/memmove.3:57 build/C/man3/mempcpy.3:53
151 #: build/C/man3/memset.3:49 build/C/man3/stpcpy.3:63 build/C/man3/stpncpy.3:82
152 #: build/C/man3/strcasecmp.3:63 build/C/man3/strcat.3:123
153 #: build/C/man3/strchr.3:81 build/C/man3/strcmp.3:66 build/C/man3/strcoll.3:58
154 #: build/C/man3/strcpy.3:108 build/C/man3/strdup.3:111
155 #: build/C/man3/strerror.3:160 build/C/man3/strfry.3:52
156 #: build/C/man3/strlen.3:45 build/C/man3/strnlen.3:58
157 #: build/C/man3/strpbrk.3:47 build/C/man3/strsep.3:73
158 #: build/C/man3/strsignal.3:77 build/C/man3/strspn.3:57
159 #: build/C/man3/strstr.3:62 build/C/man3/strtok.3:162
160 #: build/C/man3/strverscmp.3:81 build/C/man3/strxfrm.3:62
166 #: build/C/man3/bcmp.3:61
168 "The B<bcmp>() function returns 0 if the byte sequences are equal, otherwise "
169 "a nonzero result is returned."
170 msgstr "バイト列が等しい場合は 0 、等しくない場合は 0 以外を返す。"
173 #: build/C/man3/bcmp.3:61 build/C/man3/bcopy.3:54 build/C/man3/bzero.3:50
174 #: build/C/man3/ffs.3:91 build/C/man3/index.3:62 build/C/man3/memccpy.3:70
175 #: build/C/man3/memchr.3:124 build/C/man3/memcmp.3:60 build/C/man3/memcpy.3:52
176 #: build/C/man3/memfrob.3:58 build/C/man3/memmem.3:59
177 #: build/C/man3/memmove.3:62 build/C/man3/mempcpy.3:60
178 #: build/C/man3/memset.3:54 build/C/man3/stpcpy.3:71 build/C/man3/stpncpy.3:91
179 #: build/C/man3/strcat.3:130 build/C/man3/strchr.3:107
180 #: build/C/man3/strcmp.3:79 build/C/man3/strcpy.3:116
181 #: build/C/man3/strerror.3:202 build/C/man3/strlen.3:50
182 #: build/C/man3/strnlen.3:71 build/C/man3/strpbrk.3:56
183 #: build/C/man3/strsep.3:79 build/C/man3/strspn.3:74 build/C/man3/strstr.3:65
184 #: build/C/man3/strtok.3:169
190 #: build/C/man3/bcmp.3:62 build/C/man3/bcopy.3:55 build/C/man3/bzero.3:51
191 #: build/C/man3/ffs.3:92 build/C/man3/index.3:63 build/C/man3/memccpy.3:71
192 #: build/C/man3/memchr.3:125 build/C/man3/memcmp.3:61 build/C/man3/memcpy.3:53
193 #: build/C/man3/memfrob.3:59 build/C/man3/memmem.3:60
194 #: build/C/man3/memmove.3:63 build/C/man3/mempcpy.3:61
195 #: build/C/man3/memset.3:55 build/C/man3/stpcpy.3:72 build/C/man3/stpncpy.3:92
196 #: build/C/man3/strcat.3:131 build/C/man3/strchr.3:108
197 #: build/C/man3/strcmp.3:80 build/C/man3/strcpy.3:117
198 #: build/C/man3/strerror.3:203 build/C/man3/strlen.3:51
199 #: build/C/man3/strnlen.3:72 build/C/man3/strpbrk.3:57
200 #: build/C/man3/strsep.3:80 build/C/man3/strspn.3:75 build/C/man3/strstr.3:66
201 #: build/C/man3/strtok.3:170
203 msgid "Multithreading (see pthreads(7))"
204 msgstr "マルチスレッディング (pthreads(7) 参照)"
207 #: build/C/man3/bcmp.3:66
208 msgid "The B<bcmp>() function is thread-safe."
209 msgstr "B<bcmp>() 関数はスレッドセーフである。"
212 #: build/C/man3/bcmp.3:66 build/C/man3/bcopy.3:59 build/C/man3/bzero.3:55
213 #: build/C/man3/ffs.3:99 build/C/man3/index.3:69 build/C/man3/memccpy.3:75
214 #: build/C/man3/memchr.3:132 build/C/man3/memcmp.3:65 build/C/man3/memcpy.3:57
215 #: build/C/man3/memfrob.3:63 build/C/man3/memmem.3:64
216 #: build/C/man3/memmove.3:67 build/C/man3/mempcpy.3:67
217 #: build/C/man3/memset.3:59 build/C/man3/stpcpy.3:76 build/C/man3/stpncpy.3:96
218 #: build/C/man3/strcasecmp.3:76 build/C/man3/strcat.3:137
219 #: build/C/man3/strchr.3:115 build/C/man3/strcmp.3:86
220 #: build/C/man3/strcoll.3:69 build/C/man3/strcpy.3:123
221 #: build/C/man3/strdup.3:123 build/C/man3/strerror.3:216
222 #: build/C/man3/strfry.3:57 build/C/man3/strlen.3:55 build/C/man3/strnlen.3:76
223 #: build/C/man3/strpbrk.3:61 build/C/man3/strsep.3:84
224 #: build/C/man3/strsignal.3:84 build/C/man3/strspn.3:81
225 #: build/C/man3/strstr.3:77 build/C/man3/strtok.3:178
226 #: build/C/man3/strverscmp.3:90 build/C/man3/strxfrm.3:76
228 msgid "CONFORMING TO"
232 #: build/C/man3/bcmp.3:73
234 "4.3BSD. This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
235 "B<memcmp>(3) in new programs. POSIX.1-2008 removes the specification of "
238 "4.3BSD. この関数は廃止予定である (POSIX.1-2001 では 過去の名残 (LEGACY) とさ"
239 "れている)。新しいプログラムでは B<memcmp>(3) を使うべきである。 "
240 "POSIX.1-2008 では B<bcmp>() の仕様が削除されている。"
243 #: build/C/man3/bcmp.3:73 build/C/man3/bcopy.3:73 build/C/man3/bstring.3:82
244 #: build/C/man3/bzero.3:62 build/C/man3/ffs.3:111 build/C/man3/index.3:80
245 #: build/C/man3/memccpy.3:77 build/C/man3/memchr.3:144
246 #: build/C/man3/memcmp.3:67 build/C/man3/memcpy.3:59 build/C/man3/memfrob.3:68
247 #: build/C/man3/memmem.3:88 build/C/man3/memmove.3:69
248 #: build/C/man3/mempcpy.3:80 build/C/man3/memset.3:61
249 #: build/C/man3/stpcpy.3:115 build/C/man3/stpncpy.3:100
250 #: build/C/man3/strcasecmp.3:92 build/C/man3/strcat.3:176
251 #: build/C/man3/strchr.3:122 build/C/man3/strcmp.3:88
252 #: build/C/man3/strcoll.3:80 build/C/man3/strcpy.3:226
253 #: build/C/man3/strdup.3:133 build/C/man3/strerror.3:248
254 #: build/C/man3/strfry.3:62 build/C/man3/string.3:208 build/C/man3/strlen.3:57
255 #: build/C/man3/strnlen.3:78 build/C/man3/strpbrk.3:63
256 #: build/C/man3/strsep.3:104 build/C/man3/strsignal.3:87
257 #: build/C/man3/strspn.3:83 build/C/man3/strstr.3:96 build/C/man3/strtok.3:268
258 #: build/C/man3/strverscmp.3:92 build/C/man3/strxfrm.3:88
264 #: build/C/man3/bcmp.3:80
266 "B<memcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), "
267 "B<strncasecmp>(3), B<strncmp>(3)"
269 "B<memcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), "
270 "B<strncasecmp>(3), B<strncmp>(3)"
273 #: build/C/man3/bcmp.3:80 build/C/man3/bcopy.3:79 build/C/man3/bstring.3:94
274 #: build/C/man3/bzero.3:65 build/C/man3/ffs.3:113 build/C/man3/index.3:90
275 #: build/C/man3/memccpy.3:83 build/C/man3/memchr.3:155
276 #: build/C/man3/memcmp.3:75 build/C/man3/memcpy.3:67 build/C/man3/memfrob.3:70
277 #: build/C/man3/memmem.3:90 build/C/man3/memmove.3:76
278 #: build/C/man3/mempcpy.3:85 build/C/man3/memset.3:65
279 #: build/C/man3/stpcpy.3:124 build/C/man3/stpncpy.3:103
280 #: build/C/man3/strcasecmp.3:101 build/C/man3/strcat.3:185
281 #: build/C/man3/strchr.3:135 build/C/man3/strcmp.3:98
282 #: build/C/man3/strcoll.3:88 build/C/man3/strcpy.3:237
283 #: build/C/man3/strdup.3:141 build/C/man3/strerror.3:255
284 #: build/C/man3/strfry.3:65 build/C/man3/string.3:233 build/C/man3/strlen.3:62
285 #: build/C/man3/strnlen.3:80 build/C/man3/strpbrk.3:74
286 #: build/C/man3/strsep.3:114 build/C/man3/strsignal.3:90
287 #: build/C/man3/strspn.3:95 build/C/man3/strstr.3:108
288 #: build/C/man3/strtok.3:279 build/C/man3/strverscmp.3:97
289 #: build/C/man3/strxfrm.3:96
295 #: build/C/man3/bcmp.3:88 build/C/man3/bcopy.3:87 build/C/man3/bstring.3:102
296 #: build/C/man3/bzero.3:73 build/C/man3/ffs.3:121 build/C/man3/index.3:98
297 #: build/C/man3/memccpy.3:91 build/C/man3/memchr.3:163
298 #: build/C/man3/memcmp.3:83 build/C/man3/memcpy.3:75 build/C/man3/memfrob.3:78
299 #: build/C/man3/memmem.3:98 build/C/man3/memmove.3:84
300 #: build/C/man3/mempcpy.3:93 build/C/man3/memset.3:73
301 #: build/C/man3/stpcpy.3:132 build/C/man3/stpncpy.3:111
302 #: build/C/man3/strcasecmp.3:109 build/C/man3/strcat.3:193
303 #: build/C/man3/strchr.3:143 build/C/man3/strcmp.3:106
304 #: build/C/man3/strcoll.3:96 build/C/man3/strcpy.3:245
305 #: build/C/man3/strdup.3:149 build/C/man3/strerror.3:263
306 #: build/C/man3/strfry.3:73 build/C/man3/string.3:241 build/C/man3/strlen.3:70
307 #: build/C/man3/strnlen.3:88 build/C/man3/strpbrk.3:82
308 #: build/C/man3/strsep.3:122 build/C/man3/strsignal.3:98
309 #: build/C/man3/strspn.3:103 build/C/man3/strstr.3:116
310 #: build/C/man3/strtok.3:287 build/C/man3/strverscmp.3:105
311 #: build/C/man3/strxfrm.3:104
313 "This page is part of release 3.68 of the Linux I<man-pages> project. A "
314 "description of the project, information about reporting bugs, and the latest "
315 "version of this page, can be found at \\%http://www.kernel.org/doc/man-"
318 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.68 の一部\n"
319 "である。プロジェクトの説明とバグ報告に関する情報は\n"
320 "http://www.kernel.org/doc/man-pages/ に書かれている。"
323 #: build/C/man3/bcopy.3:33
329 #: build/C/man3/bcopy.3:33 build/C/man3/bzero.3:31
335 #: build/C/man3/bcopy.3:36
336 msgid "bcopy - copy byte sequence"
337 msgstr "bcopy - バイト列をコピーする"
340 #: build/C/man3/bcopy.3:41 build/C/man3/bstring.3:43
342 msgid "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, size_t >I<n>B<);>\n"
343 msgstr "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, size_t >I<n>B<);>\n"
346 #: build/C/man3/bcopy.3:52
348 "The B<bcopy>() function copies I<n> bytes from I<src> to I<dest>. The "
349 "result is correct, even when both areas overlap."
351 "B<bcopy>() は I<src> から先頭 I<n> バイトを I<dest> にコピーする。 領域が重"
352 "なっていても、結果は正しいものである。"
355 #: build/C/man3/bcopy.3:54 build/C/man3/bzero.3:50
360 #: build/C/man3/bcopy.3:59
361 msgid "The B<bcopy>() function is thread-safe."
362 msgstr "B<bcopy>() 関数はスレッドセーフである。"
365 #: build/C/man3/bcopy.3:73
367 "4.3BSD. This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
368 "B<memcpy>(3) or B<memmove>(3) in new programs. Note that the first two "
369 "arguments are interchanged for B<memcpy>(3) and B<memmove>(3). "
370 "POSIX.1-2008 removes the specification of B<bcopy>()."
372 "4.3BSD. この関数は廃止予定である (POSIX.1-2001 では 過去の名残 (LEGACY) とさ"
373 "れている)。新しいプログラムでは B<memcpy>() や B<memmove>() を使用すべきで"
374 "ある。 B<memcpy>() や B<memmove>() では、最初の 2 つの引数の順序が入れ替"
375 "わっていることに注意すること。 POSIX.1-2008 では、 B<bcopy>() の仕様が削除さ"
379 #: build/C/man3/bcopy.3:79
380 msgid "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
382 "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
385 #: build/C/man3/bstring.3:32
391 #: build/C/man3/bstring.3:32
393 #| msgid "2014-05-21"
398 #: build/C/man3/bstring.3:36
400 "bcmp, bcopy, bzero, memccpy, memchr, memcmp, memcpy, memfrob, memmem, "
401 "memmove, memset - byte string operations"
403 "bcmp, bcopy, bzero, memccpy, memchr, memcmp, memcpy, memfrob, memmem, "
404 "memmove, memset - バイト列の操作を行なう"
407 #: build/C/man3/bstring.3:39 build/C/man3/ffs.3:43 build/C/man3/memccpy.3:36
408 #: build/C/man3/memchr.3:38 build/C/man3/memcmp.3:36 build/C/man3/memcpy.3:36
409 #: build/C/man3/memmove.3:36 build/C/man3/mempcpy.3:18
410 #: build/C/man3/memset.3:36 build/C/man3/stpcpy.3:31 build/C/man3/stpncpy.3:20
411 #: build/C/man3/strcat.3:38 build/C/man3/strchr.3:39 build/C/man3/strcmp.3:38
412 #: build/C/man3/strcoll.3:36 build/C/man3/strcpy.3:41 build/C/man3/strdup.3:37
413 #: build/C/man3/strerror.3:45 build/C/man3/strfry.3:38
414 #: build/C/man3/strlen.3:36 build/C/man3/strnlen.3:19
415 #: build/C/man3/strpbrk.3:36 build/C/man3/strsep.3:39
416 #: build/C/man3/strsignal.3:36 build/C/man3/strspn.3:36
417 #: build/C/man3/strstr.3:39 build/C/man3/strstr.3:45 build/C/man3/strtok.3:38
418 #: build/C/man3/strverscmp.3:33 build/C/man3/strxfrm.3:36
420 msgid "B<#include E<lt>string.hE<gt>>\n"
421 msgstr "B<#include E<lt>string.hE<gt>>\n"
424 #: build/C/man3/bstring.3:45 build/C/man3/bzero.3:39
426 msgid "B<void bzero(void *>I<s>B<, size_t >I<n>B<);>\n"
427 msgstr "B<void bzero(void *>I<s>B<, size_t >I<n>B<);>\n"
430 #: build/C/man3/bstring.3:47 build/C/man3/memccpy.3:38
432 msgid "B<void *memccpy(void *>I<dest>B<, const void *>I<src>B<, int >I<c>B<, size_t >I<n>B<);>\n"
433 msgstr "B<void *memccpy(void *>I<dest>B<, const void *>I<src>B<, int >I<c>B<, size_t >I<n>B<);>\n"
436 #: build/C/man3/bstring.3:49 build/C/man3/memchr.3:40
438 msgid "B<void *memchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
439 msgstr "B<void *memchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
442 #: build/C/man3/bstring.3:51 build/C/man3/memcmp.3:38
444 msgid "B<int memcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
445 msgstr "B<int memcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
448 #: build/C/man3/bstring.3:53 build/C/man3/memcpy.3:38
450 msgid "B<void *memcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
451 msgstr "B<void *memcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
454 #: build/C/man3/bstring.3:55 build/C/man3/memfrob.3:39
456 msgid "B<void *memfrob(void *>I<s>B<, size_t >I<n>B<);>\n"
457 msgstr "B<void *memfrob(void *>I<s>B<, size_t >I<n>B<);>\n"
460 #: build/C/man3/bstring.3:58
463 "B<void *memmem(const void *>I<needle>B<, size_t >I<needlelen>B<,>\n"
464 "B< const void *>I<haystack>B<, size_t >I<haystacklen>B<);>\n"
466 "B<void *memmem(const void *>I<needle>B<, size_t >I<needlelen>B<,>\n"
467 "B< const void *>I<haystack>B<, size_t >I<haystacklen>B<);>\n"
470 #: build/C/man3/bstring.3:60 build/C/man3/memmove.3:38
472 msgid "B<void *memmove(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
473 msgstr "B<void *memmove(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
476 #: build/C/man3/bstring.3:62 build/C/man3/memset.3:38
478 msgid "B<void *memset(void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
479 msgstr "B<void *memset(void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
482 #: build/C/man3/bstring.3:68
484 "The byte string functions perform operations on strings (byte arrays) that "
485 "are not necessarily null-terminated. See the individual man pages for "
486 "descriptions of each function."
488 "これらの関数はヌル終端する必要のない文字列 (バイト配列) の操作を行う。 関数の"
489 "詳しい説明は、それぞれの man ページを参照すること。"
492 #: build/C/man3/bstring.3:68 build/C/man3/ffs.3:108
493 #: build/C/man3/strcasecmp.3:78 build/C/man3/strcat.3:139
494 #: build/C/man3/strcoll.3:71 build/C/man3/strcpy.3:125
495 #: build/C/man3/strsep.3:86 build/C/man3/strxfrm.3:78
500 #. The old functions are not even available on some non-GNU/Linux systems.
502 #: build/C/man3/bstring.3:82
504 "The functions B<bcmp>(), B<bcopy>() and B<bzero>() are obsolete. Use "
505 "B<memcmp>(), B<memcpy>() and B<memset>() instead."
507 "B<bcmp>(), B<bcopy>(), B<bzero>() 関数は古いものである。代わりに "
508 "B<memcmp>(), B<memcpy>() B<memset>() を使うこと。"
511 #: build/C/man3/bstring.3:94
513 "B<bcmp>(3), B<bcopy>(3), B<bzero>(3), B<memccpy>(3), B<memchr>(3), "
514 "B<memcmp>(3), B<memcpy>(3), B<memfrob>(3), B<memmem>(3), B<memmove>(3), "
517 "B<bcmp>(3), B<bcopy>(3), B<bzero>(3), B<memccpy>(3), B<memchr>(3), "
518 "B<memcmp>(3), B<memcpy>(3), B<memfrob>(3), B<memmem>(3), B<memmove>(3), "
522 #: build/C/man3/bzero.3:31
528 #: build/C/man3/bzero.3:34
529 msgid "bzero - write zero-valued bytes"
530 msgstr "bzero - 値 0 のバイトで埋める"
533 #: build/C/man3/bzero.3:48
535 "The B<bzero>() function sets the first I<n> bytes of the area starting at "
536 "I<s> to zero (bytes containing \\(aq\\e0\\(aq)."
538 "B<bzero>() 関数は バイト列 I<s> から始まる領域の先頭 I<n> バイトを 数値ゼロ "
539 "(値が \\(aq\\e0\\(aq のバイト) で埋める。"
542 #: build/C/man3/bzero.3:55
543 msgid "The B<bzero>() function is thread-safe."
544 msgstr "B<bzero>() 関数はスレッドセーフである。"
547 #: build/C/man3/bzero.3:62
549 "4.3BSD. This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
550 "B<memset>(3) in new programs. POSIX.1-2008 removes the specification of "
553 "4.3BSD. この関数は廃止予定である (POSIX.1-2001 では 過去の名残 (LEGACY) とさ"
554 "れている)。新しいプログラムでは B<memset>(3) を使用すべきである。 "
555 "POSIX.1-2008 では B<bzero>() の仕様が削除されている。"
558 #: build/C/man3/bzero.3:65
559 msgid "B<memset>(3), B<swab>(3)"
560 msgstr "B<memset>(3), B<swab>(3)"
563 #: build/C/man3/ffs.3:33
569 #: build/C/man3/ffs.3:33
575 #: build/C/man3/ffs.3:33 build/C/man3/index.3:31 build/C/man3/memccpy.3:30
576 #: build/C/man3/memfrob.3:30 build/C/man3/memmem.3:30
577 #: build/C/man3/memmove.3:30 build/C/man3/mempcpy.3:10
578 #: build/C/man3/memset.3:30 build/C/man3/stpcpy.3:25 build/C/man3/stpncpy.3:14
579 #: build/C/man3/strcat.3:32 build/C/man3/strchr.3:33 build/C/man3/strcoll.3:30
580 #: build/C/man3/strcpy.3:35 build/C/man3/strdup.3:31 build/C/man3/strfry.3:30
581 #: build/C/man3/strlen.3:30 build/C/man3/strnlen.3:13 build/C/man3/strsep.3:33
582 #: build/C/man3/strsignal.3:30 build/C/man3/strstr.3:33
583 #: build/C/man3/strtok.3:32 build/C/man3/strverscmp.3:25
584 #: build/C/man3/strxfrm.3:30
590 #: build/C/man3/ffs.3:36
591 msgid "ffs, ffsl, ffsll - find first bit set in a word"
592 msgstr "ffs, ffsl, ffsll - ワードの中で最初にセットされているビットの検出"
595 #: build/C/man3/ffs.3:41
597 msgid "B<int ffs(int >I<i>B<);>\n"
598 msgstr "B<int ffs(int >I<i>B<);>\n"
601 #: build/C/man3/ffs.3:45
603 msgid "B<int ffsl(long int >I<i>B<);>\n"
604 msgstr "B<int ffsl(long int >I<i>B<);>\n"
607 #: build/C/man3/ffs.3:47
609 msgid "B<int ffsll(long long int >I<i>B<);>\n"
610 msgstr "B<int ffsll(long long int >I<i>B<);>\n"
613 #: build/C/man3/ffs.3:52 build/C/man3/memchr.3:49 build/C/man3/stpcpy.3:38
614 #: build/C/man3/stpncpy.3:27 build/C/man3/strdup.3:50
615 #: build/C/man3/strerror.3:60 build/C/man3/strnlen.3:26
616 #: build/C/man3/strsep.3:46 build/C/man3/strsignal.3:45
617 #: build/C/man3/strtok.3:47
619 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
620 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7) 参照):"
623 #: build/C/man3/ffs.3:57
628 #: build/C/man3/ffs.3:58
630 msgid "Since glibc 2.12:"
631 msgstr "glibc 2.10 以降:"
634 #: build/C/man3/ffs.3:62
636 "_SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L || "
637 "_XOPEN_SOURCE\\ E<gt>=\\ 700 ||"
639 "_SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L || "
640 "_XOPEN_SOURCE\\ E<gt>=\\ 700 ||"
643 #: build/C/man3/ffs.3:62
645 msgid "Before glibc 2.12:"
646 msgstr "glibc 2.10 より前:"
649 #: build/C/man3/ffs.3:65
654 #: build/C/man3/ffs.3:69
655 msgid "B<ffsl>(), B<ffsll>():"
656 msgstr "B<ffsl>(), B<ffsll>():"
659 #: build/C/man3/ffs.3:71 build/C/man3/stpcpy.3:50 build/C/man3/stpncpy.3:39
660 #: build/C/man3/strdup.3:70 build/C/man3/strnlen.3:38
661 #: build/C/man3/strsignal.3:57
666 #: build/C/man3/ffs.3:87
668 "The B<ffs>() function returns the position of the first (least significant) "
669 "bit set in the word I<i>. The least significant bit is position 1 and the "
670 "most significant position is, for example, 32 or 64. The functions "
671 "B<ffsll>() and B<ffsl>() do the same but take arguments of possibly "
674 "B<ffs>() 関数は、ワード I<i> の中で最初にセットされている (最下位)ビットの位"
675 "置を返す。 最下位ビットの位置は 1、最上位ビットの位置は例えば 32 や 64 であ"
676 "る。 B<ffsll>() 関数と B<ffsl>() 関数も同様だが、 異なったサイズの引数をと"
680 #: build/C/man3/ffs.3:91
682 "These functions return the position of the first bit set, or 0 if no bits "
685 "これらの関数は、最初にセットされているビットの位置を返し、 I<i> のどのビット"
686 "もセットされていなければ 0 を返す。"
689 #: build/C/man3/ffs.3:99
690 msgid "The B<ffs>(), B<ffsl>(), and B<ffsll>() functions are thread-safe."
691 msgstr "関数 B<ffs>(), B<ffsl>(), B<ffsll>() はスレッドセーフである。"
694 #: build/C/man3/ffs.3:102
695 msgid "B<ffs>(): 4.3BSD, POSIX.1-2001."
696 msgstr "B<ffs>(): 4.3BSD, POSIX.1-2001."
699 #: build/C/man3/ffs.3:108
700 msgid "The B<ffsl>() and B<ffsll>() functions are glibc extensions."
701 msgstr "関数 B<ffsl>() と B<ffsll>() は glibc による拡張である。"
704 #: build/C/man3/ffs.3:111
705 msgid "BSD systems have a prototype in I<E<lt>string.hE<gt>>."
706 msgstr "BSD システムでは I<E<lt>string.hE<gt>> にプロトタイプがある。"
709 #: build/C/man3/ffs.3:113
711 msgstr "B<memchr>(3)"
714 #: build/C/man3/index.3:31
720 #: build/C/man3/index.3:31
726 #: build/C/man3/index.3:34
727 msgid "index, rindex - locate character in string"
728 msgstr "index, rindex - 文字列中の文字の位置を示す"
731 #: build/C/man3/index.3:39
733 msgid "B<char *index(const char *>I<s>B<, int >I<c>B<);>\n"
734 msgstr "B<char *index(const char *>I<s>B<, int >I<c>B<);>\n"
737 #: build/C/man3/index.3:41
739 msgid "B<char *rindex(const char *>I<s>B<, int >I<c>B<);>\n"
740 msgstr "B<char *rindex(const char *>I<s>B<, int >I<c>B<);>\n"
743 #: build/C/man3/index.3:47
745 "The B<index>() function returns a pointer to the first occurrence of the "
746 "character I<c> in the string I<s>."
748 "B<index>() 関数は、文字列 I<s> 中に最初に文字 I<c> が 現れた位置へのポインタ"
752 #: build/C/man3/index.3:52
754 "The B<rindex>() function returns a pointer to the last occurrence of the "
755 "character I<c> in the string I<s>."
757 "B<rindex>() 関数は、文字列 I<s> 中に最後に文字 I<c> が 現れた位置へのポイン"
761 #: build/C/man3/index.3:55
763 "The terminating null byte (\\(aq\\e0\\(aq) is considered to be a part of the "
766 "文字列を終端するヌルバイト (\\(aq\\e0\\(aq) は、文字列の一部とみなされる。"
769 #: build/C/man3/index.3:62
771 "The B<index>() and B<rindex>() functions return a pointer to the matched "
772 "character or NULL if the character is not found."
774 "B<index>() と B<rindex>() 関数は、一致した文字へのポインタか、 もし文字が見"
778 #: build/C/man3/index.3:69
779 msgid "The B<index>() and B<rindex>() functions are thread-safe."
780 msgstr "関数 B<index>() と B<rindex>() はスレッドセーフである。"
783 #: build/C/man3/index.3:80
785 "4.3BSD; marked as LEGACY in POSIX.1-2001. POSIX.1-2008 removes the "
786 "specifications of B<index>() and B<rindex>(), recommending B<strchr>(3) "
787 "and B<strrchr>(3) instead."
789 "4.3BSD; POSIX.1-2001 では「過去の名残 (LEGACY)」と位置付けられている。 "
790 "POSIX.1-2008 では B<index>() と B<rindex>() の仕様が削除されている。 代わり"
791 "に、 B<strchr>(3) と B<strrchr>(3) の使用が推奨されている。"
794 #: build/C/man3/index.3:90
796 "B<memchr>(3), B<strchr>(3), B<string>(3), B<strpbrk>(3), B<strrchr>(3), "
797 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
799 "B<memchr>(3), B<strchr>(3), B<string>(3), B<strpbrk>(3), B<strrchr>(3), "
800 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
803 #: build/C/man3/memccpy.3:30
809 #: build/C/man3/memccpy.3:30 build/C/man3/memchr.3:32
815 #: build/C/man3/memccpy.3:33
816 msgid "memccpy - copy memory area"
817 msgstr "memccpy - メモリ領域をコピーする"
820 #: build/C/man3/memccpy.3:53
822 "The B<memccpy>() function copies no more than I<n> bytes from memory area "
823 "I<src> to memory area I<dest>, stopping when the character I<c> is found."
825 "B<memccpy>() は、メモリ領域 I<src> からメモリ領域 I<dest> に 最大で I<n> バ"
826 "イトのコピーを行う。 I<n> バイトコピーする前に文字 I<c> が見つかると、 そこで"
830 #: build/C/man3/memccpy.3:55
831 msgid "If the memory areas overlap, the results are undefined."
832 msgstr "コピー元とコピー先のメモリ領域が重なっている場合、 結果は不定である。"
835 #: build/C/man3/memccpy.3:70
837 "The B<memccpy>() function returns a pointer to the next character in "
838 "I<dest> after I<c>, or NULL if I<c> was not found in the first I<n> "
839 "characters of I<src>."
841 "B<memccpy>() は、I<dest> 中に見つかった I<c> の 次にあるキャラクター型の変数"
842 "を指すポインタを返す。 見つからなかった場合、NULL を返す。"
845 #: build/C/man3/memccpy.3:75
846 msgid "The B<memccpy>() function is thread-safe."
847 msgstr "B<memccpy>() 関数はスレッドセーフである。"
850 #: build/C/man3/memccpy.3:77
851 msgid "SVr4, 4.3BSD, POSIX.1-2001."
852 msgstr "SVr4, 4.3BSD, POSIX.1-2001."
855 #: build/C/man3/memccpy.3:83
856 msgid "B<bcopy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
857 msgstr "B<bcopy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
860 #: build/C/man3/memchr.3:32
866 #: build/C/man3/memchr.3:35
867 msgid "memchr, memrchr, rawmemchr - scan memory for a character"
868 msgstr "memchr, memrchr, rawmemchr - 文字を探すためにメモリをスキャンする"
871 #: build/C/man3/memchr.3:42
873 msgid "B<void *memrchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
874 msgstr "B<void *memrchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
877 #: build/C/man3/memchr.3:44
879 msgid "B<void *rawmemchr(const void *>I<s>B<, int >I<c>B<);>\n"
880 msgstr "B<void *rawmemchr(const void *>I<s>B<, int >I<c>B<);>\n"
883 #: build/C/man3/memchr.3:54
884 msgid "B<memrchr>(), B<rawmemchr>(): _GNU_SOURCE"
885 msgstr "B<memrchr>(): B<rawmemchr>(): _GNU_SOURCE"
888 #: build/C/man3/memchr.3:70
890 "The B<memchr>() function scans the initial I<n> bytes of the memory area "
891 "pointed to by I<s> for the first instance of I<c>. Both I<c> and the bytes "
892 "of the memory area pointed to by I<s> are interpreted as I<unsigned char>."
894 "B<memchr>() 関数は、ポインタ I<s> が指し示すメモリ領域の先頭の\n"
895 "I<n> バイトから最初に登場する文字 I<c> を探す。\n"
896 "I<c> と I<s> が指し示すメモリ領域の各バイトは両方とも\n"
897 "I<unsigned char> と解釈される。"
900 #: build/C/man3/memchr.3:81
902 "The B<memrchr>() function is like the B<memchr>() function, except that it "
903 "searches backward from the end of the I<n> bytes pointed to by I<s> instead "
904 "of forward from the beginning."
906 "B<memrchr>() 関数は B<memchr>() 関数に似ているが、 先頭から順方向に探すので"
907 "はなく、 ポインタ I<s> が指し示す I<n> バイトのメモリブロックの 末尾から逆向"
911 #: build/C/man3/memchr.3:99
913 "The B<rawmemchr>() function is similar to B<memchr>(): it assumes (i.e., "
914 "the programmer knows for certain) that an instance of I<c> lies somewhere "
915 "in the memory area starting at the location pointed to by I<s>, and so "
916 "performs an optimized search for I<c> (i.e., no use of a count argument to "
917 "limit the range of the search). If an instance of I<c> is not found, the "
918 "results are unpredictable. The following call is a fast means of locating a "
919 "string's terminating null byte:"
921 "B<rawmemchr>() 関数は B<memchr>() と同様だが、 I<c> が I<s> が指す場所\n"
922 "から始まるメモリ領域のどこかにあることを前提にして (つまり、プログラマ\n"
923 "はそのことを知っている)、最適化した方法で I<c> の検索を実行する (すなわ\n"
924 "ち、検索範囲の上限を示す引き数も使用されない)。I<c> が見つからなかった\n"
925 "場合、その結果はどうなるか分からない。次に示す呼び出しは、文字列終端の\n"
926 "ヌルバイトの位置を特定する高速な手段である。"
929 #: build/C/man3/memchr.3:103
931 msgid "char *p = rawmemchr(s,\\ \\(aq\\e0\\(aq);\n"
932 msgstr "char *p = rawmemchr(s,\\ \\(aq\\e0\\(aq);\n"
935 #: build/C/man3/memchr.3:113
937 "The B<memchr>() and B<memrchr>() functions return a pointer to the "
938 "matching byte or NULL if the character does not occur in the given memory "
941 "B<memchr>() 関数と B<memrchr>() 関数は一致する文字へのポインタを返し、 もし"
942 "文字が指定メモリ領域に現れない場合は NULL を返す。"
945 #: build/C/man3/memchr.3:118
947 "The B<rawmemchr>() function returns a pointer to the matching byte, if one "
948 "is found. If no matching byte is found, the result is unspecified."
950 "B<rawmemchr>() 関数はマッチするバイトが見つかった場合はマッチしたバイトへの"
951 "ポインタを返す。 マッチするバイトが見つからなかった場合、結果は不定である。"
954 #: build/C/man3/memchr.3:118 build/C/man3/mempcpy.3:57
955 #: build/C/man3/strchr.3:104 build/C/man3/strerror.3:212
961 #: build/C/man3/memchr.3:121
962 msgid "B<rawmemchr>() first appeared in glibc in version 2.1."
963 msgstr "B<rawmemchr>() は glibc バージョン 2.1 で初めて登場した。"
966 #: build/C/man3/memchr.3:124
967 msgid "B<memrchr>() first appeared in glibc in version 2.2."
968 msgstr "B<memrchr>() は glibc バージョン 2.2 で初めて登場した。"
971 #: build/C/man3/memchr.3:132
973 "The B<memchr>(), B<memrchr>(), and B<rawmemchr>() functions are thread-safe."
975 "関数 B<memchr>(), B<memrchr>(), B<rawmemchr>() はスレッドセーフである。"
978 #: build/C/man3/memchr.3:136
980 "The B<memchr>() function conforms to SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
981 msgstr "B<memchr>() 関数は SVr4, 4.3BSD, C89, C99, POSIX.1-2001 に準拠する。"
984 #: build/C/man3/memchr.3:140
986 "The B<memrchr>() function is a GNU extension, available since glibc 2.1.91."
987 msgstr "B<memrchr>() 関数は GNU 拡張であり、glibc 2.1.91 から使用可能である。"
990 #: build/C/man3/memchr.3:144
992 "The B<rawmemchr>() function is a GNU extension, available since glibc 2.1."
993 msgstr "B<rawmemchr>() 関数は GNU 拡張であり、glibc 2.1 から使用可能である。"
996 #: build/C/man3/memchr.3:155
998 "B<ffs>(3), B<index>(3), B<rindex>(3), B<strchr>(3), B<strpbrk>(3), "
999 "B<strrchr>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wmemchr>(3)"
1001 "B<ffs>(3), B<index>(3), B<rindex>(3), B<strchr>(3), B<strpbrk>(3), "
1002 "B<strrchr>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wmemchr>(3)"
1005 #: build/C/man3/memcmp.3:30
1011 #: build/C/man3/memcmp.3:30
1017 #: build/C/man3/memcmp.3:33
1018 msgid "memcmp - compare memory areas"
1019 msgstr "memcmp - メモリ領域を比較する"
1022 #: build/C/man3/memcmp.3:45
1024 "The B<memcmp>() function compares the first I<n> bytes (each interpreted as "
1025 "I<unsigned char>) of the memory areas I<s1> and I<s2>."
1027 "B<memcmp>() 関数は、メモリ領域 I<s1> とI<s2> の最初の I<n> バイトを比較する "
1028 "(各バイトは I<unsigned char> として解釈される)。"
1031 #: build/C/man3/memcmp.3:52
1033 "The B<memcmp>() function returns an integer less than, equal to, or greater "
1034 "than zero if the first I<n> bytes of I<s1> is found, respectively, to be "
1035 "less than, to match, or be greater than the first I<n> bytes of I<s2>."
1037 "B<memcmp>() 関数は、I<s1> の最初の I<n> バイトが I<s2> の最初の I<n> バイト"
1038 "よりも 小さいか、同じか、あるいは大きいかによってそれぞれ、負の整数、0、 正の"
1042 #: build/C/man3/memcmp.3:60
1044 "For a nonzero return value, the sign is determined by the sign of the "
1045 "difference between the first pair of bytes (interpreted as I<unsigned "
1046 "char>) that differ in I<s1> and I<s2>."
1048 "0 でない値の場合、 I<s1> と I<s2> で値が異なった最初のバイトの値の差で符号は"
1049 "決定される (バイトは I<unsigned char> で解釈される)。"
1052 #: build/C/man3/memcmp.3:65
1053 msgid "The B<memcmp>() function is thread-safe."
1054 msgstr "B<memcmp>() 関数はスレッドセーフである。"
1057 #: build/C/man3/memcmp.3:67 build/C/man3/memcpy.3:59 build/C/man3/memmove.3:69
1058 #: build/C/man3/memset.3:61
1059 msgid "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
1060 msgstr "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
1063 #: build/C/man3/memcmp.3:75
1065 "B<bcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), "
1066 "B<strncasecmp>(3), B<strncmp>(3), B<wmemcmp>(3)"
1068 "B<bcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), "
1069 "B<strncasecmp>(3), B<strncmp>(3), B<wmemcmp>(3)"
1072 #: build/C/man3/memcpy.3:30
1078 #: build/C/man3/memcpy.3:30 build/C/man3/memfrob.3:30 build/C/man3/memmem.3:30
1079 #: build/C/man3/memmove.3:30
1085 #: build/C/man3/memcpy.3:33
1086 msgid "memcpy - copy memory area"
1087 msgstr "memcpy - メモリ領域をコピーする。"
1090 #: build/C/man3/memcpy.3:48
1092 "The B<memcpy>() function copies I<n> bytes from memory area I<src> to "
1093 "memory area I<dest>. The memory areas must not overlap. Use B<memmove>(3) "
1094 "if the memory areas do overlap."
1096 "B<memcpy>() はメモリ領域 I<src> の先頭 I<n> バイトを メモリ領域 I<dest> にコ"
1097 "ピーする。コピー元の領域と コピー先の領域が重なってはならない。重なっている場"
1098 "合は B<memmove>(3) を使うこと。"
1101 #: build/C/man3/memcpy.3:52
1102 msgid "The B<memcpy>() function returns a pointer to I<dest>."
1103 msgstr "B<memcpy>() は I<dest> へのポインタを返す。"
1106 #: build/C/man3/memcpy.3:57
1107 msgid "The B<memcpy>() function is thread-safe."
1108 msgstr "B<memcpy>() 関数はスレッドセーフである。"
1111 #: build/C/man3/memcpy.3:67
1113 "B<bcopy>(3), B<memccpy>(3), B<memmove>(3), B<mempcpy>(3), B<strcpy>(3), "
1114 "B<strncpy>(3), B<wmemcpy>(3)"
1116 "B<bcopy>(3), B<memccpy>(3), B<memmove>(3), B<mempcpy>(3), B<strcpy>(3), "
1117 "B<strncpy>(3), B<wmemcpy>(3)"
1120 #: build/C/man3/memfrob.3:30
1126 #: build/C/man3/memfrob.3:33
1127 msgid "memfrob - frobnicate (encrypt) a memory area"
1128 msgstr "memfrob - メモリエリアの操作 (暗号化)"
1131 #: build/C/man3/memfrob.3:37
1134 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
1135 "B<#include E<lt>string.hE<gt>>\n"
1137 "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n"
1138 "B<#include E<lt>string.hE<gt>>\n"
1141 #: build/C/man3/memfrob.3:50
1143 "The B<memfrob>() function encrypts the first I<n> bytes of the memory area "
1144 "I<s> by exclusive-ORing each character with the number 42. The effect can "
1145 "be reversed by using B<memfrob>() on the encrypted memory area."
1147 "B<memfrob>() 関数は、メモリエリア I<s> の最初の I<n> バイトの それぞれの文字"
1148 "を 42 との排他的論理をとることによって暗号化する。 変換後のデータは、暗号化さ"
1149 "れているメモリエリアに (再度) B<memfrob>() 関数を施すことで、元に戻すことが"
1153 #: build/C/man3/memfrob.3:53
1155 "Note that this function is not a proper encryption routine as the XOR "
1156 "constant is fixed, and is suitable only for hiding strings."
1158 "この関数は妥当な暗号化ルーチンであるとは言えないことに注意して欲しい。 XOR を"
1159 "とる定数を固定しているので、せいぜい、文字列を隠す程度の用途にしか向いていな"
1163 #: build/C/man3/memfrob.3:58
1165 "The B<memfrob>() function returns a pointer to the encrypted memory area."
1166 msgstr "B<memfrob>() 関数は、暗号化されたメモリエリアへのポインタを返す。"
1169 #: build/C/man3/memfrob.3:63
1170 msgid "The B<memfrob>() function is thread-safe."
1171 msgstr "B<memfrob>() 関数はスレッドセーフである。"
1174 #: build/C/man3/memfrob.3:68
1175 msgid "The B<memfrob>() function is unique to the GNU C Library."
1176 msgstr "B<memfrob>() 関数は GNU C ライブラリに固有である。"
1179 #: build/C/man3/memfrob.3:70
1180 msgid "B<strfry>(3)"
1181 msgstr "B<strfry>(3)"
1184 #: build/C/man3/memmem.3:30
1190 #: build/C/man3/memmem.3:33
1191 msgid "memmem - locate a substring"
1192 msgstr "memmem - 部分文字列の位置を示す"
1195 #: build/C/man3/memmem.3:37 build/C/man3/strchr.3:46
1198 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
1199 "B<#include E<lt>string.hE<gt>>\n"
1201 "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n"
1202 "B<#include E<lt>string.hE<gt>>\n"
1205 #: build/C/man3/memmem.3:40
1208 "B<void *memmem(const void *>I<haystack>B<, size_t >I<haystacklen>B<,>\n"
1209 "B< const void *>I<needle>B<, size_t >I<needlelen>B<);>\n"
1211 "B<void *memmem(const void *>I<haystack>B<, size_t >I<haystacklen>B<,>\n"
1212 "B< const void *>I<needle>B<, size_t >I<needlelen>B<);>\n"
1215 #: build/C/man3/memmem.3:54
1217 "The B<memmem>() function finds the start of the first occurrence of the "
1218 "substring I<needle> of length I<needlelen> in the memory area I<haystack> of "
1219 "length I<haystacklen>."
1221 "B<memmem>() 関数は、 I<haystacklen> の大きさを持つメモリ領域 I<haystack> の"
1222 "中で I<needlelen> の大きさを持つ部分文字列 I<needle> が 最初に現れる位置を見"
1226 #: build/C/man3/memmem.3:59
1228 "The B<memmem>() function returns a pointer to the beginning of the "
1229 "substring, or NULL if the substring is not found."
1231 "B<memmem>() 関数は、部分文字列の開始を指すポインタを返し、もし部分文字列が "
1232 "見つからない場合は NULL を返す。"
1235 #: build/C/man3/memmem.3:64
1236 msgid "The B<memmem>() function is thread-safe."
1237 msgstr "B<memmem>() 関数はスレッドセーフである。"
1240 #: build/C/man3/memmem.3:66 build/C/man3/mempcpy.3:69
1241 #: build/C/man3/strverscmp.3:92
1242 msgid "This function is a GNU extension."
1243 msgstr "この関数は GNU による拡張である。"
1246 #: build/C/man3/memmem.3:66 build/C/man3/stpcpy.3:85 build/C/man3/strcpy.3:215
1247 #: build/C/man3/strsep.3:95 build/C/man3/strstr.3:84 build/C/man3/strtok.3:185
1253 #: build/C/man3/memmem.3:76
1255 "This function was broken in Linux libraries up to and including libc 5.0.9; "
1256 "there the I<needle> and I<haystack> arguments were interchanged, and a "
1257 "pointer to the end of the first occurrence of I<needle> was returned."
1259 "Linux のライブラリに関していうと、 libc 5.0.9 と それ以前のすべてのバージョン"
1260 "で、この関数は壊れている。 それらのライブラリでは I<needle> と I<haystack> 引"
1261 "数が 入れ替わっており、 I<needle> が最初に出現する部分の最後を 示すポインタが"
1265 #: build/C/man3/memmem.3:88
1267 "Both old and new libc's have the bug that if I<needle> is empty, "
1268 "I<haystack-1> (instead of I<haystack>) is returned. And glibc 2.0 makes it "
1269 "worse, returning a pointer to the last byte of I<haystack>. This is fixed "
1272 "新旧両方の libc ライブラリが、 I<needle> が空の場合 (I<haystack> のかわりに) "
1273 "I<haystack-1>\\ が 返されるというバグを持っている。 そして、glibc 2.0 ではさ"
1274 "らに悪くなっており、 I<haystack> の最後のバイトへのポインタを返す。 これは "
1278 #: build/C/man3/memmem.3:90
1279 msgid "B<strstr>(3)"
1280 msgstr "B<strstr>(3)"
1283 #: build/C/man3/memmove.3:30
1289 #: build/C/man3/memmove.3:33
1290 msgid "memmove - copy memory area"
1291 msgstr "memmove - メモリ領域をコピーする"
1294 #: build/C/man3/memmove.3:57
1296 "The B<memmove>() function copies I<n> bytes from memory area I<src> to "
1297 "memory area I<dest>. The memory areas may overlap: copying takes place as "
1298 "though the bytes in I<src> are first copied into a temporary array that does "
1299 "not overlap I<src> or I<dest>, and the bytes are then copied from the "
1300 "temporary array to I<dest>."
1302 "B<memmove>() は、メモリ領域 I<src> の先頭 I<n> バイトを メモリ領域 I<dest> "
1303 "にコピーする。コピー元とコピー先の 領域が重なっていてもよい。 最初に I<src> "
1304 "のバイトが I<src> とも I<dest> とも重ならない一時的な配列にコピーされてから、"
1305 "一時的な配列から I<dest> にバイトのコピーが行われたかのように、コピーが行われ"
1309 #: build/C/man3/memmove.3:62
1310 msgid "The B<memmove>() function returns a pointer to I<dest>."
1311 msgstr "B<memmove>() は I<dest> へのポインタを返す。"
1314 #: build/C/man3/memmove.3:67
1315 msgid "The B<memmove>() function is thread-safe."
1316 msgstr "B<memmove>() 関数はスレッドセーフである。"
1319 #: build/C/man3/memmove.3:76
1321 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<strncpy>(3), "
1324 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<strncpy>(3), "
1328 #: build/C/man3/mempcpy.3:10
1334 #: build/C/man3/mempcpy.3:10 build/C/man3/memset.3:30
1335 #: build/C/man3/strerror.3:39
1341 #: build/C/man3/mempcpy.3:13
1342 msgid "mempcpy, wmempcpy - copy memory area"
1343 msgstr "mempcpy, wmempcpy - メモリ領域をコピーする"
1346 #: build/C/man3/mempcpy.3:16 build/C/man3/mempcpy.3:22
1347 #: build/C/man3/strfry.3:36 build/C/man3/strstr.3:43
1348 #: build/C/man3/strverscmp.3:31
1350 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
1351 msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n"
1354 #: build/C/man3/mempcpy.3:20
1356 msgid "B<void *mempcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
1357 msgstr "B<void *mempcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
1360 #: build/C/man3/mempcpy.3:24
1362 msgid "B<#include E<lt>wchar.hE<gt>>\n"
1363 msgstr "B<#include E<lt>wchar.hE<gt>>\n"
1366 #: build/C/man3/mempcpy.3:26
1368 msgid "B<wchar_t *wmempcpy(wchar_t *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
1369 msgstr "B<wchar_t *wmempcpy(wchar_t *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
1372 #: build/C/man3/mempcpy.3:42
1374 "The B<mempcpy>() function is nearly identical to the B<memcpy>(3) "
1375 "function. It copies I<n> bytes from the object beginning at I<src> into the "
1376 "object pointed to by I<dest>. But instead of returning the value of I<dest> "
1377 "it returns a pointer to the byte following the last written byte."
1379 "B<mempcpy>() 関数は B<memcpy>(3) 関数とほぼ同一である。 この関数は、 "
1380 "I<src> で始まるオブジェクトから I<n> バイトを、 I<dest> で指されるオブジェク"
1381 "トにコピーする。 ただし I<dest> の値を返すのではなく、 最後に書き込まれたバイ"
1382 "トの後に続くバイトへのポインタを返す。"
1385 #: build/C/man3/mempcpy.3:45
1387 "This function is useful in situations where a number of objects shall be "
1388 "copied to consecutive memory positions."
1390 "この関数はいくつかのオブジェクトが 連続的なメモリの場所にコピーされるような状"
1394 #: build/C/man3/mempcpy.3:53
1396 "The B<wmempcpy>() function is identical but takes I<wchar_t> type arguments "
1397 "and copies I<n> wide characters."
1399 "B<wmempcpy>() 関数はこの関数と同じであるが、 I<wchar_t> 型の引き数をとり、 "
1400 "I<n> ワイド文字列をコピーする。"
1403 #: build/C/man3/mempcpy.3:57
1404 msgid "I<dest> + I<n>."
1405 msgstr "I<dest> + I<n>."
1408 #: build/C/man3/mempcpy.3:60
1409 msgid "B<mempcpy>() first appeared in glibc in version 2.1."
1410 msgstr "B<mempcpy>() は glibc バージョン 2.1 で初めて登場した。"
1413 #: build/C/man3/mempcpy.3:67
1414 msgid "The B<mempcpy>() and B<wmempcpy>() functions are thread-safe."
1415 msgstr "関数 B<mempcpy>() と B<wmempcpy>() はスレッドセーフである。"
1418 #: build/C/man3/mempcpy.3:69 build/C/man3/stpcpy.3:88
1419 #: build/C/man3/strtok.3:201
1425 #: build/C/man3/mempcpy.3:79
1429 "combine(void *o1, size_t s1, void *o2, size_t s2)\n"
1431 " void *result = malloc(s1 + s2);\n"
1432 " if (result != NULL)\n"
1433 " mempcpy(mempcpy(result, o1, s1), o2, s2);\n"
1438 "combine (void *o1, size_t s1, void *o2, size_t s2)\n"
1440 " void *result = malloc(s1 + s2);\n"
1441 " if (result != NULL)\n"
1442 " mempcpy(mempcpy(result, o1, s1), o2, s2);\n"
1446 #: build/C/man3/mempcpy.3:85
1447 msgid "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<wmemcpy>(3)"
1448 msgstr "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<wmemcpy>(3)"
1451 #: build/C/man3/memset.3:30
1457 #: build/C/man3/memset.3:33
1458 msgid "memset - fill memory with a constant byte"
1459 msgstr "memset - ある一定のバイトでメモリ領域を埋める。"
1462 #: build/C/man3/memset.3:49
1464 "The B<memset>() function fills the first I<n> bytes of the memory area "
1465 "pointed to by I<s> with the constant byte I<c>."
1467 "B<memset>() は I<s> で示されるメモリ領域の先頭から I<n> バイトを I<c> で埋め"
1471 #: build/C/man3/memset.3:54
1472 msgid "The B<memset>() function returns a pointer to the memory area I<s>."
1473 msgstr "B<memset>() は I<s> へのポインタを返す。"
1476 #: build/C/man3/memset.3:59
1477 msgid "The B<memset>() function is thread-safe."
1478 msgstr "B<memset>() 関数はスレッドセーフである。"
1481 #: build/C/man3/memset.3:65
1482 msgid "B<bzero>(3), B<swab>(3), B<wmemset>(3)"
1483 msgstr "B<bzero>(3), B<swab>(3), B<wmemset>(3)"
1486 #: build/C/man3/stpcpy.3:25
1492 #: build/C/man3/stpcpy.3:25 build/C/man3/stpncpy.3:14
1493 #: build/C/man3/strcasecmp.3:30
1499 #: build/C/man3/stpcpy.3:28
1500 msgid "stpcpy - copy a string returning a pointer to its end"
1501 msgstr "stpcpy - 文字列をコピーし、コピーした文字列の終りへのポインタを返す"
1504 #: build/C/man3/stpcpy.3:33
1506 msgid "B<char *stpcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
1507 msgstr "B<char *stpcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
1510 #: build/C/man3/stpcpy.3:41
1511 msgid "B<stpcpy>():"
1512 msgstr "B<stpcpy>():"
1515 #: build/C/man3/stpcpy.3:44 build/C/man3/stpncpy.3:33 build/C/man3/strdup.3:64
1516 #: build/C/man3/strnlen.3:32 build/C/man3/strsignal.3:51
1518 msgid "Since glibc 2.10:"
1519 msgstr "glibc 2.10 以降:"
1522 #: build/C/man3/stpcpy.3:47 build/C/man3/stpncpy.3:36
1523 #: build/C/man3/strnlen.3:35 build/C/man3/strsignal.3:54
1524 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1525 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1528 #: build/C/man3/stpcpy.3:47 build/C/man3/stpncpy.3:36 build/C/man3/strdup.3:67
1529 #: build/C/man3/strnlen.3:35 build/C/man3/strsignal.3:54
1531 msgid "Before glibc 2.10:"
1532 msgstr "glibc 2.10 より前:"
1535 #: build/C/man3/stpcpy.3:63
1537 "The B<stpcpy>() function copies the string pointed to by I<src> (including "
1538 "the terminating null byte (\\(aq\\e0\\(aq)) to the array pointed to by "
1539 "I<dest>. The strings may not overlap, and the destination string I<dest> "
1540 "must be large enough to receive the copy."
1542 "B<stpcpy>() 関数は、I<src> で指された文字列を (文字列を終端するヌルバイト "
1543 "(\\(aq\\e0\\(aq) を含めて) I<dest> で指された配列にコピーする。 文字列は重複"
1544 "してはならず、コピー先の文字列 I<dest> はコピーを受け取る のに十分大きくなく"
1548 #: build/C/man3/stpcpy.3:71
1550 "B<stpcpy>() returns a pointer to the B<end> of the string I<dest> (that is, "
1551 "the address of the terminating null byte) rather than the beginning."
1553 "B<stpcpy>() は、文字列 I<dest> の始まりではなく B<終り>を指すポインタ (すな"
1554 "わち、文字列を終端するヌルバイト) を返す。"
1557 #: build/C/man3/stpcpy.3:76
1558 msgid "The B<stpcpy>() function is thread-safe."
1559 msgstr "B<stpcpy>() 関数はスレッドセーフである。"
1562 #: build/C/man3/stpcpy.3:85
1564 "This function was added to POSIX.1-2008. Before that, it was not part of "
1565 "the C or POSIX.1 standards, nor customary on UNIX systems. It first "
1566 "appeared at least as early as 1986, in the Lattice C AmigaDOS compiler, then "
1567 "in the GNU fileutils and GNU textutils in 1989, and in the GNU C library by "
1568 "1992. It is also present on the BSDs."
1570 "この関数は POSIX.1-2008 に追加された。 それ以前は、この関数は C や POSIX.1 標"
1571 "準の一部でも UNIX システムの慣習的なものでもなかった。 この関数は Lattice C "
1572 "AmigaDOS コンパイラで初めて登場し、それは少なくとも 1986 年時点ではそうであっ"
1573 "た。 その後、 1989 年に GNU fileutils と GNU textutils に登場し、 1992 年まで"
1574 "には GNU C ライブラリにも存在していた。 この関数は BSD 系にも存在する。"
1577 #: build/C/man3/stpcpy.3:88
1578 msgid "This function may overrun the buffer I<dest>."
1579 msgstr "この関数はバッファ I<dest> の範囲を行き過ぎてしまう可能性がある。"
1582 #: build/C/man3/stpcpy.3:98
1584 "For example, this program uses B<stpcpy>() to concatenate B<foo> and B<bar> "
1585 "to produce B<foobar>, which it then prints."
1587 "例として、このプログラムは B<foo> と B<bar> を連結して B<foobar> を作るため"
1588 "に B<stpcpy>() を使用し、その後表示する。"
1591 #: build/C/man3/stpcpy.3:103
1594 "#define _GNU_SOURCE\n"
1595 "#include E<lt>string.hE<gt>\n"
1596 "#include E<lt>stdio.hE<gt>\n"
1598 "#define _GNU_SOURCE\n"
1599 "#include E<lt>string.hE<gt>\n"
1600 "#include E<lt>stdio.hE<gt>\n"
1603 #: build/C/man3/stpcpy.3:109
1609 " char buffer[20];\n"
1610 " char *to = buffer;\n"
1615 " char buffer[20];\n"
1616 " char *to = buffer;\n"
1619 #: build/C/man3/stpcpy.3:114
1622 " to = stpcpy(to, \"foo\");\n"
1623 " to = stpcpy(to, \"bar\");\n"
1624 " printf(\"%s\\en\", buffer);\n"
1627 " to = stpcpy(to, \"foo\");\n"
1628 " to = stpcpy(to, \"bar\");\n"
1629 " printf(\"%s\\en\", buffer);\n"
1633 #: build/C/man3/stpcpy.3:124
1635 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpncpy>(3), "
1636 "B<strcpy>(3), B<string>(3), B<wcpcpy>(3)"
1638 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpncpy>(3), "
1639 "B<strcpy>(3), B<string>(3), B<wcpcpy>(3)"
1642 #: build/C/man3/stpncpy.3:14
1648 #: build/C/man3/stpncpy.3:17
1649 msgid "stpncpy - copy a fixed-size string, returning a pointer to its end"
1650 msgstr "stpncpy - 固定長の文字列をコピーして、その最後へのポインターを返す"
1653 #: build/C/man3/stpncpy.3:22
1655 msgid "B<char *stpncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1656 msgstr "B<char *stpncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1659 #: build/C/man3/stpncpy.3:30
1660 msgid "B<stpncpy>():"
1661 msgstr "B<stpncpy>():"
1664 #: build/C/man3/stpncpy.3:74
1666 "The B<stpncpy>() function copies at most I<n> characters from the string "
1667 "pointed to by I<src>, including the terminating null byte (\\(aq\\e0\\(aq), "
1668 "to the array pointed to by I<dest>. Exactly I<n> characters are written at "
1669 "I<dest>. If the length I<strlen(src)> is smaller than I<n>, the remaining "
1670 "characters in the array pointed to by I<dest> are filled with null bytes "
1671 "(\\(aq\\e0\\(aq), If the length I<strlen(src)> is greater than or equal to "
1672 "I<n>, the string pointed to by I<dest> will not be null-terminated."
1674 "B<stpncpy>() 関数は I<src> が指している文字列から終端のヌルバイト (\\(aq"
1675 "\\e0\\(aq) を含めて最大 I<n> バイトを I<dest> にコピーする。長さ "
1676 "I<strlen(src)> が I<n> より小さい場合には I<dest> の残りの 部分にはヌルバイ"
1677 "ト (\\(aq\\e0\\(aq) 文字が埋められる。 長さ I<strlen(src)> が I<n> 以上なら"
1678 "ば、 I<dest> が指す文字列はヌルで終端されていない。"
1681 #: build/C/man3/stpncpy.3:76
1682 msgid "The strings may not overlap."
1683 msgstr "二つの文字列は重なってはならない。"
1686 #: build/C/man3/stpncpy.3:82
1688 "The programmer must ensure that there is room for at least I<n> characters "
1691 "プログラマーは I<dest> に少なくとも I<n> バイトの空きがあることを 保証しなけ"
1695 #: build/C/man3/stpncpy.3:91
1697 "B<stpncpy>() returns a pointer to the terminating null byte in I<dest>, or, "
1698 "if I<dest> is not null-terminated, I<dest>+I<n>."
1700 "B<stpncpy>() は I<dest> の終端のヌルバイトを指すポインターを返すか、 "
1701 "I<dest> がヌルバイトで終端されていない場合には I<dest>+I<n> を返す。"
1704 #: build/C/man3/stpncpy.3:96
1705 msgid "The B<stpncpy>() function is thread-safe."
1706 msgstr "B<stpncpy>() 関数はスレッドセーフである。"
1709 #: build/C/man3/stpncpy.3:100
1711 "This function was added to POSIX.1-2008. Before that, it was a GNU "
1712 "extension. It first appeared in version 1.07 of the GNU C library in 1993."
1714 "この関数は POSIX.1-2008 に追加された。 それ以前は GNU による拡張であった。 こ"
1715 "の関数は 1993 年に GNU C ライブラリのバージョン 1.07 で初めて登場した。"
1718 #: build/C/man3/stpncpy.3:103
1719 msgid "B<strncpy>(3), B<wcpncpy>(3)"
1720 msgstr "B<strncpy>(3), B<wcpncpy>(3)"
1723 #: build/C/man3/strcasecmp.3:30
1729 #: build/C/man3/strcasecmp.3:33
1730 msgid "strcasecmp, strncasecmp - compare two strings ignoring case"
1731 msgstr "strcasecmp, strncasecmp - 二つの文字列を大文字小文字を区別せず比較する"
1734 #: build/C/man3/strcasecmp.3:38
1736 msgid "B<int strcasecmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
1737 msgstr "B<int strcasecmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
1740 #: build/C/man3/strcasecmp.3:40
1742 msgid "B<int strncasecmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>\n"
1743 msgstr "B<int strncasecmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>\n"
1746 #: build/C/man3/strcasecmp.3:55
1748 "The B<strcasecmp>() function compares the two strings I<s1> and I<s2>, "
1749 "ignoring the case of the characters. It returns an integer less than, equal "
1750 "to, or greater than zero if I<s1> is found, respectively, to be less than, "
1751 "to match, or be greater than I<s2>."
1753 "B<strcasecmp>() 関数は、二つの文字列 I<s1> と I<s2> を、 大文字小文字を区別"
1754 "せずに比較する。 I<s1> が I<s2> よりも小さいか、同じか、大きいかによってそれ"
1755 "ぞれ 負の整数、0、正の整数を返す。"
1758 #: build/C/man3/strcasecmp.3:63
1760 "The B<strncasecmp>() function is similar, except it compares the only first "
1761 "I<n> bytes of I<s1>."
1763 "B<strncasecmp>() 関数も同様であるが、 I<s1> の最初の I<n> バイトだけを\n"
1767 #: build/C/man3/strcasecmp.3:76
1769 "The B<strcasecmp>() and B<strncasecmp>() functions return an integer less "
1770 "than, equal to, or greater than zero if I<s1> (or the first I<n> bytes "
1771 "thereof) is found, respectively, to be less than, to match, or be greater "
1774 "B<strcasecmp>() と B<strncasecmp>() 関数は、I<s1> (または、その最初の I<n> "
1775 "バイト)が I<s2> よりも小さいか、 同じか、大きいかにより、それぞれ負の整数、"
1779 #: build/C/man3/strcasecmp.3:78
1780 msgid "4.4BSD, POSIX.1-2001."
1781 msgstr "4.4BSD, POSIX.1-2001."
1784 #: build/C/man3/strcasecmp.3:92
1786 "The B<strcasecmp>() and B<strncasecmp>() functions first appeared in "
1787 "4.4BSD, where they were declared in I<E<lt>string.hE<gt>>. Thus, for "
1788 "reasons of historical compatibility, the glibc I<E<lt>string.hE<gt>> header "
1789 "file also declares these functions, if the B<_DEFAULT_SOURCE> (or, in glibc "
1790 "2.19 and earlier, B<_BSD_SOURCE>) feature test macro is defined."
1792 "関数 B<strcasecmp>() と B<strncasecmp>() は 4.4BSD で初めて登場し、 そのとき"
1793 "は I<E<lt>string.hE<gt>> に宣言があった。 このような、過去との互換性確保のた"
1794 "め、 機能検査マクロ B<_DEFAULT_SOURCE> (glibc 2.19 以前では B<_BSD_SOURCE>) "
1795 "が定義された際に、 glibc のヘッダーファイル I<E<lt>string.hE<gt>> でもこれら"
1799 #: build/C/man3/strcasecmp.3:101
1801 "B<bcmp>(3), B<memcmp>(3), B<strcmp>(3), B<strcoll>(3), B<string>(3), "
1802 "B<strncmp>(3), B<wcscasecmp>(3), B<wcsncasecmp>(3)"
1804 "B<bcmp>(3), B<memcmp>(3), B<strcmp>(3), B<strcoll>(3), B<string>(3), "
1805 "B<strncmp>(3), B<wcscasecmp>(3), B<wcsncasecmp>(3)"
1808 #: build/C/man3/strcat.3:32
1814 #: build/C/man3/strcat.3:32 build/C/man3/strchr.3:33 build/C/man3/strcmp.3:32
1820 #: build/C/man3/strcat.3:35
1821 msgid "strcat, strncat - concatenate two strings"
1822 msgstr "strcat, strncat - 二つの文字列を連結する"
1825 #: build/C/man3/strcat.3:40
1827 msgid "B<char *strcat(char *>I<dest>B<, const char *>I<src>B<);>\n"
1828 msgstr "B<char *strcat(char *>I<dest>B<, const char *>I<src>B<);>\n"
1831 #: build/C/man3/strcat.3:42
1833 msgid "B<char *strncat(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1834 msgstr "B<char *strncat(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1837 #: build/C/man3/strcat.3:62
1839 "The B<strcat>() function appends the I<src> string to the I<dest> string, "
1840 "overwriting the terminating null byte (\\(aq\\e0\\(aq) at the end of "
1841 "I<dest>, and then adds a terminating null byte. The strings may not "
1842 "overlap, and the I<dest> string must have enough space for the result. If "
1843 "I<dest> is not large enough, program behavior is unpredictable; I<buffer "
1844 "overruns are a favorite avenue for attacking secure programs>."
1846 "B<strcat>() 関数は、I<dest> 文字列の後に I<src> 文字列を付け加える。 その際"
1847 "に、I<dest> の最後にある終端のヌルバイト (\\(aq\\e0\\(aq) は上書きされ、新た"
1848 "に生成された文字列の末尾に終端のヌルバイトが付与される。 二つの文字列 I<src> "
1849 "と I<dest> は重なってはならない。 また、文字列 I<dest> は、連結後の結果を格納"
1850 "するのに 十分な大きさでなければならない。 I<dest> が十分な大きさでない場合、"
1851 "プログラムがどのような動作をするか分からない。 バッファオーバーランはセキュア"
1852 "なプログラムを攻撃する際に好んで使われる方法である。"
1855 #: build/C/man3/strcat.3:66
1856 msgid "The B<strncat>() function is similar, except that"
1857 msgstr "B<strncat>() も同様だが、以下の点が異なる。"
1860 #: build/C/man3/strcat.3:66 build/C/man3/strcat.3:72 build/C/man3/strsep.3:98
1861 #: build/C/man3/strsep.3:100 build/C/man3/strsep.3:102
1862 #: build/C/man3/strtok.3:188 build/C/man3/strtok.3:190
1863 #: build/C/man3/strtok.3:192 build/C/man3/strtok.3:194
1869 #: build/C/man3/strcat.3:72
1870 msgid "it will use at most I<n> bytes from I<src>; and"
1871 msgstr "I<src> のうち最大 I<n> バイトが使用される。"
1874 #: build/C/man3/strcat.3:77
1876 "I<src> does not need to be null-terminated if it contains I<n> or more bytes."
1878 "I<src> が I<n> バイト以上の場合、 \n"
1879 "I<src> はヌル終端されている必要はない。"
1882 #: build/C/man3/strcat.3:83
1884 "As with B<strcat>(), the resulting string in I<dest> is always null-"
1887 "B<strcat>() と同じく、I<dest> に格納される結果の文字列は常にヌル終端される。"
1890 #: build/C/man3/strcat.3:102
1892 "If I<src> contains I<n> or more bytes, B<strncat>() writes I<n+1> bytes to "
1893 "I<dest> (I<n> from I<src> plus the terminating null byte). Therefore, the "
1894 "size of I<dest> must be at least I<strlen(dest)+n+1>."
1896 "I<src> が I<n> バイト以上の場合、 B<strncat>() は I<dest> に I<n+1> \n"
1897 "バイトを書き込む (I<src> からの I<n> バイトと終端のヌルバイトである)。\n"
1898 "したがって、I<dest> の大きさは最低でも I<strlen(dest)+n+1> でなければ\n"
1902 #: build/C/man3/strcat.3:106
1903 msgid "A simple implementation of B<strncat>() might be:"
1904 msgstr "B<strncat>() の簡単な実装は以下のような感じであろう:"
1907 #: build/C/man3/strcat.3:114
1911 "strncat(char *dest, const char *src, size_t n)\n"
1913 " size_t dest_len = strlen(dest);\n"
1917 "strncat(char *dest, const char *src, size_t n)\n"
1919 " size_t dest_len = strlen(dest);\n"
1923 #: build/C/man3/strcat.3:118
1926 " for (i = 0 ; i E<lt> n && src[i] != \\(aq\\e0\\(aq ; i++)\n"
1927 " dest[dest_len + i] = src[i];\n"
1928 " dest[dest_len + i] = \\(aq\\e0\\(aq;\n"
1930 " for (i = 0 ; i E<lt> n && src[i] != \\(aq\\e0\\(aq ; i++)\n"
1931 " dest[dest_len + i] = src[i];\n"
1932 " dest[dest_len + i] = \\(aq\\e0\\(aq;\n"
1935 #: build/C/man3/strcat.3:121 build/C/man3/strcpy.3:106
1945 #: build/C/man3/strcat.3:130
1947 "The B<strcat>() and B<strncat>() functions return a pointer to the "
1948 "resulting string I<dest>."
1950 "B<strcat>() 関数と B<strncat>() 関数は、結果としてできる文字列 I<dest> への"
1954 #: build/C/man3/strcat.3:137
1955 msgid "The B<strcat>() and B<strncat>() functions are thread-safe."
1956 msgstr "関数 B<strcat>() と B<strncat>() はスレッドセーフである。"
1959 #: build/C/man3/strcat.3:139 build/C/man3/strcmp.3:88
1960 #: build/C/man3/strcoll.3:71 build/C/man3/strcpy.3:125
1961 #: build/C/man3/strlen.3:57 build/C/man3/strpbrk.3:63 build/C/man3/strspn.3:83
1962 #: build/C/man3/strxfrm.3:78
1963 msgid "SVr4, 4.3BSD, C89, C99."
1964 msgstr "SVr4, 4.3BSD, C89, C99."
1967 #: build/C/man3/strcat.3:141 build/C/man3/strcpy.3:178
1969 "Some systems (the BSDs, Solaris, and others) provide the following function:"
1971 "いくつかのシステム (BSD、Solaris など) では以下の関数が提供されている。"
1974 #: build/C/man3/strcat.3:143
1976 msgid " size_t strlcat(char *dest, const char *src, size_t size);\n"
1977 msgstr " size_t strlcat(char *dest, const char *src, size_t size);\n"
1979 #. https://lwn.net/Articles/506530/
1981 #: build/C/man3/strcat.3:176
1983 "This function appends the null-terminated string I<src> to the string "
1984 "I<dest>, copying at most I<size-strlen(dest)-1> from I<src>, and adds a null "
1985 "terminator to the result, I<unless> I<size> is less than I<strlen(dest)>. "
1986 "This function fixes the buffer overrun problem of B<strcat>(), but the "
1987 "caller must still handle the possibility of data loss if I<size> is too "
1988 "small. The function returns the length of the string B<strlcat>() tried to "
1989 "create; if the return value is greater than or equal to I<size>, data loss "
1990 "occurred. If data loss matters, the caller I<must> either check the "
1991 "arguments before the call, or test the function return value. B<strlcat>() "
1992 "is not present in glibc and is not standardized by POSIX, but is available "
1993 "on Linux via the I<libbsd> library."
1995 "この関数は、ヌル終端された文字列 I<src> を文字列 I<dest> に追加する。 具体例"
1996 "には、 I<size> が I<strlen(dest)> より大きい場合には最大で I<size-"
1997 "strlen(dest)-1> バイトを I<src> からコピーし、 結果の末尾に終端のヌルバイトを"
1998 "追加する。 この関数では B<strcat>() のバッファオーバーランが発生するという問"
1999 "題が修正されているが、 I<size> が小さすぎた場合にはデータが失われる問題に"
2000 "は、 依然として呼び出し側で対処する必要がある。 この関数は B<strlcat>() が作"
2001 "成しようとした文字列の長さを返す。 返り値が I<size> 以上の場合、 データロスが"
2002 "発生している。 データロスが問題となる場合は、 呼び出し側で、 呼び出し前に引き"
2003 "数をチェックするか、 この関数の返り値を検査するかのいずれかをしなければならな"
2004 "い。 B<strlcat>() は glibc には存在せず、 POSIX による標準化もされていない"
2005 "が、 Linux では I<libbsd> ライブラリ経由で利用できる。"
2008 #: build/C/man3/strcat.3:185
2010 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<string>(3), "
2011 "B<strncpy>(3), B<wcscat>(3), B<wcsncat>(3)"
2013 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<string>(3), "
2014 "B<strncpy>(3), B<wcscat>(3), B<wcsncat>(3)"
2017 #: build/C/man3/strchr.3:33
2023 #: build/C/man3/strchr.3:36
2024 msgid "strchr, strrchr, strchrnul - locate character in string"
2025 msgstr "strchr, strrchr, strchrnul - 文字列中の文字の位置を特定する"
2028 #: build/C/man3/strchr.3:41
2030 msgid "B<char *strchr(const char *>I<s>B<, int >I<c>B<);>\n"
2031 msgstr "B<char *strchr(const char *>I<s>B<, int >I<c>B<);>\n"
2034 #: build/C/man3/strchr.3:43
2036 msgid "B<char *strrchr(const char *>I<s>B<, int >I<c>B<);>\n"
2037 msgstr "B<char *strrchr(const char *>I<s>B<, int >I<c>B<);>\n"
2040 #: build/C/man3/strchr.3:48
2042 msgid "B<char *strchrnul(const char *>I<s>B<, int >I<c>B<);>\n"
2043 msgstr "B<char *strchrnul(const char *>I<s>B<, int >I<c>B<);>\n"
2046 #: build/C/man3/strchr.3:57
2048 "The B<strchr>() function returns a pointer to the first occurrence of the "
2049 "character I<c> in the string I<s>."
2051 "B<strchr>() 関数は、文字列 I<s> 中に最初に文字 I<c> が現れた位置へのポインタ"
2055 #: build/C/man3/strchr.3:65
2057 "The B<strrchr>() function returns a pointer to the last occurrence of the "
2058 "character I<c> in the string I<s>."
2060 "B<strrchr>() 関数は、文字列 I<s> 中に最後に文字 I<c> が現れた位置へのポイン"
2064 #: build/C/man3/strchr.3:78
2066 "The B<strchrnul>() function is like B<strchr>() except that if I<c> is not "
2067 "found in I<s>, then it returns a pointer to the null byte at the end of "
2068 "I<s>, rather than NULL."
2070 "B<strchrnul>() 関数は B<strchr>() と同様だが、 I<c> が I<s> 中に見つからな"
2071 "かった場合に、返り値として NULL でなく、I<s> の末尾のヌルバイトへのポインタを"
2075 #: build/C/man3/strchr.3:81
2077 "Here \"character\" means \"byte\"; these functions do not work with wide or "
2078 "multibyte characters."
2080 "ここでいう「文字」は「バイト」の意味なので、 これらの関数はワイド文字やマルチ"
2084 #: build/C/man3/strchr.3:93
2086 "The B<strchr>() and B<strrchr>() functions return a pointer to the matched "
2087 "character or NULL if the character is not found. The terminating null byte "
2088 "is considered part of the string, so that if I<c> is specified as \\(aq"
2089 "\\e0\\(aq, these functions return a pointer to the terminator."
2091 "B<strchr>() と B<strrchr>() 関数は一致した文字へのポインタを返し、もし\n"
2092 "文字が見つからない場合は NULL を返す。終端のヌルバイトは文字列の一部と\n"
2093 "みなされ、I<c> に \\(aq\\e0\\(aq が指定された場合には、これらの関数は\n"
2094 "終端のヌルバイトへのポインタを返す。"
2097 #: build/C/man3/strchr.3:104
2099 "The B<strchrnul>() function returns a pointer to the matched character, or "
2100 "a pointer to the null byte at the end of I<s> (i.e., I<s+strlen(s)>) if the "
2101 "character is not found."
2103 "B<strchrnul>() 関数は一致した文字へのポインタを返す。 文字が見つからない場合"
2104 "は、I<s> の末尾のヌルバイトへの ポインタ (つまり I<s+strlen(s)>) を返す。"
2107 #: build/C/man3/strchr.3:107
2108 msgid "B<strchrnul>() first appeared in glibc in version 2.1.1."
2109 msgstr "B<strchrnul>() は glibc バージョン 2.1.1 で初めて登場した。"
2112 #: build/C/man3/strchr.3:115
2114 "The B<strchr>(), B<strrchr>(), and B<strchrnul>() functions are thread-safe."
2116 "関数 B<strchr>(), B<strrchr>(), B<strchrnul>() はスレッドセーフである。"
2119 #: build/C/man3/strchr.3:122
2121 "B<strchr>() and B<strrchr>() are in SVr4, 4.3BSD, C89, C99. "
2122 "B<strchrnul>() is a GNU extension."
2124 "B<strchr>() と B<strrchr>() は SVr4, 4.3BSD, C89, C99 に準拠している。 "
2125 "B<strchrnul>() は GNU 拡張である。"
2128 #: build/C/man3/strchr.3:135
2130 "B<index>(3), B<memchr>(3), B<rindex>(3), B<string>(3), B<strlen>(3), "
2131 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), "
2132 "B<wcschr>(3), B<wcsrchr>(3)"
2134 "B<index>(3), B<memchr>(3), B<rindex>(3), B<string>(3), B<strlen>(3), "
2135 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), "
2136 "B<wcschr>(3), B<wcsrchr>(3)"
2139 #: build/C/man3/strcmp.3:32
2145 #: build/C/man3/strcmp.3:35
2146 msgid "strcmp, strncmp - compare two strings"
2147 msgstr "strcmp, strncmp - 二つの文字列を比べる"
2150 #: build/C/man3/strcmp.3:40
2152 msgid "B<int strcmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2153 msgstr "B<int strcmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2156 #: build/C/man3/strcmp.3:42
2158 msgid "B<int strncmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>\n"
2159 msgstr "B<int strncmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>\n"
2162 #: build/C/man3/strcmp.3:56
2164 "The B<strcmp>() function compares the two strings I<s1> and I<s2>. It "
2165 "returns an integer less than, equal to, or greater than zero if I<s1> is "
2166 "found, respectively, to be less than, to match, or be greater than I<s2>."
2168 "B<strcmp>() 関数は二つの文字列 I<s1> と I<s2> を較べる。 この関数は、 I<s1> "
2169 "が I<s2> に較べて 1)小さい、2)等しい、3)大きい場合に、 ゼロよりも 1)小さい、"
2173 #: build/C/man3/strcmp.3:66
2175 "The B<strncmp>() function is similar, except it compares the only first (at "
2176 "most) I<n> bytes of I<s1> and I<s2>."
2178 "B<strncmp>() 関数は、I<s1> と I<s2> の最初の I<n> バイトだけを比較する\n"
2179 "ことを除けば、strcmp()と同様である。"
2182 #: build/C/man3/strcmp.3:79
2184 "The B<strcmp>() and B<strncmp>() functions return an integer less than, "
2185 "equal to, or greater than zero if I<s1> (or the first I<n> bytes thereof) is "
2186 "found, respectively, to be less than, to match, or be greater than I<s2>."
2188 "B<strcmp>() 関数と B<strncmp>() 関数は整数を返す。 この整数は、ゼロよりも、"
2189 "1)小さい、2)等しい、3)大きいのいずれかである。 それぞれは、I<s1>(または、こ"
2190 "の文字列の最初の I<n> バイト)が I<s2> よりも、1)小さい、2)等しい、3)大きいに"
2194 #: build/C/man3/strcmp.3:86
2195 msgid "The B<strcmp>() and B<strncmp>() functions are thread-safe."
2196 msgstr "関数 B<strcmp>() と B<strncmp>() はスレッドセーフである。"
2199 #: build/C/man3/strcmp.3:98
2201 "B<bcmp>(3), B<memcmp>(3), B<strcasecmp>(3), B<strcoll>(3), B<string>(3), "
2202 "B<strncasecmp>(3), B<strverscmp>(3), B<wcscmp>(3), B<wcsncmp>(3)"
2204 "B<bcmp>(3), B<memcmp>(3), B<strcasecmp>(3), B<strcoll>(3), B<string>(3), "
2205 "B<strncasecmp>(3), B<strverscmp>(3), B<wcscmp>(3), B<wcsncmp>(3)"
2208 #: build/C/man3/strcoll.3:30
2214 #: build/C/man3/strcoll.3:30 build/C/man3/strfry.3:30
2220 #: build/C/man3/strcoll.3:33
2221 msgid "strcoll - compare two strings using the current locale"
2222 msgstr "strcoll - 現在のロケールを使用して二つの文字列を比較する"
2225 #: build/C/man3/strcoll.3:38
2227 msgid "B<int strcoll(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2228 msgstr "B<int strcoll(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2231 #: build/C/man3/strcoll.3:58
2233 "The B<strcoll>() function compares the two strings I<s1> and I<s2>. It "
2234 "returns an integer less than, equal to, or greater than zero if I<s1> is "
2235 "found, respectively, to be less than, to match, or be greater than I<s2>. "
2236 "The comparison is based on strings interpreted as appropriate for the "
2237 "program's current locale for category B<LC_COLLATE>. (See B<setlocale>(3).)"
2239 "B<strcoll>() 関数は二つの文字列 I<s1> と I<s2> を比較する。 この関数は、"
2240 "I<s1> が I<s2> よりも小さいか、等しいか、大きいかによって それぞれ負の整数、"
2241 "0、正の整数を返す。 比較は、プログラムの現在のロケールの B<LC_COLLATE> カテゴ"
2242 "リに応じて 解釈された文字列に基づいて行われる (B<setlocale>(3) 参照)。"
2245 #: build/C/man3/strcoll.3:69
2247 "The B<strcoll>() function returns an integer less than, equal to, or "
2248 "greater than zero if I<s1> is found, respectively, to be less than, to "
2249 "match, or be greater than I<s2>, when both are interpreted as appropriate "
2250 "for the current locale."
2252 "B<strcoll>() 関数は、I<s1> が I<s2> よりも小さいか、等しいか、 大きいかに"
2253 "よって、それぞれ負の整数、0、正の整数を返す。 どちらの文字列も現在のロケール"
2254 "に応じて解釈されたものが使用される。"
2257 #: build/C/man3/strcoll.3:80
2259 "In the I<POSIX> or I<C> locales B<strcoll>() is equivalent to B<strcmp>(3)."
2261 "I<POSIX> および I<C> ロケールにおいては、 B<strcoll>() は B<strcmp>(3) と等"
2265 #: build/C/man3/strcoll.3:88
2267 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
2268 "B<string>(3), B<strxfrm>(3)"
2270 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
2271 "B<string>(3), B<strxfrm>(3)"
2274 #: build/C/man3/strcpy.3:35
2280 #: build/C/man3/strcpy.3:35
2286 #: build/C/man3/strcpy.3:38
2287 msgid "strcpy, strncpy - copy a string"
2288 msgstr "strcpy, strncpy - 文字列をコピーする"
2291 #: build/C/man3/strcpy.3:43
2293 msgid "B<char *strcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
2294 msgstr "B<char *strcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
2297 #: build/C/man3/strcpy.3:45
2299 msgid "B<char *strncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
2300 msgstr "B<char *strncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
2303 #: build/C/man3/strcpy.3:59
2305 "The B<strcpy>() function copies the string pointed to by I<src>, including "
2306 "the terminating null byte (\\(aq\\e0\\(aq), to the buffer pointed to by "
2307 "I<dest>. The strings may not overlap, and the destination string I<dest> "
2308 "must be large enough to receive the copy. I<Beware of buffer overruns!> "
2311 "B<strcpy>() 関数は I<src> が指す文字列を末尾のヌルバイト (\\(aq\\e0\\(aq) も"
2312 "含めて I<dest> が指すバッファにコピーする。 二つの文字列は重なってはならな"
2313 "い。受け側の文字列 I<dest> は コピーを受け取るのに十分な大きさでなければなら"
2314 "ない。 I<バッファオーバーランに気を付けること!> (「バグ」の節を参照)"
2317 #: build/C/man3/strcpy.3:76
2319 "The B<strncpy>() function is similar, except that at most I<n> bytes of "
2320 "I<src> are copied. B<Warning>: If there is no null byte among the first "
2321 "I<n> bytes of I<src>, the string placed in I<dest> will not be null-"
2324 "B<strncpy>() 関数も同様だが、 I<src> のうち最大でも I<n> バイトしかコピーさ"
2325 "れない点が異なる。 B<警告>: I<src> の最初の I<n> バイトの中にヌルバイトがない"
2326 "場合、 I<dest> に格納される文字列はヌルで終端されないことになる。"
2329 #: build/C/man3/strcpy.3:87
2331 "If the length of I<src> is less than I<n>, B<strncpy>() writes additional "
2332 "null bytes to I<dest> to ensure that a total of I<n> bytes are written."
2334 "I<src> の長さが I<n> よりも短い場合、 B<strncpy>() は I<dest> に追加のヌルバ"
2335 "イトを書き込み、全部で I<n> バイトが書き込まれるようにする。"
2338 #: build/C/man3/strcpy.3:91
2339 msgid "A simple implementation of B<strncpy>() might be:"
2340 msgstr "B<strncpy>() の簡単な実装は以下のような感じであろう:"
2343 #: build/C/man3/strcpy.3:98
2347 "strncpy(char *dest, const char *src, size_t n)\n"
2352 "strncpy(char *dest, const char *src, size_t n)\n"
2357 #: build/C/man3/strcpy.3:103
2360 " for (i = 0; i E<lt> n && src[i] != \\(aq\\e0\\(aq; i++)\n"
2361 " dest[i] = src[i];\n"
2362 " for ( ; i E<lt> n; i++)\n"
2363 " dest[i] = \\(aq\\e0\\(aq;\n"
2365 " for (i = 0; i E<lt> n && src[i] != \\(aq\\e0\\(aq; i++)\n"
2366 " dest[i] = src[i];\n"
2367 " for ( ; i E<lt> n; i++)\n"
2368 " dest[i] = \\(aq\\e0\\(aq;\n"
2371 #: build/C/man3/strcpy.3:116
2373 "The B<strcpy>() and B<strncpy>() functions return a pointer to the "
2374 "destination string I<dest>."
2376 "B<strcpy>() 関数と B<strncpy>() 関数は 受け側の文字列I<dest>へのポインタを"
2380 #: build/C/man3/strcpy.3:123
2381 msgid "The B<strcpy>() and B<strncpy>() functions are thread-safe."
2382 msgstr "関数 B<strcpy>() と B<strncpy>() はスレッドセーフである。"
2385 #: build/C/man3/strcpy.3:138
2387 "Some programmers consider B<strncpy>() to be inefficient and error prone. "
2388 "If the programmer knows (i.e., includes code to test!) that the size of "
2389 "I<dest> is greater than the length of I<src>, then B<strcpy>() can be used."
2391 "B<strncpy>() は効率的でなく間違いを起こしやすいと考えるプログラマもいるだろ"
2392 "う。 プログラマが I<dest> の大きさが I<src> の長さよりも 大きいことを知ってい"
2393 "る (つまり、そのことをチェックするコードを 書いている) 場合は、 B<strcpy()> "
2397 #: build/C/man3/strcpy.3:147
2399 "One valid (and intended) use of B<strncpy>() is to copy a C string to a "
2400 "fixed-length buffer while ensuring both that the buffer is not overflowed "
2401 "and that unused bytes in the target buffer are zeroed out (perhaps to "
2402 "prevent information leaks if the buffer is to be written to media or "
2403 "transmitted to another process via an interprocess communication technique)."
2405 "B<strncpy>() の正しい (かつ意図された) 用途は、 C 文字列の固定長バッファへの"
2406 "コピーを、 バッファがオーバーフローしないことと、 宛先バッファの未使用バイト"
2407 "が 0 で埋められることの両方を保証しつつ行うことである。 (宛先バッファを 0 で"
2408 "埋めるのは、 たいていの場合、 バッファを媒体に書き込んだり、別のプロセスにプ"
2409 "ロセス間通信を用いて送信したりした場合に情報洩れを防ぐためである)。"
2412 #: build/C/man3/strcpy.3:160
2414 "If there is no terminating null byte in the first I<n> bytes of I<src>, "
2415 "B<strncpy>() produces an unterminated string in I<dest>. If I<buf> has "
2416 "length I<buflen>, you can force termination using something like the "
2419 "I<src> の最初の I<n> バイトに終端のヌルバイトがない場合、 B<strncpy>() は "
2420 "I<dest> に終端されていない文字列を生成する。 I<buf> の長さが I<buflen> の場"
2421 "合、以下のようにして強制的に終端することができる。"
2424 #: build/C/man3/strcpy.3:166
2427 "strncpy(buf, str, buflen - 1);\n"
2428 "if (buflen E<gt> 0)\n"
2429 " buf[buflen - 1]= \\(aq\\e0\\(aq;\n"
2431 "strncpy(buf, str, buflen - 1);\n"
2432 "if (buflen E<gt> 0)\n"
2433 " buf[buflen - 1]= \\(aq\\e0\\(aq;\n"
2436 #: build/C/man3/strcpy.3:176
2438 "(Of course, the above technique ignores the fact that, if I<src> contains "
2439 "more than I<buflen\\ -\\ 1> bytes, information is lost in the copying to "
2442 "(もちろん、上記の方法では、 I<src> に入っている情報が I<buflen\\ -\\ 1> バイ"
2443 "トよりも多い場合には、 I<dest> へのコピー時に情報が失われるという事実は無視し"
2447 #: build/C/man3/strcpy.3:176
2453 #: build/C/man3/strcpy.3:180
2455 msgid " size_t strlcpy(char *dest, const char *src, size_t size);\n"
2456 msgstr " size_t strlcpy(char *dest, const char *src, size_t size);\n"
2458 #. http://static.usenix.org/event/usenix99/full_papers/millert/millert_html/index.html
2459 #. "strlcpy and strlcat - consistent, safe, string copy and concatenation"
2460 #. 1999 USENIX Annual Technical Conference
2461 #. https://lwn.net/Articles/506530/
2463 #: build/C/man3/strcpy.3:215
2465 "This function is similar to B<strncpy>(), but it copies at most I<size-1> "
2466 "bytes to I<dest>, always adds a terminating null byte, and does not pad the "
2467 "target with (further) null bytes. This function fixes some of the problems "
2468 "of B<strcpy>() and B<strncpy>(), but the caller must still handle the "
2469 "possibility of data loss if I<size> is too small. The return value of the "
2470 "function is the length of I<src>, which allows truncation to be easily "
2471 "detected: if the return value is greater than or equal to I<size>, "
2472 "truncation occurred. If loss of data matters, the caller I<must> either "
2473 "check the arguments before the call, or test the function return value. "
2474 "B<strlcpy>() is not present in glibc and is not standardized by POSIX, but "
2475 "is available on Linux via the I<libbsd> library."
2477 "この関数は B<strncpy>() と同様だが、 最大でも I<size-1> バイトしか I<dest> に"
2478 "コピーをせず、 末尾への終端のヌルバイトの追加が必ず行われ、 宛先バッファ (の"
2479 "未使用部分) へのヌルバイトの書き込みが行われない。 この関数では B<strcpy>() "
2480 "や B<strncpy>() の持つ問題のいくつかが修正されているが、 I<size> が小さすぎた"
2481 "場合にはデータが失われる問題には、 依然として呼び出し側で対処する必要があ"
2482 "る。 この関数の返り値は I<src> の長さである。 これにより、 末尾の切り詰めが行"
2483 "われたかを簡単に検出することができる。 返り値が I<size> 以上の場合には、 末尾"
2484 "の切り詰めが発生している。 データロスが問題となる場合は、 呼び出し側で、 呼び"
2485 "出し前に引き数をチェックするか、 この関数の返り値を検査するかのいずれかをしな"
2486 "ければならない。 B<strlcpy>() は glibc には存在せず、 POSIX による標準化もさ"
2487 "れていないが、 Linux では I<libbsd> ライブラリ経由で利用できる。"
2490 #: build/C/man3/strcpy.3:226
2492 "If the destination string of a B<strcpy>() is not large enough, then "
2493 "anything might happen. Overflowing fixed-length string buffers is a "
2494 "favorite cracker technique for taking complete control of the machine. Any "
2495 "time a program reads or copies data into a buffer, the program first needs "
2496 "to check that there's enough space. This may be unnecessary if you can show "
2497 "that overflow is impossible, but be careful: programs can get changed over "
2498 "time, in ways that may make the impossible possible."
2500 "B<strcpy>() の受け側の文字列が十分な大きさでない場合、何が起こるかわからな"
2501 "い。 固定長文字列を溢れさせるのは、マシンの制御を掌中に収めるために クラッ"
2502 "カーが好んで使うテクニックである。 プログラムでデータをバッファに読み込んだり"
2503 "コピーしたりする場合には、 必ずまず最初に十分な大きさがあるかどうかをチェック"
2504 "する必要がある。 プログラマがオーバーフローが不可能だと示せる場合には この"
2505 "チェックは不要かもしれないが、十分注意すること。 長い間には、不可能だったこと"
2506 "が可能になるような方法でプログラムが 変更されることもあるからだ。"
2509 #: build/C/man3/strcpy.3:237
2511 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpcpy>(3), "
2512 "B<stpncpy>(3), B<strdup>(3), B<string>(3), B<wcscpy>(3), B<wcsncpy>(3)"
2514 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpcpy>(3), "
2515 "B<stpncpy>(3), B<strdup>(3), B<string>(3), B<wcscpy>(3), B<wcsncpy>(3)"
2518 #: build/C/man3/strdup.3:31
2524 #: build/C/man3/strdup.3:31
2530 #: build/C/man3/strdup.3:34
2531 msgid "strdup, strndup, strdupa, strndupa - duplicate a string"
2532 msgstr "strdup, strndup, strdupa, strndupa - 文字列を複製する"
2535 #: build/C/man3/strdup.3:39
2537 msgid "B<char *strdup(const char *>I<s>B<);>\n"
2538 msgstr "B<char *strdup(const char *>I<s>B<);>\n"
2541 #: build/C/man3/strdup.3:41
2543 msgid "B<char *strndup(const char *>I<s>B<, size_t >I<n>B<);>\n"
2544 msgstr "B<char *strndup(const char *>I<s>B<, size_t >I<n>B<);>\n"
2547 #: build/C/man3/strdup.3:43
2549 msgid "B<char *strdupa(const char *>I<s>B<);>\n"
2550 msgstr "B<char *strdupa(const char *>I<s>B<);>\n"
2553 #: build/C/man3/strdup.3:45
2555 msgid "B<char *strndupa(const char *>I<s>B<, size_t >I<n>B<);>\n"
2556 msgstr "B<char *strndupa(const char *>I<s>B<, size_t >I<n>B<);>\n"
2559 #: build/C/man3/strdup.3:55
2560 msgid "B<strdup>():"
2561 msgstr "B<strdup>():"
2564 #: build/C/man3/strdup.3:58
2566 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
2567 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
2569 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
2570 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
2573 #: build/C/man3/strdup.3:60
2574 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
2575 msgstr "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
2578 #: build/C/man3/strdup.3:63
2579 msgid "B<strndup>():"
2580 msgstr "B<strndup>():"
2583 #: build/C/man3/strdup.3:67
2584 msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700"
2585 msgstr "_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700"
2588 #: build/C/man3/strdup.3:75
2589 msgid "B<strdupa>(), B<strndupa>(): _GNU_SOURCE"
2590 msgstr "B<strdupa>(), B<strndupa>(): _GNU_SOURCE"
2593 #: build/C/man3/strdup.3:88
2595 "The B<strdup>() function returns a pointer to a new string which is a "
2596 "duplicate of the string I<s>. Memory for the new string is obtained with "
2597 "B<malloc>(3), and can be freed with B<free>(3)."
2599 "B<strdup>() 関数は、文字列 I<s>の複製である 新しい文字列へのポインタを返"
2600 "す。 新しい文字列のためのメモリは B<malloc>(3) で得ている。 そして、 "
2601 "B<free>(3) で解放することができる。"
2604 #: build/C/man3/strdup.3:101
2606 "The B<strndup>() function is similar, but copies at most I<n> bytes. If "
2607 "I<s> is longer than I<n>, only I<n> bytes are copied, and a terminating null "
2608 "byte (\\(aq\\e0\\(aq) is added."
2610 "B<strndup>() 関数は同様であるが、最大で I<n> バイトを複製する。\n"
2611 "I<s> が I<n> よりも長い場合、I<n> バイトだけが複製され、\n"
2612 "終端のヌルバイト (\\(aq\\e0\\(aq)) が追加される。"
2615 #: build/C/man3/strdup.3:111
2617 "B<strdupa>() and B<strndupa>() are similar, but use B<alloca>(3) to "
2618 "allocate the buffer. They are available only when using the GNU GCC suite, "
2619 "and suffer from the same limitations described in B<alloca>(3)."
2621 "B<strdupa>() と B<strndupa>() も同様だが、バッファの確保に\n"
2622 "B<alloca>(3) を使用する点が異なる。\n"
2623 "これらが使用できるのは GNU GCC ツール群を使う場合だけであり、\n"
2624 "B<alloca>(3) で説明されているのと同じ制限がある。"
2627 #: build/C/man3/strdup.3:119
2629 "On success, the B<strdup>() function returns a pointer to the duplicated "
2630 "string. It returns NULL if insufficient memory was available, with I<errno> "
2631 "set to indicate the cause of the error."
2633 "成功すると、 B<strdup>() 関数は複製された文字列へのポインタを返す。 十分なメ"
2634 "モリが確保できなかった場合には、 NULL を返し、 I<errno> にエラーの原因を示す"
2638 #: build/C/man3/strdup.3:119 build/C/man3/strerror.3:193
2644 #: build/C/man3/strdup.3:120
2650 #: build/C/man3/strdup.3:123
2651 msgid "Insufficient memory available to allocate duplicate string."
2652 msgstr "複製された文字列を割り当てる十分なメモリが確保できなかった。"
2654 #. 4.3BSD-Reno, not (first) 4.3BSD.
2656 #: build/C/man3/strdup.3:133
2658 "B<strdup>() conforms to SVr4, 4.3BSD, POSIX.1-2001. B<strndup>() conforms "
2659 "to POSIX.1-2008. B<strdupa>() and B<strndupa>() are GNU extensions."
2661 "B<strdup>() は SVr4, 4.3BSD, POSIX.1-2001 準拠である。 B<strndup>() は "
2662 "POSIX.1-2008 準拠である。 B<strdupa>(), B<strndupa>() は GNU 拡張である。"
2665 #: build/C/man3/strdup.3:141
2667 "B<alloca>(3), B<calloc>(3), B<free>(3), B<malloc>(3), B<realloc>(3), "
2668 "B<string>(3), B<wcsdup>(3)"
2670 "B<alloca>(3), B<calloc>(3), B<free>(3), B<malloc>(3), B<realloc>(3), "
2671 "B<string>(3), B<wcsdup>(3)"
2674 #: build/C/man3/strerror.3:39
2680 #: build/C/man3/strerror.3:42
2682 "strerror, strerror_r, strerror_l - return string describing error number"
2683 msgstr "strerror, strerror_r, strerror_l - エラー番号を説明する文字列を返す。"
2686 #: build/C/man3/strerror.3:47
2688 msgid "B<char *strerror(int >I<errnum>B<);>\n"
2689 msgstr "B<char *strerror(int >I<errnum>B<);>\n"
2692 #: build/C/man3/strerror.3:50
2695 "B<int strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2696 " /* XSI-compliant */\n"
2698 "B<int strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2699 " /* XSI-compliant */\n"
2702 #: build/C/man3/strerror.3:53
2705 "B<char *strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2706 " /* GNU-specific */\n"
2708 "B<char *strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2709 " /* GNU-specific */\n"
2712 #: build/C/man3/strerror.3:55
2714 msgid "B<char *strerror_l(int >I<errnum>B<, locale_t >I<locale>B<);>\n"
2715 msgstr "B<char *strerror_l(int >I<errnum>B<, locale_t >I<locale>B<);>\n"
2718 #: build/C/man3/strerror.3:64
2719 msgid "B<strerror_r>():"
2720 msgstr "B<strerror_r>():"
2723 #: build/C/man3/strerror.3:66
2724 msgid "The XSI-compliant version is provided if:"
2725 msgstr "次の場合には XSI 準拠のバージョンが提供される:"
2728 #: build/C/man3/strerror.3:68
2730 "(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600) && !\\ "
2733 "(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600) && !\\ "
2737 #: build/C/man3/strerror.3:70
2738 msgid "Otherwise, the GNU-specific version is provided."
2739 msgstr "それ以外の場合、GNU バージョンが提供される。"
2742 #: build/C/man3/strerror.3:95
2744 "The B<strerror>() function returns a pointer to a string that describes the "
2745 "error code passed in the argument I<errnum>, possibly using the "
2746 "B<LC_MESSAGES> part of the current locale to select the appropriate "
2747 "language. (For example, if I<errnum> is B<EINVAL>, the returned description "
2748 "will be \"Invalid argument\".) This string must not be modified by the "
2749 "application, but may be modified by a subsequent call to B<strerror>() or "
2750 "B<strerror_l>(). No other library function, including B<perror>(3), will "
2751 "modify this string."
2753 "B<strerror>() 関数は、引き数 I<errnum> で渡されたエラーコードについての説明が"
2754 "入った文字列へのポインタを返す。 可能であるならば、適切な言語を選択するため"
2755 "に、 現在のロケールの B<LC_MESSAGES> を使う。(例えば、 I<errnum> が "
2756 "B<EINVAL> の場合、説明として \"Invalid argument\" が返される。) この文字列"
2757 "は、アプリケーションで変更してはならないが、 これ以降に行われる "
2758 "B<strerror>() や B<strerror_l>() の呼び出しで変更されても構わない。 "
2759 "B<perror>(3) などの、これ以外のライブラリ関数ではこの文字列は変更されない。"
2762 #: build/C/man3/strerror.3:95
2764 msgid "strerror_r()"
2765 msgstr "strerror_r()"
2768 #: build/C/man3/strerror.3:116
2770 "The B<strerror_r>() function is similar to B<strerror>(), but is thread "
2771 "safe. This function is available in two versions: an XSI-compliant version "
2772 "specified in POSIX.1-2001 (available since glibc 2.3.4, but not POSIX-"
2773 "compliant until glibc 2.13), and a GNU-specific version (available since "
2774 "glibc 2.0). The XSI-compliant version is provided with the feature test "
2775 "macros settings shown in the SYNOPSIS; otherwise the GNU-specific version is "
2776 "provided. If no feature test macros are explicitly defined, then (since "
2777 "glibc 2.4) B<_POSIX_SOURCE> is defined by default with the value 200112L, "
2778 "so that the XSI-compliant version of B<strerror_r>() is provided by default."
2780 "B<strerror_r>() 関数は B<strerror>() と似ているが、スレッドセーフである。\n"
2781 "この関数には二種類のバージョンが存在し、 POSIX.1-2001 で規定された XSI\n"
2782 "準拠のバージョン (glibc 2.3.4 以降で利用可能だが、glibc 2.13 までは\n"
2783 "POSIX 準拠ではない) と、 GNU 仕様のバージョン (glibc 2.0 以降で利用可能)\n"
2784 "である。 「書式」の節に記載された機能検査マクロの場合には、 XSI 準拠の\n"
2785 "バージョンが提供される。それ以外の場合には GNU 仕様のバージョンが提供さ\n"
2786 "れる。機能検査マクロが一つも明示的に定義されない場合、 (glibc 2.4 以降\n"
2787 "では) デフォルトで B<_POSIX_SOURCE> は値 200112l で定義され、その結果\n"
2788 "XSI 準拠のバージョンの B<strerror_r>() がデフォルトで提供される。"
2791 #: build/C/man3/strerror.3:124
2793 "The XSI-compliant B<strerror_r>() is preferred for portable applications. "
2794 "It returns the error string in the user-supplied buffer I<buf> of length "
2797 "移植性が必要なアプリケーションでは、 XSI 準拠の B<strerror_r>() を使う方がよ"
2798 "い。 この関数は、ユーザーから提供される長さ I<buflen> のバッファ I<buf> にエ"
2802 #: build/C/man3/strerror.3:145
2804 "The GNU-specific B<strerror_r>() returns a pointer to a string containing "
2805 "the error message. This may be either a pointer to a string that the "
2806 "function stores in I<buf>, or a pointer to some (immutable) static string "
2807 "(in which case I<buf> is unused). If the function stores a string in "
2808 "I<buf>, then at most I<buflen> bytes are stored (the string may be truncated "
2809 "if I<buflen> is too small and I<errnum> is unknown). The string always "
2810 "includes a terminating null byte (\\(aq\\e0\\(aq)."
2812 "GNU 仕様の B<strerror_r>() は、 エラーメッセージを格納した文字列へのポインタ"
2813 "を返す。 返り値は、 この関数が I<buf> に格納した文字列へのポインタか、 何らか"
2814 "の (不変な) 静的な文字列へのポインタ、 のいずれかとなる (後者の場合は I<buf> "
2815 "は使用されない)。 I<buf> に文字列が格納される場合は、 最大で I<buflen> バイト"
2816 "が格納される (I<buflen> が小さ過ぎたときには文字列は切り詰められ、 I<errnum> "
2817 "は不定である)。 文字列には必ず終端ヌル文字 (\\(aq\\e0\\(aq) が含まれる。"
2820 #: build/C/man3/strerror.3:145
2822 msgid "strerror_l()"
2823 msgstr "strerror_l()"
2826 #: build/C/man3/strerror.3:160
2828 "B<strerror_l>() is like B<strerror>(), but maps I<errnum> to a locale-"
2829 "dependent error message in the locale specified by I<locale>. The behavior "
2830 "of B<strerror_l>() is undefined if I<locale> is the special locale object "
2831 "B<LC_GLOBAL_LOCALE> or is not a valid locale object handle."
2833 "B<strerror_l>() は B<strerror>() と同様だが、 I<errnum> を I<locale> で指定さ"
2834 "れたロケールのロケール依存のエラーメッセージにマッピングする。 I<locale> が特"
2835 "別なロケールオブジェクト B<LC_GLOBAL_LOCALE> の場合、もしくは I<locale> が有"
2836 "効なロケールオブジェクトハンドルでない場合は、 B<strerror_l>() の動作は未定義"
2840 #: build/C/man3/strerror.3:169
2842 "The B<strerror>(), B<strerror_l>(), and the GNU-specific B<strerror_r>() "
2843 "functions return the appropriate error description string, or an \"Unknown "
2844 "error nnn\" message if the error number is unknown."
2846 "関数 B<strerror>(), B<strerror_l>() と GNU 固有の関数 B<strerror_r>() はエ"
2847 "ラー内容を説明する文字列を返す。 エラー番号が未知の場合は \"Unknown error nnn"
2851 #: build/C/man3/strerror.3:178
2853 "The XSI-compliant B<strerror_r>() function returns 0 on success. On error, "
2854 "a (positive) error number is returned (since glibc 2.13), or -1 is returned "
2855 "and I<errno> is set to indicate the error (glibc versions before 2.13)."
2857 "XSI 準拠の B<strerror_r>() 関数は成功すると 0 を返す。エラーの場合には、\n"
2858 "(glibc 2.13 以降では) (正の) エラー番号が返され、(バージョン 2.13 より前\n"
2859 "の glibc では) -1 が返され、 I<errno> にエラーを示す値がセットされる。"
2862 #: build/C/man3/strerror.3:193
2864 "POSIX.1-2001 and POSIX.1-2008 require that a successful call to "
2865 "B<strerror>() or B<strerror_l>() shall leave I<errno> unchanged, and note "
2866 "that, since no function return value is reserved to indicate an error, an "
2867 "application that wishes to check for errors should initialize I<errno> to "
2868 "zero before the call, and then check I<errno> after the call."
2870 "POSIX.1-2001 と POSIX.1-2008 では、 B<strerror>() や B<strerror_l>() が成功し"
2871 "た場合は I<errno> を変更せずに元のままにしなければならないとされている。関数"
2872 "のどの返り値もエラーを示すために予約されていないので、エラーをチェックしたい"
2873 "アプリケーションは呼び出しを行う前に I<errno> を 0 に初期化し、呼び出しの後"
2874 "で I<errno> をチェックすべき点に注意すること。"
2877 #: build/C/man3/strerror.3:194
2883 #: build/C/man3/strerror.3:199
2884 msgid "The value of I<errnum> is not a valid error number."
2885 msgstr "I<errnum> の値が有効なエラー番号ではない。"
2888 #: build/C/man3/strerror.3:199
2894 #: build/C/man3/strerror.3:202
2896 "Insufficient storage was supplied to contain the error description string."
2897 msgstr "エラーコードを説明する文字列のために、充分な領域が確保できなかった。"
2900 #: build/C/man3/strerror.3:207
2901 msgid "The B<strerror>() function is not thread-safe."
2902 msgstr "B<strerror>() 関数はスレッドセーフではない。"
2904 #. FIXME Need a thread-safety statement about strerror_l()
2906 #: build/C/man3/strerror.3:212
2907 msgid "The B<strerror_r>() function is thread-safe."
2908 msgstr "B<strerror_r>() 関数はスレッドセーフである。"
2911 #: build/C/man3/strerror.3:216
2912 msgid "The B<strerror_l>() function first appeared in glibc 2.6."
2913 msgstr "B<strerror_l>() 関数は glibc 2.6 で初めて登場した。"
2916 #: build/C/man3/strerror.3:221
2918 "B<strerror>() is specified by POSIX.1-2001, POSIX.1-2008, C89, and C99. "
2919 "B<strerror_r>() is specified by POSIX.1-2001 and POSIX.1-2008."
2921 "B<strerror>() は POSIX.1-2001, POSIX.1-2008, C89, C99 で規定されている。 "
2922 "B<strerror_r>() は POSIX.1-2001 と POSIX.1-2008 で規定されている。"
2925 #: build/C/man3/strerror.3:224
2926 msgid "B<strerror_l>() is specified in POSIX.1-2008."
2927 msgstr "B<strerror_l>() は POSIX.1-2008 で規定されている。"
2930 #: build/C/man3/strerror.3:228
2931 msgid "The GNU-specific B<strerror_r>() function is a nonstandard extension."
2932 msgstr "GNU 仕様の B<strerror_r>() 関数は非標準の拡張である。"
2934 #. e.g., Solaris 8, HP-UX 11
2935 #. e.g., FreeBSD 5.4, Tru64 5.1B
2937 #: build/C/man3/strerror.3:248
2939 "POSIX.1-2001 permits B<strerror>() to set I<errno> if the call encounters "
2940 "an error, but does not specify what value should be returned as the function "
2941 "result in the event of an error. On some systems, B<strerror>() returns "
2942 "NULL if the error number is unknown. On other systems, B<strerror>() "
2943 "returns a string something like \"Error nnn occurred\" and sets I<errno> to "
2944 "B<EINVAL> if the error number is unknown. C99 and POSIX.1-2008 require the "
2945 "return value to be non-NULL."
2947 "POSIX.1-2001 は、 B<strerror>() がエラーに遭遇した場合に I<errno> をセッ\n"
2948 "トすることを認めているが、エラー発生時に関数の結果として どんな値を返す\n"
2949 "べきかを規定してない。 あるシステムでは、 エラー番号が未知の場合、\n"
2950 "B<strerror>() は NULL を返す。 他のシステムでは、 エラー番号が未知の場\n"
2951 "合、 B<strerror>() は \"Error nnn occurred\" といった文字列を返し、\n"
2952 "I<errno> に B<EINVAL> をセットする。 C99 と POSIX.1-2008 では、返り値が\n"
2953 "NULL 以外になることが求められている。"
2956 #: build/C/man3/strerror.3:255
2958 "B<err>(3), B<errno>(3), B<error>(3), B<perror>(3), B<strsignal>(3), "
2961 "B<err>(3), B<errno>(3), B<error>(3), B<perror>(3), B<strsignal>(3), "
2965 #: build/C/man3/strfry.3:30
2971 #: build/C/man3/strfry.3:33
2972 msgid "strfry - randomize a string"
2973 msgstr "strfry - 文字列をランダムに並べ変える"
2976 #: build/C/man3/strfry.3:40
2978 msgid "B<char *strfry(char *>I<string>B<);>\n"
2979 msgstr "B<char *strfry(char *>I<string>B<);>\n"
2982 #: build/C/man3/strfry.3:52
2984 "The B<strfry>() function randomizes the contents of I<string> by using "
2985 "B<rand>(3) to randomly swap characters in the string. The result is an "
2986 "anagram of I<string>."
2988 "B<strfry>() 関数は、文字列 I<string> の内容をランダムに並び換える。 並び換え"
2989 "は、 B<rand>(3) 関数を用いて、文字列中の各文字を無作為に 交換することで実現"
2990 "される。結果は、文字列 I<string> のアナグラムである。"
2993 #: build/C/man3/strfry.3:57
2994 msgid "The B<strfry>() functions returns a pointer to the randomized string."
2996 "B<strfry>() 関数は、ランダムに並び換えられた文字列へのポインタを返す。"
2999 #: build/C/man3/strfry.3:62
3000 msgid "The B<strfry>() function is unique to the GNU C Library."
3001 msgstr "B<strfry>() 関数は GNU C ライブラリに特有である。"
3004 #: build/C/man3/strfry.3:65
3005 msgid "B<memfrob>(3), B<string>(3)"
3006 msgstr "B<memfrob>(3), B<string>(3)"
3009 #: build/C/man3/string.3:30
3015 #: build/C/man3/string.3:30
3021 #: build/C/man3/string.3:36
3023 "stpcpy, strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, "
3024 "strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, "
3025 "strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex - string "
3028 "stpcpy, strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, "
3029 "strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, "
3030 "strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex - 文字列を操"
3034 #: build/C/man3/string.3:38
3035 msgid "B<#include E<lt>strings.hE<gt>>"
3036 msgstr "B<#include E<lt>strings.hE<gt>>"
3039 #: build/C/man3/string.3:38
3041 msgid "B<int strcasecmp(const char *>I<s1>B<, const char *>I<s2>B<);>"
3042 msgstr "B<int strcasecmp(const char *>I<s1>B<, const char *>I<s2>B<);>"
3045 #: build/C/man3/string.3:45
3046 msgid "Compare the strings I<s1> and I<s2> ignoring case."
3047 msgstr "文字列 I<s1> と I<s2> を大文字小文字の違いを無視して比較する。"
3050 #: build/C/man3/string.3:45
3052 msgid "B<int strncasecmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>"
3053 msgstr "B<int strncasecmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>"
3056 #: build/C/man3/string.3:54
3058 "Compare the first I<n> characters of the strings I<s1> and I<s2> ignoring "
3061 "文字列 I<s1> と I<s2> の最初の I<n> 文字を、大文字小文字の違いを無視して比較"
3065 #: build/C/man3/string.3:54
3067 msgid "B<char *index(const char *>I<s>B<, int >I<c>B<);>"
3068 msgstr "B<char *index(const char *>I<s>B<, int >I<c>B<);>"
3071 #: build/C/man3/string.3:60 build/C/man3/string.3:90
3073 "Return a pointer to the first occurrence of the character I<c> in the string "
3075 msgstr "文字列 I<s> 中に最初に文字 I<c> が 現れた位置へのポインタを返す。"
3078 #: build/C/man3/string.3:60
3080 msgid "B<char *rindex(const char *>I<s>B<, int >I<c>B<);>"
3081 msgstr "B<char *rindex(const char *>I<s>B<, int >I<c>B<);>"
3084 #: build/C/man3/string.3:66 build/C/man3/string.3:171
3086 "Return a pointer to the last occurrence of the character I<c> in the string "
3088 msgstr "文字列 I<s> 中に最後に文字 I<c> が 現れた位置へのポインタを返す。"
3091 #: build/C/man3/string.3:66
3093 msgid "B<#include E<lt>string.hE<gt>>"
3094 msgstr "B<#include E<lt>string.hE<gt>>"
3097 #: build/C/man3/string.3:68
3099 msgid "B<char *stpcpy(char *>I<dest>B<, const char *>I<src>B<);>"
3100 msgstr "B<char *stpcpy(char *>I<dest>B<, const char *>I<src>B<);>"
3103 #: build/C/man3/string.3:76
3105 "Copy a string from I<src> to I<dest>, returning a pointer to the end of the "
3106 "resulting string at I<dest>."
3108 "文字列を I<src> から I<dest> にコピーし、 I<dest> に格納された文字列の末尾へ"
3112 #: build/C/man3/string.3:76
3114 msgid "B<char *strcat(char *>I<dest>B<, const char *>I<src>B<);>"
3115 msgstr "B<char *strcat(char *>I<dest>B<, const char *>I<src>B<);>"
3118 #: build/C/man3/string.3:84
3120 "Append the string I<src> to the string I<dest>, returning a pointer I<dest>."
3122 "文字列 I<src> を文字列 I<dest> に追加し、 I<dest> へのポインターを返す。"
3125 #: build/C/man3/string.3:84
3127 msgid "B<char *strchr(const char *>I<s>B<, int >I<c>B<);>"
3128 msgstr "B<char *strchr(const char *>I<s>B<, int >I<c>B<);>"
3131 #: build/C/man3/string.3:90
3133 msgid "B<int strcmp(const char *>I<s1>B<, const char *>I<s2>B<);>"
3134 msgstr "B<int strcmp(const char *>I<s1>B<, const char *>I<s2>B<);>"
3137 #: build/C/man3/string.3:96
3138 msgid "Compare the strings I<s1> with I<s2>."
3139 msgstr "文字列 I<s1> と I<s2> を比較する。"
3142 #: build/C/man3/string.3:96
3144 msgid "B<int strcoll(const char *>I<s1>B<, const char *>I<s2>B<);>"
3145 msgstr "B<int strcoll(const char *>I<s1>B<, const char *>I<s2>B<);>"
3148 #: build/C/man3/string.3:103
3149 msgid "Compare the strings I<s1> with I<s2> using the current locale."
3150 msgstr "現在のロケールを使用して、文字列 I<s1> を I<s2> と比較する"
3153 #: build/C/man3/string.3:103
3155 msgid "B<char *strcpy(char *>I<dest>B<, const char *>I<src>B<);>"
3156 msgstr "B<char *strcpy(char *>I<dest>B<, const char *>I<src>B<);>"
3159 #: build/C/man3/string.3:111
3161 "Copy the string I<src> to I<dest>, returning a pointer to the start of "
3164 "文字列 I<src> を I<dest> にコピーし、 I<dest> の先頭へのポインタを返す。"
3167 #: build/C/man3/string.3:111
3169 msgid "B<size_t strcspn(const char *>I<s>B<, const char *>I<reject>B<);>"
3170 msgstr "B<size_t strcspn(const char *>I<s>B<, const char *>I<reject>B<);>"
3173 #: build/C/man3/string.3:117
3175 "Calculate the length of the initial segment of the string I<s> which does "
3176 "not contain any of bytes in the string I<reject>,"
3178 "文字列 I<s> の、文字列 I<reject> に含まれないバイトだけで構成される最初の部分"
3182 #: build/C/man3/string.3:117
3184 msgid "B<char *strdup(const char *>I<s>B<);>"
3185 msgstr "B<char *strdup(const char *>I<s>B<);>"
3188 #: build/C/man3/string.3:123
3190 "Return a duplicate of the string I<s> in memory allocated using B<malloc>(3)."
3191 msgstr "文字列 I<s> を、B<malloc>(3) を使って確保したメモリに複製して返す。"
3194 #: build/C/man3/string.3:123
3196 msgid "B<char *strfry(char *>I<string>B<);>"
3197 msgstr "B<char *strfry(char *>I<string>B<);>"
3200 #: build/C/man3/string.3:127
3201 msgid "Randomly swap the characters in I<string>."
3202 msgstr "I<string> 中の文字をランダムに並び替える。"
3205 #: build/C/man3/string.3:127
3207 msgid "B<size_t strlen(const char *>I<s>B<);>"
3208 msgstr "B<size_t strlen(const char *>I<s>B<);>"
3211 #: build/C/man3/string.3:131
3212 msgid "Return the length of the string I<s>."
3213 msgstr "文字列 I<s> の長さを返す。"
3216 #: build/C/man3/string.3:131
3218 msgid "B<char *strncat(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>"
3219 msgstr "B<char *strncat(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>"
3222 #: build/C/man3/string.3:141
3224 "Append at most I<n> characters from the string I<src> to the string I<dest>, "
3225 "returning a pointer to I<dest>."
3227 "文字列 I<src> の最大 I<n> 文字を文字列 I<dest> に追加し、I<dest> へのポイン"
3231 #: build/C/man3/string.3:141
3233 msgid "B<int strncmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>"
3234 msgstr "B<int strncmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t >I<n>B<);>"
3237 #: build/C/man3/string.3:149
3238 msgid "Compare at most I<n> bytes of the strings I<s1> and I<s2>."
3239 msgstr "文字列 I<s1> と I<s2> を最大 I<n> バイトまで比較する。"
3242 #: build/C/man3/string.3:149
3244 msgid "B<char *strncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>"
3245 msgstr "B<char *strncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>"
3248 #: build/C/man3/string.3:159
3250 "Copy at most I<n> bytes from string I<src> to I<dest>, returning a pointer "
3251 "to the start of I<dest>."
3253 "文字列 I<src> から I<dest> へ最大 I<n> バイトをコピーし、 I<dest> の先頭への"
3257 #: build/C/man3/string.3:159
3259 msgid "B<char *strpbrk(const char *>I<s>B<, const char *>I<accept>B<);>"
3260 msgstr "B<char *strpbrk(const char *>I<s>B<, const char *>I<accept>B<);>"
3263 #: build/C/man3/string.3:165
3265 "Return a pointer to the first occurrence in the string I<s> of one of the "
3266 "bytes in the string I<accept>."
3268 "文字列 I<accept> に含まれるバイトのいずれかが、文字列 I<s> 内で最初に現れる位"
3272 #: build/C/man3/string.3:165
3274 msgid "B<char *strrchr(const char *>I<s>B<, int >I<c>B<);>"
3275 msgstr "B<char *strrchr(const char *>I<s>B<, int >I<c>B<);>"
3278 #: build/C/man3/string.3:171
3280 msgid "B<char *strsep(char **>I<stringp>B<, const char *>I<delim>B<);>"
3281 msgstr "B<char *strsep(char **>I<stringp>B<, const char *>I<delim>B<);>"
3284 #: build/C/man3/string.3:177
3286 "Extract the initial token in I<stringp> that is delimited by one of the "
3287 "bytes in I<delim>."
3289 "文字列 I<s> から、I<delim> のいずれかのバイトで区切った最初のトークンを取り出"
3293 #: build/C/man3/string.3:177
3295 msgid "B<size_t strspn(const char *>I<s>B<, const char *>I<accept>B<);>"
3296 msgstr "B<size_t strspn(const char *>I<s>B<, const char *>I<accept>B<);>"
3299 #: build/C/man3/string.3:183
3301 "Calculate the length of the starting segment in the string I<s> that "
3302 "consists entirely of bytes in I<accept>."
3304 "文字列 I<s> 中の I<accept> に含まれる文字だけで構成される最初の部分文字列の長"
3308 #: build/C/man3/string.3:183
3310 msgid "B<char *strstr(const char *>I<haystack>B<, const char *>I<needle>B<);>"
3311 msgstr "B<char *strstr(const char *>I<haystack>B<, const char *>I<needle>B<);>"
3314 #: build/C/man3/string.3:190
3316 "Find the first occurrence of the substring I<needle> in the string "
3317 "I<haystack>, returning a pointer to the found substring."
3319 "部分文字列 I<needle> が文字列 I<haystack> 中 で最初に現れる位置を探し、その部"
3323 #: build/C/man3/string.3:190
3325 msgid "B<char *strtok(char *>I<s>B<, const char *>I<delim>B<);>"
3326 msgstr "B<char *strtok(char *>I<s>B<, const char *>I<delim>B<);>"
3329 #: build/C/man3/string.3:196
3331 "Extract tokens from the string I<s> that are delimited by one of the bytes "
3334 "文字列 I<s> から、I<delim> のいずれかのバイトで区切ったトークンを取り出す。"
3337 #: build/C/man3/string.3:196
3339 msgid "B<size_t strxfrm(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>"
3340 msgstr "B<size_t strxfrm(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>"
3343 #: build/C/man3/string.3:204
3345 "Transforms I<src> to the current locale and copies the first I<n> characters "
3348 "I<src> を現在のロケールに変換し、最初の I<n> 文字を I<dest> にコピーする。"
3351 #: build/C/man3/string.3:208
3353 "The string functions perform string operations on null-terminated strings. "
3354 "See the individual man pages for descriptions of each function."
3356 "文字列関数は、ヌル終端された文字列に 対して、文字列操作を実行する。 それぞれ"
3357 "の関数の説明については個々のmanページを見よ。"
3360 #: build/C/man3/string.3:233
3362 "B<index>(3), B<rindex>(3), B<stpcpy>(3), B<strcasecmp>(3), B<strcat>(3), "
3363 "B<strchr>(3), B<strcmp>(3), B<strcoll>(3), B<strcpy>(3), B<strcspn>(3), "
3364 "B<strdup>(3), B<strfry>(3), B<strlen>(3), B<strncasecmp>(3), B<strncat>(3), "
3365 "B<strncmp>(3), B<strncpy>(3), B<strpbrk>(3), B<strrchr>(3), B<strsep>(3), "
3366 "B<strspn>(3), B<strstr>(3), B<strtok>(3), B<strxfrm>(3)"
3368 "B<index>(3), B<rindex>(3), B<stpcpy>(3), B<strcasecmp>(3), B<strcat>(3), "
3369 "B<strchr>(3), B<strcmp>(3), B<strcoll>(3), B<strcpy>(3), B<strcspn>(3), "
3370 "B<strdup>(3), B<strfry>(3), B<strlen>(3), B<strncasecmp>(3), B<strncat>(3), "
3371 "B<strncmp>(3), B<strncpy>(3), B<strpbrk>(3), B<strrchr>(3), B<strsep>(3), "
3372 "B<strspn>(3), B<strstr>(3), B<strtok>(3), B<strxfrm>(3)"
3375 #: build/C/man3/strlen.3:30
3381 #: build/C/man3/strlen.3:30 build/C/man3/strnlen.3:13
3382 #: build/C/man3/strpbrk.3:30 build/C/man3/strsep.3:33
3388 #: build/C/man3/strlen.3:33
3389 msgid "strlen - calculate the length of a string"
3390 msgstr "strlen - 文字列の長さを計算する"
3393 #: build/C/man3/strlen.3:38
3395 msgid "B<size_t strlen(const char *>I<s>B<);>\n"
3396 msgstr "B<size_t strlen(const char *>I<s>B<);>\n"
3399 #: build/C/man3/strlen.3:45
3401 "The B<strlen>() function calculates the length of the string I<s>, "
3402 "excluding the terminating null byte (\\(aq\\e0\\(aq)."
3404 "B<strlen>() 関数は文字列 I<s> の長さを計算する。 このとき、終端ヌルバイト "
3405 "(\\(aq\\e0\\(aq) は計算に含まれない。"
3408 #: build/C/man3/strlen.3:50
3410 "The B<strlen>() function returns the number of bytes in the string I<s>."
3411 msgstr "B<strlen>() 関数は文字列 I<s> のバイト数を返す。"
3414 #: build/C/man3/strlen.3:55
3415 msgid "The B<strlen>() function is thread-safe."
3416 msgstr "B<strlen>() 関数はスレッドセーフである。"
3419 #: build/C/man3/strlen.3:62
3420 msgid "B<string>(3), B<strnlen>(3), B<wcslen>(3), B<wcsnlen>(3)"
3421 msgstr "B<string>(3), B<strnlen>(3), B<wcslen>(3), B<wcsnlen>(3)"
3424 #: build/C/man3/strnlen.3:13
3430 #: build/C/man3/strnlen.3:16
3431 msgid "strnlen - determine the length of a fixed-size string"
3432 msgstr "strnlen - 固定長の文字列の長さを調べる"
3435 #: build/C/man3/strnlen.3:21
3437 msgid "B<size_t strnlen(const char *>I<s>B<, size_t >I<maxlen>B<);>\n"
3438 msgstr "B<size_t strnlen(const char *>I<s>B<, size_t >I<maxlen>B<);>\n"
3441 #: build/C/man3/strnlen.3:29
3442 msgid "B<strnlen>():"
3443 msgstr "B<strnlen>():"
3446 #: build/C/man3/strnlen.3:58
3448 "The B<strnlen>() function returns the number of bytes in the string pointed "
3449 "to by I<s>, excluding the terminating null byte (\\(aq\\e0\\(aq), but at "
3450 "most I<maxlen>. In doing this, B<strnlen>() looks only at the first "
3451 "I<maxlen> bytes at I<s> and never beyond I<s+maxlen>."
3453 "B<strnlen>() 関数は I<s> が指す文字列の長さをバイト数で返す。 長さには\n"
3454 "終端のヌルバイト (\\(aq\\e0\\(aq) は含まない。 また長さは最大で\n"
3455 "I<maxlen> までであり、 B<strnlen>() は I<s> の最初の I<maxlen> バイト\n"
3456 "のみを検査し I<s+maxlen> より先を検査することはない。"
3459 #: build/C/man3/strnlen.3:71
3461 "The B<strnlen>() function returns I<strlen(s)>, if that is less than "
3462 "I<maxlen>, or I<maxlen> if there is no null byte (\\(aq\\e0\\(aq) among the "
3463 "first I<maxlen> bytes pointed to by I<s>."
3465 "B<strnlen>() 関数は I<maxlen> 以下ならば I<strlen(s)> と同じ値を返す。\n"
3466 "I<s> の指す文字列が最大 I<maxlen> バイトまでにヌルバイト\n"
3467 "(\\(aq\\e0\\(aq) 文字を含まない場合には I<maxlen> を返す。"
3470 #: build/C/man3/strnlen.3:76
3471 msgid "The B<strnlen>() function is thread-safe."
3472 msgstr "B<strnlen>() 関数はスレッドセーフである。"
3475 #: build/C/man3/strnlen.3:78
3476 msgid "POSIX.1-2008."
3477 msgstr "POSIX.1-2008."
3480 #: build/C/man3/strnlen.3:80
3481 msgid "B<strlen>(3)"
3482 msgstr "B<strlen>(3)"
3485 #: build/C/man3/strpbrk.3:30
3491 #: build/C/man3/strpbrk.3:33
3492 msgid "strpbrk - search a string for any of a set of bytes"
3493 msgstr "strpbrk - 文字列からバイト集合に含まれるバイトを探す"
3496 #: build/C/man3/strpbrk.3:38
3498 msgid "B<char *strpbrk(const char *>I<s>B<, const char *>I<accept>B<);>\n"
3499 msgstr "B<char *strpbrk(const char *>I<s>B<, const char *>I<accept>B<);>\n"
3502 #: build/C/man3/strpbrk.3:47
3504 "The B<strpbrk>() function locates the first occurrence in the string I<s> "
3505 "of any of the bytes in the string I<accept>."
3507 "B<strpbrk>() 関数は、文字列 I<accept> に含まれるバイトのいずれかが、\n"
3508 "文字列 I<s> 内で最初に現れる位置を特定する。"
3511 #: build/C/man3/strpbrk.3:56
3513 "The B<strpbrk>() function returns a pointer to the byte in I<s> that "
3514 "matches one of the bytes in I<accept>, or NULL if no such byte is found."
3516 "B<strpbrk>() 関数は、I<s> 内のバイトで、I<accept> に含まれる\n"
3517 "バイトのいずれかに一致したバイトへのポインタを返す。\n"
3518 "I<accept> に含まれるバイトが見つからなかった場合は NULL を返す。"
3521 #: build/C/man3/strpbrk.3:61
3522 msgid "The B<strpbrk>() function is thread-safe."
3523 msgstr "B<strpbrk>() 関数はスレッドセーフである。"
3526 #: build/C/man3/strpbrk.3:74
3528 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3529 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), B<wcspbrk>(3)"
3531 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3532 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), B<wcspbrk>(3)"
3535 #: build/C/man3/strsep.3:33
3541 #: build/C/man3/strsep.3:36
3542 msgid "strsep - extract token from string"
3543 msgstr "strsep - 文字列からトークンを取り出す"
3546 #: build/C/man3/strsep.3:41
3548 msgid "B<char *strsep(char **>I<stringp>B<, const char *>I<delim>B<);>\n"
3549 msgstr "B<char *strsep(char **>I<stringp>B<, const char *>I<delim>B<);>\n"
3552 #: build/C/man3/strsep.3:50
3553 msgid "B<strsep>(): _BSD_SOURCE"
3554 msgstr "B<strsep>(): _BSD_SOURCE"
3557 #: build/C/man3/strsep.3:73
3559 "If I<*stringp> is NULL, the B<strsep>() function returns NULL and does "
3560 "nothing else. Otherwise, this function finds the first token in the string "
3561 "I<*stringp>, that is delimited by one of the bytes in the string I<delim>. "
3562 "This token is terminated by overwriting the delimiter with a null byte (\\(aq"
3563 "\\e0\\(aq), and I<*stringp> is updated to point past the token. In case no "
3564 "delimiter was found, the token is taken to be the entire string I<*stringp>, "
3565 "and I<*stringp> is made NULL."
3567 "I<*stringp> が NULL の場合、 B<strsep>() 関数は何もせずに NULL を返す。 さも"
3568 "なければ、文字列 I<stringp> を I<delim> に含まれるいずれかのバイトで区切った"
3569 "トークンのうち最初のものを返す。 トークンは、区切り文字をヌルバイト (\\(aq"
3570 "\\e0\\(aq) で上書きすることで 終端される。 I<*stringp> は切り出されたトークン"
3571 "の次の位置を示すように更新される。 区切り文字が見つからない場合、I<*stringp> "
3572 "文字列全体がトークンとして 扱われ、I<*stringp> は NULL となる。"
3575 #: build/C/man3/strsep.3:79
3577 "The B<strsep>() function returns a pointer to the token, that is, it "
3578 "returns the original value of I<*stringp>."
3580 "B<strsep>() 関数は、トークンへのポインタを返す。 つまり、元の I<*stringp> の"
3584 #: build/C/man3/strsep.3:84
3585 msgid "The B<strsep>() function is thread-safe."
3586 msgstr "B<strsep>() 関数はスレッドセーフである。"
3589 #: build/C/man3/strsep.3:86
3594 #: build/C/man3/strsep.3:95
3596 "The B<strsep>() function was introduced as a replacement for B<strtok>(3), "
3597 "since the latter cannot handle empty fields. However, B<strtok>(3) "
3598 "conforms to C89/C99 and hence is more portable."
3600 "B<strsep>() 関数は、 B<strtok>(3) 関数が空のフィールドを 扱えないために、そ"
3601 "の代替品として導入された。 しかしながら、 B<strtok>(3) 関数は C89/C99 に準拠"
3605 #: build/C/man3/strsep.3:98
3606 msgid "Be cautious when using this function. If you do use it, note that:"
3608 "この関数を使う時は注意すること。 もし使うなら、以下のことに注意すること。"
3611 #: build/C/man3/strsep.3:100
3612 msgid "This function modifies its first argument."
3613 msgstr "この関数は最初の引数を変更する。"
3616 #: build/C/man3/strsep.3:102
3617 msgid "This function cannot be used on constant strings."
3618 msgstr "この関数は定数文字列には使えない。"
3621 #: build/C/man3/strsep.3:104
3622 msgid "The identity of the delimiting character is lost."
3623 msgstr "区切り文字自体は失われてしまう。"
3626 #: build/C/man3/strsep.3:114
3628 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3629 "B<strpbrk>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
3631 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3632 "B<strpbrk>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
3635 #: build/C/man3/strsignal.3:30
3641 #: build/C/man3/strsignal.3:30
3647 #: build/C/man3/strsignal.3:33
3648 msgid "strsignal - return string describing signal"
3649 msgstr "strsignal - シグナルを説明する文字列を返す"
3652 #: build/C/man3/strsignal.3:38
3654 msgid "B<char *strsignal(int >I<sig>B<);>\n"
3655 msgstr "B<char *strsignal(int >I<sig>B<);>\n"
3658 #: build/C/man3/strsignal.3:40
3660 msgid "B<extern const char * const >I<sys_siglist>B<[];>\n"
3661 msgstr "B<extern const char * const >I<sys_siglist>B<[];>\n"
3664 #: build/C/man3/strsignal.3:48
3665 msgid "B<strsignal>():"
3666 msgstr "B<strsignal>():"
3669 #: build/C/man3/strsignal.3:68
3671 "The B<strsignal>() function returns a string describing the signal number "
3672 "passed in the argument I<sig>. The string can be used only until the next "
3673 "call to B<strsignal>()."
3675 "B<strsignal>() 関数は、引数 I<sig> で渡されたシグナル番号を 説明する文字列を"
3676 "返す。 文字列は、次の B<strsignal>() が呼ばれるまでの間だけ使用できる。"
3679 #: build/C/man3/strsignal.3:77
3681 "The array I<sys_siglist> holds the signal description strings indexed by "
3682 "signal number. The B<strsignal>() function should be used if possible "
3683 "instead of this array."
3685 "配列 I<sys_siglist> はシグナルを説明する文字列を保持しており、 配列へのアクセ"
3686 "スにはシグナル番号を添え字として用いる事ができる。 出来るだけこの配列の代わり"
3687 "に B<strsignal>() 関数を 使うべきである。"
3690 #: build/C/man3/strsignal.3:84
3692 "The B<strsignal>() function returns the appropriate description string, or "
3693 "an unknown signal message if the signal number is invalid. On some systems "
3694 "(but not on Linux), NULL may instead be returned for an invalid signal "
3697 "B<strsignal>() 関数は、シグナルの適切な説明を返す。 もしシグナル番号が不正な"
3698 "場合は、未知のシグナル (unknown signal) を示す メッセージを返す。 (Linux はそ"
3699 "うではないが)不正なシグナル番号に対して、 NULL を返すシステムもある。"
3702 #: build/C/man3/strsignal.3:87
3703 msgid "POSIX.1-2008. Present on Solaris and the BSDs."
3704 msgstr "POSIX.1-2008. Solaris と BSD 系にも存在する。"
3707 #: build/C/man3/strsignal.3:90
3708 msgid "B<psignal>(3), B<strerror>(3)"
3709 msgstr "B<psignal>(3), B<strerror>(3)"
3712 #: build/C/man3/strspn.3:30
3718 #: build/C/man3/strspn.3:30
3724 #: build/C/man3/strspn.3:33
3725 msgid "strspn, strcspn - get length of a prefix substring"
3726 msgstr "strspn, strcspn - プレフィックス部分文字列の長さを返す"
3729 #: build/C/man3/strspn.3:38
3731 msgid "B<size_t strspn(const char *>I<s>B<, const char *>I<accept>B<);>\n"
3732 msgstr "B<size_t strspn(const char *>I<s>B<, const char *>I<accept>B<);>\n"
3735 #: build/C/man3/strspn.3:40
3737 msgid "B<size_t strcspn(const char *>I<s>B<, const char *>I<reject>B<);>\n"
3738 msgstr "B<size_t strcspn(const char *>I<s>B<, const char *>I<reject>B<);>\n"
3741 #: build/C/man3/strspn.3:49
3743 "The B<strspn>() function calculates the length (in bytes) of the initial "
3744 "segment of I<s> which consists entirely of bytes in I<accept>."
3746 "B<strspn>() 関数は、 I<s> から、I<accept> に含まれる文字だけで\n"
3747 "構成される最初の部分文字列を探し、\n"
3748 "その部分の (バイト単位の) 長さを計算する。"
3751 #: build/C/man3/strspn.3:57
3753 "The B<strcspn>() function calculates the length of the initial segment of "
3754 "I<s> which consists entirely of bytes not in I<reject>."
3756 "B<strcspn>() 関数は、 I<s> から、I<reject> に含まれない文字だけで\n"
3757 "構成される最初の部分文字列を探し、\n"
3758 "その部分の (バイト単位の) 長さを計算する。"
3761 #: build/C/man3/strspn.3:66
3763 "The B<strspn>() function returns the number of bytes in the initial segment "
3764 "of I<s> which consist only of bytes from I<accept>."
3766 "B<strspn>() 関数は、 I<s> 内の、I<accept> からの文字だけで\n"
3767 "構成される最初の部分文字列のバイト数を返す。"
3770 #: build/C/man3/strspn.3:74
3772 "The B<strcspn>() function returns the number of bytes in the initial "
3773 "segment of I<s> which are not in the string I<reject>."
3775 "B<strcspn>() 関数は、I<s> 内の、文字列 I<reject> に含まれない\n"
3776 "文字だけで構成される最初の部分文字列のバイト数を返す。"
3779 #: build/C/man3/strspn.3:81
3780 msgid "The B<strspn>() and B<strcspn>() functions are thread-safe."
3781 msgstr "関数 B<strspn>() と B<strcspn>() はスレッドセーフである。"
3784 #: build/C/man3/strspn.3:95
3786 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3787 "B<strpbrk>(3), B<strsep>(3), B<strstr>(3), B<strtok>(3), B<wcscspn>(3), "
3790 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
3791 "B<strpbrk>(3), B<strsep>(3), B<strstr>(3), B<strtok>(3), B<wcscspn>(3), "
3795 #: build/C/man3/strstr.3:33
3801 #: build/C/man3/strstr.3:33
3807 #: build/C/man3/strstr.3:36
3808 msgid "strstr, strcasestr - locate a substring"
3809 msgstr "strstr, strcasestr - 部分文字列の位置を示す"
3812 #: build/C/man3/strstr.3:41
3814 msgid "B<char *strstr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
3815 msgstr "B<char *strstr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
3818 #: build/C/man3/strstr.3:47
3820 msgid "B<char *strcasestr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
3821 msgstr "B<char *strcasestr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
3824 #: build/C/man3/strstr.3:56
3826 "The B<strstr>() function finds the first occurrence of the substring "
3827 "I<needle> in the string I<haystack>. The terminating null bytes (\\(aq"
3828 "\\e0\\(aq) are not compared."
3830 "B<strstr>() 関数は、部分文字列 I<needle> が文字列 I<haystack> 中 で最初に現"
3831 "れる位置を見つける。 文字列を終端ヌルバイト (\\(aq\\e0\\(aq) は比較されない。"
3834 #: build/C/man3/strstr.3:62
3836 "The B<strcasestr>() function is like B<strstr>(), but ignores the case of "
3839 "B<strcasestr>() 関数は B<strstr>() 関数と同様だが、 両方の引数に対して大文"
3843 #: build/C/man3/strstr.3:65
3845 "These functions return a pointer to the beginning of the located substring, "
3846 "or NULL if the substring is not found."
3848 "これらの関数は、見つかった部分文字列の開始を指すポインタを返し、 もし部分文字"
3849 "列が見つからない場合は NULL を返す。"
3852 #: build/C/man3/strstr.3:70
3853 msgid "The B<strstr>() function is thread-safe."
3854 msgstr "B<strstr>() 関数はスレッドセーフである。"
3857 #: build/C/man3/strstr.3:77
3859 "The B<strcasestr>() function is thread-safe with exceptions. It can be "
3860 "safely used in multithreaded applications, as long as B<setlocale>(3) is "
3861 "not called to change the locale during its execution."
3863 "B<strcasestr>() 関数は、例外付きのスレッドセーフである。実行中に "
3864 "B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリ"
3865 "ケーションで安全に使用することができる。"
3868 #: build/C/man3/strstr.3:84
3870 "The B<strstr>() function conforms to C89 and C99. The B<strcasestr>() "
3871 "function is a nonstandard extension."
3873 "B<strstr>() 関数は C89 と C99 に準拠している。 B<strcasestr>() 関数は非標準"
3877 #: build/C/man3/strstr.3:96
3879 "Early versions of Linux libc (like 4.5.26) would not allow an empty "
3880 "I<needle> argument for B<strstr>(). Later versions (like 4.6.27) work "
3881 "correctly, and return I<haystack> when I<needle> is empty."
3883 "Linux libc の初期のバージョン(4.5.26 まで)は B<strstr>() 関数の I<needle> 引"
3884 "数に空文字列を指定できない。 最近のバージョン(4.6.27 以降)は正しく動作し、 "
3885 "I<needle> が空の時は I<haystack> を返す。"
3888 #: build/C/man3/strstr.3:108
3890 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strcasecmp>(3), B<strchr>(3), "
3891 "B<string>(3), B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strtok>(3), "
3894 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strcasecmp>(3), B<strchr>(3), "
3895 "B<string>(3), B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strtok>(3), "
3899 #: build/C/man3/strtok.3:32
3905 #: build/C/man3/strtok.3:32
3911 #: build/C/man3/strtok.3:35
3912 msgid "strtok, strtok_r - extract tokens from strings"
3913 msgstr "strtok, strtok_r - 文字列からトークンを取り出す"
3916 #: build/C/man3/strtok.3:40
3918 msgid "B<char *strtok(char *>I<str>B<, const char *>I<delim>B<);>\n"
3919 msgstr "B<char *strtok(char *>I<str>B<, const char *>I<delim>B<);>\n"
3922 #: build/C/man3/strtok.3:42
3924 msgid "B<char *strtok_r(char *>I<str>B<, const char *>I<delim>B<, char **>I<saveptr>B<);>\n"
3925 msgstr "B<char *strtok_r(char *>I<str>B<, const char *>I<delim>B<, char **>I<saveptr>B<);>\n"
3928 #: build/C/man3/strtok.3:53
3930 "B<strtok_r>(): _SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 1 "
3931 "|| _XOPEN_SOURCE || _POSIX_SOURCE"
3933 "B<strtok_r>(): _SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 1 "
3934 "|| _XOPEN_SOURCE || _POSIX_SOURCE"
3937 #: build/C/man3/strtok.3:66
3939 "The B<strtok>() function breaks a string into a sequence of zero or more "
3940 "nonempty tokens. On the first call to B<strtok>() the string to be parsed "
3941 "should be specified in I<str>. In each subsequent call that should parse "
3942 "the same string, I<str> must be NULL."
3944 "B<strtok>() 関数は文字列を 0 個以上の空でないトークンの列に分割する。 "
3945 "B<strtok>() を最初に呼び出す際には、解析対象の文字列を I<str> に 指定する。"
3946 "同じ文字列の解析を行うその後の呼び出しでは、 I<str> は NULL にしなければなら"
3950 #: build/C/man3/strtok.3:75
3952 "The I<delim> argument specifies a set of bytes that delimit the tokens in "
3953 "the parsed string. The caller may specify different strings in I<delim> in "
3954 "successive calls that parse the same string."
3956 "I<delim> 引き数には、解析対象の文字列をトークンに区切るのに使用する\n"
3957 "バイト集合を指定する。同じ文字列を解析する一連の呼び出しにおいて、\n"
3958 "I<delim> に違う文字列を指定してもよい。"
3961 #: build/C/man3/strtok.3:84
3963 "Each call to B<strtok>() returns a pointer to a null-terminated string "
3964 "containing the next token. This string does not include the delimiting "
3965 "byte. If no more tokens are found, B<strtok>() returns NULL."
3967 "B<strtok>() のそれぞれの呼び出しでは、次のトークンを格納したヌル終端\n"
3968 "された文字列へのポインタが返される。この文字列には区切りバイトは含まれ\n"
3969 "ない。これ以上トークンが見つからなかった場合には、NULL が返される。"
3972 #: build/C/man3/strtok.3:104
3974 "A sequence of calls to B<strtok>() that operate on the same string "
3975 "maintains a pointer that determines the point from which to start searching "
3976 "for the next token. The first call to B<strtok>() sets this pointer to "
3977 "point to the first byte of the string. The start of the next token is "
3978 "determined by scanning forward for the next nondelimiter byte in I<str>. If "
3979 "such a byte is found, it is taken as the start of the next token. If no "
3980 "such byte is found, then there are no more tokens, and B<strtok>() returns "
3981 "NULL. (A string that is empty or that contains only delimiters will thus "
3982 "cause B<strtok>() to return NULL on the first call.)"
3984 "同じ文字列に対して操作を行う B<strtok>() を連続して呼び出す場合、 次のトーク"
3985 "ンを探し始める位置を決めるためのポインタが保持される。 最初の B<strtok> の呼"
3986 "び出しでは、 このポインタは対象の文字列の最初のバイトにセットされる。 次の"
3987 "トークンの先頭は、 I<str> 内で次の区切りバイト以外のバイトを前方に検索して決"
3988 "定される。 区切りバイト以外のバイトが見つからなかった場合は、 トークンはこれ"
3989 "以上なく、 B<strtok>() は NULL を返す (したがって、 空の文字列や区切りバイト"
3990 "だけを含む文字列の場合には、 最初の B<strtok>() の呼び出しで NULL が返ること"
3994 #: build/C/man3/strtok.3:117
3996 "The end of each token is found by scanning forward until either the next "
3997 "delimiter byte is found or until the terminating null byte (\\(aq\\e0\\(aq) "
3998 "is encountered. If a delimiter byte is found, it is overwritten with a null "
3999 "byte to terminate the current token, and B<strtok>() saves a pointer to the "
4000 "following byte; that pointer will be used as the starting point when "
4001 "searching for the next token. In this case, B<strtok>() returns a pointer "
4002 "to the start of the found token."
4004 "各トークンの末尾は、次の区切りバイトが見つかるか、終端のヌルバイト (\\(aq"
4005 "\\e0\\(aq) に達するまで文字列を前方に検索することで見つかる。 区切りバイトが"
4006 "見つかった場合には、 現在のトークンの終わりを示すために、 見つかった区切りバ"
4007 "イトがヌルバイトで上書きされ、 B<strtok>() はポインタを次のバイトに設定す"
4008 "る。 このポインタは、次のトークンを検索する際の開始点として使用される。 この"
4009 "場合、 B<strtok>() は見つかったトークンの先頭へのポインタを返す。"
4012 #: build/C/man3/strtok.3:131
4014 "From the above description, it follows that a sequence of two or more "
4015 "contiguous delimiter bytes in the parsed string is considered to be a single "
4016 "delimiter, and that delimiter bytes at the start or end of the string are "
4017 "ignored. Put another way: the tokens returned by B<strtok>() are always "
4018 "nonempty strings. Thus, for example, given the string \"I<aaa;;bbb,>\", "
4019 "successive calls to B<strtok>() that specify the delimiter string \"I<;,>\" "
4020 "would return the strings \"I<aaa>\" and \"I<bbb>\", and then a null pointer."
4022 "上記の説明の通り、 解析対象の文字列に 2 つ以上の区切りバイトが連続している場"
4023 "合には、 一つの区切りバイトとみなされ、 文字列の先頭や末尾にある区切りバイト"
4024 "は無視される。 言い換えると、 B<strtok>() が返すトークンは必ず空でない文字列"
4025 "となる。 したがって、例えば \"I<aaa;;bbb,>\" という文字列が与えられたとする"
4026 "と、 区切り文字列 \"I<;,>\" を指定した一連の B<strtok>() の呼び出しでは、 "
4027 "\"I<aaa>\" と I<bbb>\" が返り、その次にヌルポインタが返る。"
4030 #: build/C/man3/strtok.3:144
4032 "The B<strtok_r>() function is a reentrant version B<strtok>(). The "
4033 "I<saveptr> argument is a pointer to a I<char\\ *> variable that is used "
4034 "internally by B<strtok_r>() in order to maintain context between successive "
4035 "calls that parse the same string."
4037 "B<strtok_r>() 関数は B<strtok>() のリエントラント版である。 I<saveptr> 引き"
4038 "数は I<char\\ *> 変数へのポインタであり、 同じ文字列の解析を行う "
4039 "B<strtok_r>() の呼び出し間で処理状況を保存するために B<strtok_r>() 内部で使"
4043 #: build/C/man3/strtok.3:156
4045 "On the first call to B<strtok_r>(), I<str> should point to the string to be "
4046 "parsed, and the value of I<saveptr> is ignored. In subsequent calls, I<str> "
4047 "should be NULL, and I<saveptr> should be unchanged since the previous call."
4049 "B<strtok_r>() を最初に呼び出す際には、 I<str> は解析対象の文字列を指していな"
4050 "ければならず、 I<saveptr> の値は無視される。それ以降の呼び出しでは、 I<str> "
4051 "は NULL とし、 I<saveptr> は前回の呼び出し以降変更しないようにしなければなら"
4055 #: build/C/man3/strtok.3:162
4057 "Different strings may be parsed concurrently using sequences of calls to "
4058 "B<strtok_r>() that specify different I<saveptr> arguments."
4060 "B<strtok_r>() の呼び出し時に異なる I<saveptr> 引き数を指定することで、 異な"
4061 "る文字列の解析を同時に行うことができる。"
4064 #: build/C/man3/strtok.3:169
4066 "The B<strtok>() and B<strtok_r>() functions return a pointer to the next "
4067 "token, or NULL if there are no more tokens."
4069 "B<strtok>() と B<strtok_r>() は次のトークンへのポインタか、 トークンがなけ"
4073 #: build/C/man3/strtok.3:174
4074 msgid "The B<strtok>() function is not thread-safe."
4075 msgstr "The B<strtok>() 関数はスレッドセーフではない。"
4078 #: build/C/man3/strtok.3:178
4079 msgid "The B<strtok_r>() function is thread-safe."
4080 msgstr "B<strtok_r>() 関数はスレッドセーフである。"
4083 #: build/C/man3/strtok.3:179
4086 msgstr "B<strtok>()"
4089 #: build/C/man3/strtok.3:182
4090 msgid "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
4091 msgstr "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
4094 #: build/C/man3/strtok.3:182
4096 msgid "B<strtok_r>()"
4097 msgstr "B<strtok_r>()"
4100 #: build/C/man3/strtok.3:185
4101 msgid "POSIX.1-2001."
4102 msgstr "POSIX.1-2001."
4105 #: build/C/man3/strtok.3:188
4106 msgid "Be cautious when using these functions. If you do use them, note that:"
4108 "これらの関数を使うのは慎重に吟味すること。 使用する場合は、以下の点に注意が必"
4112 #: build/C/man3/strtok.3:190
4113 msgid "These functions modify their first argument."
4114 msgstr "これらの関数はその最初の引数を変更する。"
4117 #: build/C/man3/strtok.3:192
4118 msgid "These functions cannot be used on constant strings."
4119 msgstr "これらの関数は const な文字列では使えない。"
4122 #: build/C/man3/strtok.3:194
4123 msgid "The identity of the delimiting byte is lost."
4124 msgstr "区切りバイト自体は失われてしまう。"
4127 #: build/C/man3/strtok.3:201
4129 "The B<strtok>() function uses a static buffer while parsing, so it's not "
4130 "thread safe. Use B<strtok_r>() if this matters to you."
4132 "B<strtok>() 関数は文字列の解析に静的バッファを用いるので、スレッドセーフでな"
4133 "い。 これが問題になる場合は B<strtok_r>() を用いること。"
4136 #: build/C/man3/strtok.3:210
4138 "The program below uses nested loops that employ B<strtok_r>() to break a "
4139 "string into a two-level hierarchy of tokens. The first command-line "
4140 "argument specifies the string to be parsed. The second argument specifies "
4141 "the delimiter byte(s) to be used to separate that string into \"major\" "
4142 "tokens. The third argument specifies the delimiter byte(s) to be used to "
4143 "separate the \"major\" tokens into subtokens."
4145 "以下のプログラムは、 B<strtok_r>() を利用するループを入れ子にして使用し、\n"
4146 "文字列を 2 階層のトークンに分割するものである。 1番目のコマンドライン\n"
4147 "引き数には、解析対象の文字列を指定する。 2 番目の引き数には、文字列を\n"
4148 "「大きな」トークンに分割するために 使用する区切りバイトを指定する。\n"
4149 "3 番目の引き数には、「大きな」トークンを細かく分割するために使用する\n"
4153 #: build/C/man3/strtok.3:212
4154 msgid "An example of the output produced by this program is the following:"
4155 msgstr "このプログラムの出力例を以下に示す。"
4158 #: build/C/man3/strtok.3:224
4161 "$B< ./a.out \\(aqa/bbb///cc;xxx:yyy:\\(aq \\(aq:;\\(aq \\(aq/\\(aq>\n"
4171 "$B< ./a.out \\(aqa/bbb///cc;xxx:yyy:\\(aq \\(aq:;\\(aq \\(aq/\\(aq>\n"
4182 #: build/C/man3/strtok.3:226
4184 msgid "Program source"
4188 #: build/C/man3/strtok.3:232
4191 "#include E<lt>stdio.hE<gt>\n"
4192 "#include E<lt>stdlib.hE<gt>\n"
4193 "#include E<lt>string.hE<gt>\n"
4195 "#include E<lt>stdio.hE<gt>\n"
4196 "#include E<lt>stdlib.hE<gt>\n"
4197 "#include E<lt>string.hE<gt>\n"
4200 #: build/C/man3/strtok.3:239
4204 "main(int argc, char *argv[])\n"
4206 " char *str1, *str2, *token, *subtoken;\n"
4207 " char *saveptr1, *saveptr2;\n"
4211 "main(int argc, char *argv[])\n"
4213 " char *str1, *str2, *token, *subtoken;\n"
4214 " char *saveptr1, *saveptr2;\n"
4218 #: build/C/man3/strtok.3:245
4221 " if (argc != 4) {\n"
4222 " fprintf(stderr, \"Usage: %s string delim subdelim\\en\",\n"
4224 " exit(EXIT_FAILURE);\n"
4227 " if (argc != 4) {\n"
4228 " fprintf(stderr, \"Usage: %s string delim subdelim\\en\",\n"
4230 " exit(EXIT_FAILURE);\n"
4234 #: build/C/man3/strtok.3:251
4237 " for (j = 1, str1 = argv[1]; ; j++, str1 = NULL) {\n"
4238 " token = strtok_r(str1, argv[2], &saveptr1);\n"
4239 " if (token == NULL)\n"
4241 " printf(\"%d: %s\\en\", j, token);\n"
4243 " for (j = 1, str1 = argv[1]; ; j++, str1 = NULL) {\n"
4244 " token = strtok_r(str1, argv[2], &saveptr1);\n"
4245 " if (token == NULL)\n"
4247 " printf(\"%d: %s\\en\", j, token);\n"
4250 #: build/C/man3/strtok.3:259
4253 " for (str2 = token; ; str2 = NULL) {\n"
4254 " subtoken = strtok_r(str2, argv[3], &saveptr2);\n"
4255 " if (subtoken == NULL)\n"
4257 " printf(\"\\t --E<gt> %s\\en\", subtoken);\n"
4261 " for (str2 = token; ; str2 = NULL) {\n"
4262 " subtoken = strtok_r(str2, argv[3], &saveptr2);\n"
4263 " if (subtoken == NULL)\n"
4265 " printf(\"\\t --E<gt> %s\\en\", subtoken);\n"
4270 #: build/C/man3/strtok.3:262
4273 " exit(EXIT_SUCCESS);\n"
4276 " exit(EXIT_SUCCESS);\n"
4280 #: build/C/man3/strtok.3:268
4282 "Another example program using B<strtok>() can be found in "
4283 "B<getaddrinfo_a>(3)."
4284 msgstr "B<strtok>() を使った別のプログラム例が B<getaddrinfo_a>(3) にある。"
4287 #: build/C/man3/strtok.3:279
4289 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
4290 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wcstok>(3)"
4292 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
4293 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wcstok>(3)"
4296 #: build/C/man3/strverscmp.3:25
4302 #: build/C/man3/strverscmp.3:25
4308 #: build/C/man3/strverscmp.3:28
4309 msgid "strverscmp - compare two version strings"
4310 msgstr "strverscmp - 2つのバージョン文字列を比較する"
4313 #: build/C/man3/strverscmp.3:35
4315 msgid "B<int strverscmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
4316 msgstr "B<int strverscmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
4318 #. classical solution: "rename jan jan0 jan?"
4320 #: build/C/man3/strverscmp.3:52
4322 "Often one has files I<jan1>, I<jan2>, ..., I<jan9>, I<jan10>, ... and it "
4323 "feels wrong when B<ls>(1) orders them I<jan1>, I<jan10>, ..., I<jan2>, ..., "
4324 "I<jan9>. In order to rectify this, GNU introduced the I<-v> option to "
4325 "B<ls>(1), which is implemented using B<versionsort>(3), which again uses "
4328 "I<jan1>, I<jan2>, ..., I<jan9>, I<jan10>, ... といった名前のファイルがある状"
4329 "況はよくあるが、 B<ls>(1) を実行したときに I<jan1>, I<jan10>, ..., "
4330 "I<jan2>, ..., I<jan9> の順番で表示されるのには違和感がある。 これを修正するた"
4331 "めに、GNU は B<ls>(1) に I<-v> オプションを導入した。 この機能は "
4332 "B<versionsort>(3) を使って実装されているが、この中で B<strverscmp>() が使用"
4336 #: build/C/man3/strverscmp.3:63
4338 "Thus, the task of B<strverscmp>() is to compare two strings and find the "
4339 "\"right\" order, while B<strcmp>(3) finds only the lexicographic order. "
4340 "This function does not use the locale category B<LC_COLLATE>, so is meant "
4341 "mostly for situations where the strings are expected to be in ASCII."
4343 "このように B<strverscmp>() の役目は2つの文字列を比較して「正しい」順序を探す"
4344 "ことである。 これに対して B<strcmp>(3) は辞書順だけで比較した結果を返す。 関"
4345 "数 B<strverscmp>() はロケールのカテゴリである B<LC_COLLATE> を使用しない。 "
4346 "このことから、この関数が主にアスキー文字から成る文字列を 想定していることが分"
4350 #: build/C/man3/strverscmp.3:81
4352 "What this function does is the following. If both strings are equal, return "
4353 "0. Otherwise, find the position between two bytes with the property that "
4354 "before it both strings are equal, while directly after it there is a "
4355 "difference. Find the largest consecutive digit strings containing (or "
4356 "starting at, or ending at) this position. If one or both of these is empty, "
4357 "then return what B<strcmp>(3) would have returned (numerical ordering of "
4358 "byte values). Otherwise, compare both digit strings numerically, where "
4359 "digit strings with one or more leading zeros are interpreted as if they have "
4360 "a decimal point in front (so that in particular digit strings with more "
4361 "leading zeros come before digit strings with fewer leading zeros). Thus, "
4362 "the ordering is I<000>, I<00>, I<01>, I<010>, I<09>, I<0>, I<1>, I<9>, I<10>."
4364 "この関数の動作は以下の通りである。 両方の文字列が等しい場合、0 を返す。 それ"
4365 "以外の場合、その直前までは両方の文字列が等しく、 その直後のバイトで両者に違い"
4366 "があるような、バイトの境界を探す。 見つかったバイト境界を含む数字列(数字だけ"
4367 "の文字列)の最長一致検索を行う。 (数字列は境界から始まっていても、境界で終わっ"
4368 "ていてもよい)。 2つの文字列から得られた数字列の一方または両方が空であれば、 "
4369 "B<strcmp>(3) が返した結果を関数の返り値として返す。 すなわち、バイト値を比較"
4370 "した結果を返す。 それ以外の(数字列が両方とも空でない)場合、両方の数字列を数字"
4371 "順で比較する。 このとき、1つ以上の 0 が先頭にある数字列は、前に小数点がついて"
4372 "いるものと 解釈される。(先頭に 0 が多くある数字列ほど前に来ることになる) こ"
4373 "の結果、順序は次のようになる: I<000>, I<00>, I<01>, I<010>, I<09>, I<0>, "
4377 #: build/C/man3/strverscmp.3:90
4379 "The B<strverscmp>() function returns an integer less than, equal to, or "
4380 "greater than zero if I<s1> is found, respectively, to be earlier than, equal "
4381 "to, or later than I<s2>."
4383 "関数 B<strverscmp>() は、ゼロよりも 1)小さい、2)等しい、3)大きいのいずれかの"
4384 "整数を返す。 それぞれは、I<s1> が I<s2> よりも、 1)小さい、2)等しい、3)大き"
4388 #: build/C/man3/strverscmp.3:97
4389 msgid "B<rename>(1), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3)"
4390 msgstr "B<rename>(1), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3)"
4393 #: build/C/man3/strxfrm.3:30
4399 #: build/C/man3/strxfrm.3:30
4405 #: build/C/man3/strxfrm.3:33
4406 msgid "strxfrm - string transformation"
4407 msgstr "strxfrm - 文字列の変換"
4410 #: build/C/man3/strxfrm.3:38
4412 msgid "B<size_t strxfrm(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
4413 msgstr "B<size_t strxfrm(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
4416 #: build/C/man3/strxfrm.3:62
4418 "The B<strxfrm>() function transforms the I<src> string into a form such "
4419 "that the result of B<strcmp>(3) on two strings that have been transformed "
4420 "with B<strxfrm>() is the same as the result of B<strcoll>(3) on the two "
4421 "strings before their transformation. The first I<n> bytes of the "
4422 "transformed string are placed in I<dest>. The transformation is based on "
4423 "the program's current locale for category B<LC_COLLATE>. (See "
4426 "B<strxfrm>() 関数は、文字列 I<src> に対して、次のような変換を行う。\n"
4427 "変換は、ある二つの文字列に対して、それぞれを B<strxfrm>() で変換\n"
4428 "した文字列に対して B<strcmp>(3) を行った結果が、 \n"
4429 "変換を行わずにB<strcoll>(3) を行った結果と同じとなるように行う。\n"
4430 "変換された文字列の先頭から I<n> バイト分が I<dest> に代入される。\n"
4431 "変換は、プログラムの現在のロケールのカテゴリ B<LC_COLLATE> に\n"
4432 "基づいて行われる (B<setlocale>(3) を参照)。"
4435 #: build/C/man3/strxfrm.3:76
4437 "The B<strxfrm>() function returns the number of bytes required to store the "
4438 "transformed string in I<dest> excluding the terminating null byte (\\(aq"
4439 "\\e0\\(aq). If the value returned is I<n> or more, the contents of I<dest> "
4440 "are indeterminate."
4442 "B<strxfrm>() 関数は、変換された文字列を I<dest> に代入するときに 必要なバイ"
4443 "ト数から、終端のヌルバイト (\\(aq\\e0\\(aq) の分を 引いたものを返す。もし返り"
4444 "値が I<n> 以上の場合、 I<dest> の内容は不定となる。"
4447 #: build/C/man3/strxfrm.3:88
4449 "In the I<POSIX> or I<C> locales B<strxfrm>() is equivalent to copying the "
4450 "string with B<strncpy>(3)."
4452 "I<POSIX> または I<C> ロケールでは、関数 B<strxfrm>() は、 関数 "
4453 "B<strncpy>(3) を使って文字列をコピーするのと同じである。"
4456 #: build/C/man3/strxfrm.3:96
4458 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
4459 "B<strcoll>(3), B<string>(3)"
4461 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
4462 "B<strcoll>(3), B<string>(3)"
4464 #~ msgid "2002-01-20"
4465 #~ msgstr "2002-01-20"
4467 #~ msgid "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, int >I<n>B<);>\n"
4468 #~ msgstr "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, int >I<n>B<);>\n"
4470 #~ msgid "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, int >I<n>B<);>\n"
4471 #~ msgstr "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, int >I<n>B<);>\n"
4473 #~ msgid "B<void bzero(void *>I<s>B<, int >I<n>B<);>\n"
4474 #~ msgstr "B<void bzero(void *>I<s>B<, int >I<n>B<);>\n"