OSDN Git Service

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