OSDN Git Service

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