OSDN Git Service

141d562bff99cf7be2fd4a561b43ef4140673ec2
[linuxjm/LDP_man-pages.git] / po4a / stdlib / 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: 2013-09-30 15:12+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/MB_CUR_MAX.3:17
20 #, no-wrap
21 msgid "MB_CUR_MAX"
22 msgstr "MB_CUR_MAX"
23
24 #. type: TH
25 #: build/C/man3/MB_CUR_MAX.3:17 build/C/man3/MB_LEN_MAX.3:17
26 #, no-wrap
27 msgid "1999-07-04"
28 msgstr "1999-07-04"
29
30 #. type: TH
31 #: build/C/man3/MB_CUR_MAX.3:17 build/C/man3/MB_LEN_MAX.3:17
32 #: build/C/man2/_exit.2:29 build/C/man3/atexit.3:33 build/C/man3/clearenv.3:26
33 #: build/C/man3/exit.3:29 build/C/man3/getloadavg.3:34
34 #: build/C/man3/strtod.3:45 build/C/man7/vdso.7:13
35 #, no-wrap
36 msgid "Linux"
37 msgstr "Linux"
38
39 #. type: TH
40 #: build/C/man3/MB_CUR_MAX.3:17 build/C/man3/MB_LEN_MAX.3:17
41 #: build/C/man2/_exit.2:29 build/C/man3/a64l.3:9 build/C/man3/atexit.3:33
42 #: build/C/man3/atof.3:31 build/C/man3/atoi.3:33
43 #: build/C/man3/canonicalize_file_name.3:26 build/C/man3/cfree.3:24
44 #: build/C/man3/clearenv.3:26 build/C/man3/drand48.3:30
45 #: build/C/man3/drand48_r.3:27 build/C/man3/ecvt.3:32 build/C/man3/ecvt_r.3:30
46 #: build/C/man3/exit.3:29 build/C/man3/gcvt.3:30 build/C/man3/getauxval.3:29
47 #: build/C/man3/getenv.3:33 build/C/man3/getloadavg.3:34
48 #: build/C/man3/getsubopt.3:25 build/C/man3/malloc.3:30
49 #: build/C/man3/mblen.3:16 build/C/man3/mbstowcs.3:18 build/C/man3/mbtowc.3:16
50 #: build/C/man3/mkdtemp.3:26 build/C/man3/mkstemp.3:35
51 #: build/C/man3/mktemp.3:34 build/C/man3/on_exit.3:31 build/C/man3/putenv.3:36
52 #: build/C/man3/qecvt.3:28 build/C/man3/rand.3:41 build/C/man3/random.3:33
53 #: build/C/man3/random_r.3:26 build/C/man3/rpmatch.3:29
54 #: build/C/man3/setenv.3:37 build/C/man3/strtod.3:45
55 #: build/C/man3/strtoimax.3:24 build/C/man3/strtol.3:31
56 #: build/C/man3/strtoul.3:33 build/C/man3/system.3:30 build/C/man7/vdso.7:13
57 #: build/C/man3/wcstombs.3:16 build/C/man3/wctomb.3:16
58 #, no-wrap
59 msgid "Linux Programmer's Manual"
60 msgstr "Linux Programmer's Manual"
61
62 #. type: SH
63 #: build/C/man3/MB_CUR_MAX.3:18 build/C/man3/MB_LEN_MAX.3:18
64 #: build/C/man2/_exit.2:30 build/C/man3/a64l.3:10 build/C/man3/atexit.3:34
65 #: build/C/man3/atof.3:32 build/C/man3/atoi.3:34
66 #: build/C/man3/canonicalize_file_name.3:27 build/C/man3/cfree.3:25
67 #: build/C/man3/clearenv.3:27 build/C/man3/drand48.3:31
68 #: build/C/man3/drand48_r.3:28 build/C/man3/ecvt.3:33 build/C/man3/ecvt_r.3:31
69 #: build/C/man3/exit.3:30 build/C/man3/gcvt.3:31 build/C/man3/getauxval.3:30
70 #: build/C/man3/getenv.3:34 build/C/man3/getloadavg.3:35
71 #: build/C/man3/getsubopt.3:26 build/C/man3/malloc.3:31
72 #: build/C/man3/mblen.3:17 build/C/man3/mbstowcs.3:19 build/C/man3/mbtowc.3:17
73 #: build/C/man3/mkdtemp.3:27 build/C/man3/mkstemp.3:36
74 #: build/C/man3/mktemp.3:35 build/C/man3/on_exit.3:32 build/C/man3/putenv.3:37
75 #: build/C/man3/qecvt.3:29 build/C/man3/rand.3:42 build/C/man3/random.3:34
76 #: build/C/man3/random_r.3:27 build/C/man3/rpmatch.3:30
77 #: build/C/man3/setenv.3:38 build/C/man3/strtod.3:46
78 #: build/C/man3/strtoimax.3:25 build/C/man3/strtol.3:32
79 #: build/C/man3/strtoul.3:34 build/C/man3/system.3:31 build/C/man7/vdso.7:14
80 #: build/C/man3/wcstombs.3:17 build/C/man3/wctomb.3:17
81 #, no-wrap
82 msgid "NAME"
83 msgstr "名前"
84
85 #. type: Plain text
86 #: build/C/man3/MB_CUR_MAX.3:20
87 msgid ""
88 "MB_CUR_MAX - maximum length of a multibyte character in the current locale"
89 msgstr "MB_CUR_MAX - 現在のロケールでのマルチバイト文字の最大長"
90
91 #. type: SH
92 #: build/C/man3/MB_CUR_MAX.3:20 build/C/man3/MB_LEN_MAX.3:20
93 #: build/C/man2/_exit.2:32 build/C/man3/a64l.3:12 build/C/man3/atexit.3:36
94 #: build/C/man3/atof.3:34 build/C/man3/atoi.3:36
95 #: build/C/man3/canonicalize_file_name.3:29 build/C/man3/cfree.3:27
96 #: build/C/man3/clearenv.3:29 build/C/man3/drand48.3:34
97 #: build/C/man3/drand48_r.3:32 build/C/man3/ecvt.3:35 build/C/man3/ecvt_r.3:33
98 #: build/C/man3/exit.3:32 build/C/man3/gcvt.3:33 build/C/man3/getauxval.3:32
99 #: build/C/man3/getenv.3:36 build/C/man3/getloadavg.3:37
100 #: build/C/man3/getsubopt.3:28 build/C/man3/malloc.3:33
101 #: build/C/man3/mblen.3:19 build/C/man3/mbstowcs.3:21 build/C/man3/mbtowc.3:19
102 #: build/C/man3/mkdtemp.3:29 build/C/man3/mkstemp.3:38
103 #: build/C/man3/mktemp.3:37 build/C/man3/on_exit.3:34 build/C/man3/putenv.3:39
104 #: build/C/man3/qecvt.3:31 build/C/man3/rand.3:44 build/C/man3/random.3:36
105 #: build/C/man3/random_r.3:30 build/C/man3/rpmatch.3:32
106 #: build/C/man3/setenv.3:40 build/C/man3/strtod.3:48
107 #: build/C/man3/strtoimax.3:27 build/C/man3/strtol.3:34
108 #: build/C/man3/strtoul.3:36 build/C/man3/system.3:33 build/C/man7/vdso.7:16
109 #: build/C/man3/wcstombs.3:19 build/C/man3/wctomb.3:19
110 #, no-wrap
111 msgid "SYNOPSIS"
112 msgstr "書式"
113
114 #. type: Plain text
115 #: build/C/man3/MB_CUR_MAX.3:23 build/C/man3/atexit.3:39
116 #: build/C/man3/atof.3:37 build/C/man3/atoi.3:39 build/C/man3/cfree.3:31
117 #: build/C/man3/clearenv.3:32 build/C/man3/drand48.3:37
118 #: build/C/man3/drand48_r.3:35 build/C/man3/ecvt_r.3:36 build/C/man3/exit.3:35
119 #: build/C/man3/gcvt.3:36 build/C/man3/getenv.3:39 build/C/man3/malloc.3:36
120 #: build/C/man3/mblen.3:22 build/C/man3/mbstowcs.3:24 build/C/man3/mbtowc.3:22
121 #: build/C/man3/mkdtemp.3:32 build/C/man3/mkstemp.3:41
122 #: build/C/man3/mktemp.3:40 build/C/man3/on_exit.3:37 build/C/man3/putenv.3:42
123 #: build/C/man3/rand.3:47 build/C/man3/random.3:39 build/C/man3/random_r.3:33
124 #: build/C/man3/rpmatch.3:35 build/C/man3/setenv.3:43 build/C/man3/strtol.3:37
125 #: build/C/man3/strtoul.3:39 build/C/man3/system.3:36
126 #: build/C/man3/wcstombs.3:22 build/C/man3/wctomb.3:22
127 #, no-wrap
128 msgid "B<#include E<lt>stdlib.hE<gt>>\n"
129 msgstr "B<#include E<lt>stdlib.hE<gt>>\n"
130
131 #. type: SH
132 #: build/C/man3/MB_CUR_MAX.3:24 build/C/man3/MB_LEN_MAX.3:24
133 #: build/C/man2/_exit.2:56 build/C/man3/a64l.3:33 build/C/man3/atexit.3:42
134 #: build/C/man3/atof.3:40 build/C/man3/atoi.3:64
135 #: build/C/man3/canonicalize_file_name.3:35 build/C/man3/cfree.3:52
136 #: build/C/man3/clearenv.3:43 build/C/man3/drand48.3:75
137 #: build/C/man3/drand48_r.3:83 build/C/man3/ecvt.3:69 build/C/man3/ecvt_r.3:64
138 #: build/C/man3/exit.3:38 build/C/man3/gcvt.3:64 build/C/man3/getauxval.3:38
139 #: build/C/man3/getenv.3:52 build/C/man3/getloadavg.3:44
140 #: build/C/man3/getsubopt.3:50 build/C/man3/malloc.3:42
141 #: build/C/man3/mblen.3:25 build/C/man3/mbstowcs.3:27 build/C/man3/mbtowc.3:25
142 #: build/C/man3/mkdtemp.3:55 build/C/man3/mkstemp.3:76
143 #: build/C/man3/mktemp.3:66 build/C/man3/on_exit.3:48 build/C/man3/putenv.3:54
144 #: build/C/man3/qecvt.3:66 build/C/man3/rand.3:62 build/C/man3/random.3:64
145 #: build/C/man3/random_r.3:58 build/C/man3/rpmatch.3:46
146 #: build/C/man3/setenv.3:61 build/C/man3/strtod.3:73
147 #: build/C/man3/strtoimax.3:35 build/C/man3/strtol.3:59
148 #: build/C/man3/strtoul.3:62 build/C/man3/system.3:39 build/C/man7/vdso.7:20
149 #: build/C/man3/wcstombs.3:25 build/C/man3/wctomb.3:25
150 #, no-wrap
151 msgid "DESCRIPTION"
152 msgstr "説明"
153
154 #. type: Plain text
155 #: build/C/man3/MB_CUR_MAX.3:31
156 msgid ""
157 "The B<MB_CUR_MAX> macro defines an integer expression giving the maximum "
158 "number of bytes needed to represent a single wide character in the current "
159 "locale.  It is locale dependent and therefore not a compile-time constant."
160 msgstr ""
161 "B<MB_CUR_MAX> マクロは、現在のロケールで一つのワイド文字を表現するために必要"
162 "な 最大バイト数を表す整数表現を定義する。 これはロケール依存であり、コンパイ"
163 "ル時に決まる定数ではない。"
164
165 #. type: SH
166 #: build/C/man3/MB_CUR_MAX.3:31 build/C/man3/MB_LEN_MAX.3:29
167 #: build/C/man2/_exit.2:79 build/C/man3/atexit.3:71 build/C/man3/atof.3:55
168 #: build/C/man3/atoi.3:91 build/C/man3/canonicalize_file_name.3:61
169 #: build/C/man3/cfree.3:96 build/C/man3/clearenv.3:50
170 #: build/C/man3/drand48_r.3:96 build/C/man3/ecvt.3:99 build/C/man3/ecvt_r.3:86
171 #: build/C/man3/exit.3:86 build/C/man3/gcvt.3:72 build/C/man3/getauxval.3:173
172 #: build/C/man3/getenv.3:88 build/C/man3/getloadavg.3:55
173 #: build/C/man3/getsubopt.3:110 build/C/man3/malloc.3:129
174 #: build/C/man3/mblen.3:75 build/C/man3/mbstowcs.3:85 build/C/man3/mbtowc.3:94
175 #: build/C/man3/mkdtemp.3:68 build/C/man3/mkstemp.3:155
176 #: build/C/man3/mktemp.3:80 build/C/man3/on_exit.3:76 build/C/man3/putenv.3:67
177 #: build/C/man3/rand.3:118 build/C/man3/random.3:118
178 #: build/C/man3/random_r.3:100 build/C/man3/rpmatch.3:73
179 #: build/C/man3/setenv.3:105 build/C/man3/strtod.3:128
180 #: build/C/man3/strtoimax.3:45 build/C/man3/strtol.3:117
181 #: build/C/man3/strtoul.3:127 build/C/man3/system.3:54
182 #: build/C/man3/wcstombs.3:79 build/C/man3/wctomb.3:63
183 #, no-wrap
184 msgid "RETURN VALUE"
185 msgstr "返り値"
186
187 #. type: Plain text
188 #: build/C/man3/MB_CUR_MAX.3:35
189 msgid ""
190 "An integer in the range [1, B<MB_LEN_MAX>].  The value 1 denotes traditional "
191 "8-bit encoded characters."
192 msgstr ""
193 "[1, B<MB_LEN_MAX>] の範囲の整数を返す。 1 という値は伝統的な (traditional) 8-"
194 "bit エンコードされた文字を意味する。"
195
196 #. type: SH
197 #: build/C/man3/MB_CUR_MAX.3:35 build/C/man3/MB_LEN_MAX.3:31
198 #: build/C/man2/_exit.2:81 build/C/man3/a64l.3:71 build/C/man3/atexit.3:76
199 #: build/C/man3/atof.3:65 build/C/man3/atoi.3:105
200 #: build/C/man3/canonicalize_file_name.3:73 build/C/man3/cfree.3:112
201 #: build/C/man3/clearenv.3:60 build/C/man3/drand48.3:260
202 #: build/C/man3/drand48_r.3:112 build/C/man3/ecvt.3:117
203 #: build/C/man3/ecvt_r.3:88 build/C/man3/exit.3:90 build/C/man3/gcvt.3:77
204 #: build/C/man3/getauxval.3:187 build/C/man3/getenv.3:96
205 #: build/C/man3/getloadavg.3:65 build/C/man3/getsubopt.3:129
206 #: build/C/man3/malloc.3:168 build/C/man3/mblen.3:92
207 #: build/C/man3/mbstowcs.3:95 build/C/man3/mbtowc.3:114
208 #: build/C/man3/mkdtemp.3:86 build/C/man3/mkstemp.3:195
209 #: build/C/man3/mktemp.3:95 build/C/man3/on_exit.3:81 build/C/man3/putenv.3:79
210 #: build/C/man3/qecvt.3:96 build/C/man3/rand.3:129 build/C/man3/random.3:152
211 #: build/C/man3/random_r.3:128 build/C/man3/rpmatch.3:99
212 #: build/C/man3/setenv.3:128 build/C/man3/strtod.3:172
213 #: build/C/man3/strtoimax.3:69 build/C/man3/strtol.3:173
214 #: build/C/man3/strtoul.3:177 build/C/man3/system.3:78
215 #: build/C/man3/wcstombs.3:89 build/C/man3/wctomb.3:89
216 #, no-wrap
217 msgid "CONFORMING TO"
218 msgstr "準拠"
219
220 #. type: Plain text
221 #: build/C/man3/MB_CUR_MAX.3:37 build/C/man3/MB_LEN_MAX.3:33
222 #: build/C/man3/strtoimax.3:71
223 msgid "C99, POSIX.1-2001."
224 msgstr "C99, POSIX.1-2001."
225
226 #. type: SH
227 #: build/C/man3/MB_CUR_MAX.3:37 build/C/man3/MB_LEN_MAX.3:44
228 #: build/C/man2/_exit.2:124 build/C/man3/a64l.3:93 build/C/man3/atexit.3:161
229 #: build/C/man3/atof.3:67 build/C/man3/atoi.3:125
230 #: build/C/man3/canonicalize_file_name.3:75 build/C/man3/cfree.3:117
231 #: build/C/man3/clearenv.3:97 build/C/man3/drand48.3:266
232 #: build/C/man3/drand48_r.3:114 build/C/man3/ecvt.3:135
233 #: build/C/man3/ecvt_r.3:95 build/C/man3/exit.3:177 build/C/man3/gcvt.3:86
234 #: build/C/man3/getauxval.3:213 build/C/man3/getenv.3:129
235 #: build/C/man3/getloadavg.3:69 build/C/man3/getsubopt.3:227
236 #: build/C/man3/malloc.3:259 build/C/man3/mblen.3:106
237 #: build/C/man3/mbstowcs.3:217 build/C/man3/mbtowc.3:129
238 #: build/C/man3/mkdtemp.3:91 build/C/man3/mkstemp.3:233
239 #: build/C/man3/mktemp.3:118 build/C/man3/on_exit.3:88
240 #: build/C/man3/putenv.3:119 build/C/man3/qecvt.3:107 build/C/man3/rand.3:217
241 #: build/C/man3/random.3:188 build/C/man3/random_r.3:132
242 #: build/C/man3/rpmatch.3:144 build/C/man3/setenv.3:153
243 #: build/C/man3/strtod.3:191 build/C/man3/strtoimax.3:71
244 #: build/C/man3/strtol.3:297 build/C/man3/strtoul.3:225
245 #: build/C/man3/system.3:153 build/C/man7/vdso.7:494
246 #: build/C/man3/wcstombs.3:103 build/C/man3/wctomb.3:103
247 #, no-wrap
248 msgid "SEE ALSO"
249 msgstr "関連項目"
250
251 #. type: Plain text
252 #: build/C/man3/MB_CUR_MAX.3:44
253 msgid ""
254 "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>(3), "
255 "B<wctomb>(3)"
256 msgstr ""
257 "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>(3), "
258 "B<wctomb>(3)"
259
260 #. type: SH
261 #: build/C/man3/MB_CUR_MAX.3:44 build/C/man3/MB_LEN_MAX.3:46
262 #: build/C/man2/_exit.2:136 build/C/man3/a64l.3:97 build/C/man3/atexit.3:165
263 #: build/C/man3/atof.3:73 build/C/man3/atoi.3:130
264 #: build/C/man3/canonicalize_file_name.3:78 build/C/man3/cfree.3:119
265 #: build/C/man3/clearenv.3:103 build/C/man3/drand48.3:269
266 #: build/C/man3/drand48_r.3:118 build/C/man3/ecvt.3:141
267 #: build/C/man3/ecvt_r.3:99 build/C/man3/exit.3:184 build/C/man3/gcvt.3:90
268 #: build/C/man3/getauxval.3:217 build/C/man3/getenv.3:137
269 #: build/C/man3/getloadavg.3:72 build/C/man3/getsubopt.3:229
270 #: build/C/man3/malloc.3:283 build/C/man3/mblen.3:108
271 #: build/C/man3/mbstowcs.3:223 build/C/man3/mbtowc.3:136
272 #: build/C/man3/mkdtemp.3:98 build/C/man3/mkstemp.3:239
273 #: build/C/man3/mktemp.3:123 build/C/man3/on_exit.3:92
274 #: build/C/man3/putenv.3:125 build/C/man3/qecvt.3:112 build/C/man3/rand.3:220
275 #: build/C/man3/random.3:193 build/C/man3/random_r.3:136
276 #: build/C/man3/rpmatch.3:150 build/C/man3/setenv.3:158
277 #: build/C/man3/strtod.3:197 build/C/man3/strtoimax.3:77
278 #: build/C/man3/strtol.3:303 build/C/man3/strtoul.3:231
279 #: build/C/man3/system.3:158 build/C/man7/vdso.7:510
280 #: build/C/man3/wcstombs.3:109 build/C/man3/wctomb.3:110
281 #, no-wrap
282 msgid "COLOPHON"
283 msgstr "この文書について"
284
285 #. type: Plain text
286 #: build/C/man3/MB_CUR_MAX.3:51 build/C/man3/MB_LEN_MAX.3:53
287 #: build/C/man2/_exit.2:143 build/C/man3/a64l.3:104 build/C/man3/atexit.3:172
288 #: build/C/man3/atof.3:80 build/C/man3/atoi.3:137
289 #: build/C/man3/canonicalize_file_name.3:85 build/C/man3/cfree.3:126
290 #: build/C/man3/clearenv.3:110 build/C/man3/drand48.3:276
291 #: build/C/man3/drand48_r.3:125 build/C/man3/ecvt.3:148
292 #: build/C/man3/ecvt_r.3:106 build/C/man3/exit.3:191 build/C/man3/gcvt.3:97
293 #: build/C/man3/getauxval.3:224 build/C/man3/getenv.3:144
294 #: build/C/man3/getloadavg.3:79 build/C/man3/getsubopt.3:236
295 #: build/C/man3/malloc.3:290 build/C/man3/mblen.3:115
296 #: build/C/man3/mbstowcs.3:230 build/C/man3/mbtowc.3:143
297 #: build/C/man3/mkdtemp.3:105 build/C/man3/mkstemp.3:246
298 #: build/C/man3/mktemp.3:130 build/C/man3/on_exit.3:99
299 #: build/C/man3/putenv.3:132 build/C/man3/qecvt.3:119 build/C/man3/rand.3:227
300 #: build/C/man3/random.3:200 build/C/man3/random_r.3:143
301 #: build/C/man3/rpmatch.3:157 build/C/man3/setenv.3:165
302 #: build/C/man3/strtod.3:204 build/C/man3/strtoimax.3:84
303 #: build/C/man3/strtol.3:310 build/C/man3/strtoul.3:238
304 #: build/C/man3/system.3:165 build/C/man7/vdso.7:517
305 #: build/C/man3/wcstombs.3:116 build/C/man3/wctomb.3:117
306 #, fuzzy
307 #| msgid ""
308 #| "This page is part of release 3.54 of the Linux I<man-pages> project.  A "
309 #| "description of the project, and information about reporting bugs, can be "
310 #| "found at \\%http://www.kernel.org/doc/man-pages/."
311 msgid ""
312 "This page is part of release 3.63 of the Linux I<man-pages> project.  A "
313 "description of the project, and information about reporting bugs, can be "
314 "found at \\%http://www.kernel.org/doc/man-pages/."
315 msgstr ""
316 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.54 の一部\n"
317 "である。プロジェクトの説明とバグ報告に関する情報は\n"
318 "http://www.kernel.org/doc/man-pages/ に書かれている。"
319
320 #. type: TH
321 #: build/C/man3/MB_LEN_MAX.3:17
322 #, no-wrap
323 msgid "MB_LEN_MAX"
324 msgstr "MB_LEN_MAX"
325
326 #. type: Plain text
327 #: build/C/man3/MB_LEN_MAX.3:20
328 msgid "MB_LEN_MAX - maximum multibyte length of a character across all locales"
329 msgstr "MB_LEN_MAX - 全てのロケールでの1文字の最大マルチバイト長"
330
331 #. type: Plain text
332 #: build/C/man3/MB_LEN_MAX.3:23
333 #, no-wrap
334 msgid "B<#include E<lt>limits.hE<gt>>\n"
335 msgstr "B<#include E<lt>limits.hE<gt>>\n"
336
337 #. type: Plain text
338 #: build/C/man3/MB_LEN_MAX.3:29
339 msgid ""
340 "The B<MB_LEN_MAX> macro is the upper bound for the number of bytes needed to "
341 "represent a single wide character, across all locales."
342 msgstr ""
343 "B<MB_LEN_MAX> マクロは、全てのロケールで一つのワイド文字を表現するために必要"
344 "となる 最大バイト数である。"
345
346 #. type: Plain text
347 #: build/C/man3/MB_LEN_MAX.3:31
348 msgid "A constant integer greater than zero."
349 msgstr "0 より大きいの整数型の定数。"
350
351 #. type: SH
352 #: build/C/man3/MB_LEN_MAX.3:33 build/C/man2/_exit.2:86 build/C/man3/a64l.3:73
353 #: build/C/man3/atexit.3:78 build/C/man3/atoi.3:115 build/C/man3/clearenv.3:74
354 #: build/C/man3/drand48.3:262 build/C/man3/ecvt.3:129 build/C/man3/ecvt_r.3:90
355 #: build/C/man3/exit.3:92 build/C/man3/getauxval.3:189
356 #: build/C/man3/getenv.3:102 build/C/man3/getsubopt.3:131
357 #: build/C/man3/malloc.3:170 build/C/man3/mblen.3:94
358 #: build/C/man3/mbstowcs.3:97 build/C/man3/mbtowc.3:116
359 #: build/C/man3/mkstemp.3:208 build/C/man3/mktemp.3:99
360 #: build/C/man3/putenv.3:81 build/C/man3/qecvt.3:102 build/C/man3/rand.3:141
361 #: build/C/man3/random.3:154 build/C/man3/setenv.3:130
362 #: build/C/man3/strtod.3:177 build/C/man3/strtol.3:178
363 #: build/C/man3/strtoul.3:182 build/C/man3/system.3:80 build/C/man7/vdso.7:129
364 #: build/C/man3/wcstombs.3:91 build/C/man3/wctomb.3:91
365 #, no-wrap
366 msgid "NOTES"
367 msgstr "注意"
368
369 #. type: Plain text
370 #: build/C/man3/MB_LEN_MAX.3:44
371 msgid ""
372 "The entities B<MB_LEN_MAX> and I<sizeof(wchar_t)> are totally unrelated.  In "
373 "glibc, B<MB_LEN_MAX> is typically 6 while I<sizeof(wchar_t)> is 4."
374 msgstr ""
375 "B<MB_LEN_MAX> と I<sizeof(wchar_t)> の値にはなんの関係もない。 glibc では "
376 "B<MB_LEN_MAX> は通常は 6 で、 I<sizeof(wchar_t)> は 4 である。"
377
378 #. type: Plain text
379 #: build/C/man3/MB_LEN_MAX.3:46
380 msgid "B<MB_CUR_MAX>(3)"
381 msgstr "B<MB_CUR_MAX>(3)"
382
383 #. type: TH
384 #: build/C/man2/_exit.2:29
385 #, no-wrap
386 msgid "_EXIT"
387 msgstr "_EXIT"
388
389 #. type: TH
390 #: build/C/man2/_exit.2:29 build/C/man3/gcvt.3:30
391 #, no-wrap
392 msgid "2010-09-20"
393 msgstr "2010-09-20"
394
395 #. type: Plain text
396 #: build/C/man2/_exit.2:32
397 msgid "_exit, _Exit - terminate the calling process"
398 msgstr "_exit, _Exit - 呼び出し元のプロセスを終了させる"
399
400 #. type: Plain text
401 #: build/C/man2/_exit.2:34
402 msgid "B<#include E<lt>unistd.hE<gt>>"
403 msgstr "B<#include E<lt>unistd.hE<gt>>"
404
405 #. type: Plain text
406 #: build/C/man2/_exit.2:36
407 msgid "B<void _exit(int >I<status>B<);>"
408 msgstr "B<void _exit(int >I<status>B<);>"
409
410 #. type: Plain text
411 #: build/C/man2/_exit.2:38 build/C/man3/a64l.3:14
412 #: build/C/man3/canonicalize_file_name.3:33 build/C/man3/ecvt.3:37
413 #: build/C/man3/getsubopt.3:30 build/C/man3/qecvt.3:33
414 #: build/C/man3/strtod.3:50
415 msgid "B<#include E<lt>stdlib.hE<gt>>"
416 msgstr "B<#include E<lt>stdlib.hE<gt>>"
417
418 #. type: Plain text
419 #: build/C/man2/_exit.2:40
420 msgid "B<void _Exit(int >I<status>B<);>"
421 msgstr "B<void _Exit(int >I<status>B<);>"
422
423 #. type: Plain text
424 #: build/C/man2/_exit.2:44 build/C/man3/a64l.3:22 build/C/man3/atoi.3:52
425 #: build/C/man3/cfree.3:48 build/C/man3/clearenv.3:39
426 #: build/C/man3/drand48.3:60 build/C/man3/drand48_r.3:68
427 #: build/C/man3/ecvt.3:47 build/C/man3/ecvt_r.3:53 build/C/man3/gcvt.3:43
428 #: build/C/man3/getenv.3:48 build/C/man3/getsubopt.3:37
429 #: build/C/man3/mkdtemp.3:39 build/C/man3/mkstemp.3:54
430 #: build/C/man3/mktemp.3:47 build/C/man3/on_exit.3:44 build/C/man3/putenv.3:50
431 #: build/C/man3/qecvt.3:45 build/C/man3/rand.3:58 build/C/man3/random.3:52
432 #: build/C/man3/random_r.3:47 build/C/man3/rpmatch.3:42
433 #: build/C/man3/setenv.3:52 build/C/man3/strtod.3:60 build/C/man3/strtol.3:47
434 #: build/C/man3/strtoul.3:50
435 msgid ""
436 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
437 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
438
439 #. type: Plain text
440 #: build/C/man2/_exit.2:48
441 msgid "B<_Exit>():"
442 msgstr "B<_Exit>():"
443
444 #. type: Plain text
445 #: build/C/man2/_exit.2:51 build/C/man3/strtod.3:68
446 msgid ""
447 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ "
448 "200112L;"
449 msgstr ""
450 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ "
451 "200112L;"
452
453 #. type: Plain text
454 #: build/C/man2/_exit.2:54 build/C/man3/atoi.3:62 build/C/man3/strtod.3:71
455 #: build/C/man3/strtol.3:57 build/C/man3/strtoul.3:60
456 msgid "or I<cc\\ -std=c99>"
457 msgstr "または I<cc\\ -std=c99>"
458
459 #. type: Plain text
460 #: build/C/man2/_exit.2:67
461 msgid ""
462 "The function B<_exit>()  terminates the calling process \"immediately\".  "
463 "Any open file descriptors belonging to the process are closed; any children "
464 "of the process are inherited by process 1, I<init>, and the process's parent "
465 "is sent a B<SIGCHLD> signal."
466 msgstr ""
467 "B<_exit>()  は、それを呼んだプロセスを「直ちに」終了させる。 その際、このプロ"
468 "セスが所有しているディスクリプタ (descriptor) で、 オープンされているものは全"
469 "てクローズされる。 また、このプロセスが所有する子プロセスは全て、プロセス番"
470 "号 1、 つまり I<init> プロセスによって継承され、このプロセスの親プロセスに対"
471 "して B<SIGCHLD> シグナルが送出される。"
472
473 #. type: Plain text
474 #: build/C/man2/_exit.2:74
475 msgid ""
476 "The value I<status> is returned to the parent process as the process's exit "
477 "status, and can be collected using one of the B<wait>(2)  family of calls."
478 msgstr ""
479 "I<status> の値は、このプロセスの終了状態としてその親プロセスに対して返され、 "
480 "B<wait>(2)  系関数を利用することによって取得することができる。"
481
482 #. type: Plain text
483 #: build/C/man2/_exit.2:79
484 msgid "The function B<_Exit>()  is equivalent to B<_exit>()."
485 msgstr "関数 B<_Exit>()  は B<_exit>()  と等価である。"
486
487 #. type: Plain text
488 #: build/C/man2/_exit.2:81
489 msgid "These functions do not return."
490 msgstr "これらの関数は値を返さない。"
491
492 #. type: Plain text
493 #: build/C/man2/_exit.2:86
494 msgid ""
495 "SVr4, POSIX.1-2001, 4.3BSD.  The function B<_Exit>()  was introduced by C99."
496 msgstr "SVr4, POSIX.1-2001, 4.3BSD.  関数 B<_Exit>()  は C99 で導入された。"
497
498 #. type: Plain text
499 #: build/C/man2/_exit.2:90
500 msgid ""
501 "For a discussion on the effects of an exit, the transmission of exit status, "
502 "zombie processes, signals sent, and so on, see B<exit>(3)."
503 msgstr ""
504 "exit の効果、終了状態の受渡し、ゾンビプロセス、シグナル送出などに\n"
505 "ついての議論は、 B<exit>(3) を参照すること。"
506
507 #. type: Plain text
508 #: build/C/man2/_exit.2:117
509 msgid ""
510 "The function B<_exit>()  is like B<exit>(3), but does not call any functions "
511 "registered with B<atexit>(3)  or B<on_exit>(3).  Whether it flushes standard "
512 "I/O buffers and removes temporary files created with B<tmpfile>(3)  is "
513 "implementation-dependent.  On the other hand, B<_exit>()  does close open "
514 "file descriptors, and this may cause an unknown delay, waiting for pending "
515 "output to finish.  If the delay is undesired, it may be useful to call "
516 "functions like B<tcflush>(3)  before calling B<_exit>().  Whether any "
517 "pending I/O is canceled, and which pending I/O may be canceled upon B<_exit>"
518 "(), is implementation-dependent."
519 msgstr ""
520 "関数 B<_exit>()  は B<exit>(3)  に似ているが、ANSI C の B<atexit>(3)  や "
521 "B<on_exit>(3)  によって登録されたいかなる関数も呼び出さない。 標準 I/O バッ"
522 "ファのフラッシュや、 B<tmpfile>(3)  で作成されたテンポラリファイルの削除を行"
523 "うかどうかは、実装に依存する。 一方で、 B<_exit>()  はオープンされているファ"
524 "イルディスクリプタをクローズしないため、 未決定になっている出力がフラッシュさ"
525 "れるのを待つのに不確定な遅れが発生する。 この遅れを発生させたくなければ、 "
526 "B<_exit>()  の前に B<tcflush>(3)  のような関数を呼び出せばよい。 B<_exit>()  "
527 "が呼び出されたときに、 未決定になっている全ての I/O がキャンセルされるのか、 "
528 "またどの I/O がキャンセルされるのかは実装に依存する。"
529
530 #. type: Plain text
531 #: build/C/man2/_exit.2:124
532 msgid ""
533 "In glibc up to version 2.3, the B<_exit>()  wrapper function invoked the "
534 "kernel system call of the same name.  Since glibc 2.3, the wrapper function "
535 "invokes B<exit_group>(2), in order to terminate all of the threads in a "
536 "process."
537 msgstr ""
538 "バージョン 2.3 より前の glibc では、 B<_exit>()  のラッパー関数は同じ名前の"
539 "カーネル・システムコールを起動していた。 glibc 2.3 以降では、プロセス内の全て"
540 "のスレッドを終了するために、 ラッパー関数は B<exit_group>(2)  を起動する。"
541
542 #. type: Plain text
543 #: build/C/man2/_exit.2:136
544 msgid ""
545 "B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), B<wait4>"
546 "(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), B<termios>(3)"
547 msgstr ""
548 "B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), B<wait4>"
549 "(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), B<termios>(3)"
550
551 #. type: TH
552 #: build/C/man3/a64l.3:9
553 #, no-wrap
554 msgid "A64L"
555 msgstr "A64L"
556
557 #. type: TH
558 #: build/C/man3/a64l.3:9 build/C/man3/drand48.3:30 build/C/man3/mblen.3:16
559 #, no-wrap
560 msgid "2013-06-21"
561 msgstr "2013-06-21"
562
563 #. type: Plain text
564 #: build/C/man3/a64l.3:12
565 msgid "a64l, l64a - convert between long and base-64"
566 msgstr "a64l, l64a - long と base-64 を変換する"
567
568 #. type: Plain text
569 #: build/C/man3/a64l.3:16
570 msgid "B<long a64l(char *>I<str64>B<);>"
571 msgstr "B<long a64l(char *>I<str64>B<);>"
572
573 #. type: Plain text
574 #: build/C/man3/a64l.3:18
575 msgid "B<char *l64a(long >I<value>B<);>"
576 msgstr "B<char *l64a(long >I<value>B<);>"
577
578 #. type: Plain text
579 #: build/C/man3/a64l.3:26
580 msgid "B<a64l>(), B<l64a>():"
581 msgstr "B<a64l>(), B<l64a>():"
582
583 #. type: Plain text
584 #: build/C/man3/a64l.3:31 build/C/man3/ecvt.3:66
585 msgid ""
586 "_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
587 "_XOPEN_SOURCE_EXTENDED"
588 msgstr ""
589 "_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
590 "_XOPEN_SOURCE_EXTENDED"
591
592 #. type: Plain text
593 #: build/C/man3/a64l.3:48
594 msgid ""
595 "These functions provide a conversion between 32-bit long integers and little-"
596 "endian base-64 ASCII strings (of length zero to six).  If the string used as "
597 "argument for B<a64l>()  has length greater than six, only the first six "
598 "bytes are used.  If the type I<long> has more than 32 bits, then B<l64a>()  "
599 "uses only the low order 32 bits of I<value>, and B<a64l>()  sign-extends its "
600 "32-bit result."
601 msgstr ""
602 "これらの関数は 32 ビット long 整数と リトルエンディアン base-64 ASCII 文字列 "
603 "(長さ 0 〜 6) の間の変換を行う。 B<a64l>()  の引き数の文字列が 7 文字以上の場"
604 "合、 最初の 6 バイトが使われる。 I<long> 型が 32 ビットより大きい場合、 "
605 "B<l64a>()  は I<value> の下位 32 ビットのみを使い、 B<a64l>()  は 32 ビットの"
606 "結果を符号拡張 (sign-extend) する。"
607
608 #. type: Plain text
609 #: build/C/man3/a64l.3:50
610 msgid "The 64 digits in the base-64 system are:"
611 msgstr "base-64 システムで使われる 64 個の文字は以下の通りである:"
612
613 #. type: Plain text
614 #: build/C/man3/a64l.3:58
615 #, no-wrap
616 msgid ""
617 "\\&\\(aq.\\(aq\trepresents a 0\n"
618 "\\&\\(aq/\\(aq\trepresents a 1\n"
619 "0-9\trepresent  2-11\n"
620 "A-Z\trepresent 12-37\n"
621 "a-z\trepresent 38-63\n"
622 msgstr ""
623 "\\&\\(aq.\\(aq\tは 0 を表す。\n"
624 "\\&\\(aq/\\(aq\tは 1 を表す。\n"
625 "0-9\tは 2-11 を表す。\n"
626 "A-Z\tは 12-37 を表す。\n"
627 "a-z\tは 38-63 を表す。\n"
628
629 #. type: Plain text
630 #: build/C/man3/a64l.3:62
631 msgid "So 123 = 59*64^0 + 1*64^1 = \"v/\"."
632 msgstr "よって 123 = 59*64^0 + 1*64^1 = \"v/\" である。"
633
634 #. type: SH
635 #: build/C/man3/a64l.3:62 build/C/man3/atof.3:57 build/C/man3/atoi.3:93
636 #: build/C/man3/drand48.3:245 build/C/man3/drand48_r.3:98
637 #: build/C/man3/ecvt.3:110 build/C/man3/mblen.3:87 build/C/man3/qecvt.3:85
638 #: build/C/man3/strtod.3:160 build/C/man3/strtoimax.3:58
639 #: build/C/man3/strtol.3:161 build/C/man3/strtoul.3:165
640 #: build/C/man3/wctomb.3:84
641 #, no-wrap
642 msgid "ATTRIBUTES"
643 msgstr "属性"
644
645 #. type: SS
646 #: build/C/man3/a64l.3:63 build/C/man3/atof.3:58 build/C/man3/atoi.3:94
647 #: build/C/man3/drand48.3:246 build/C/man3/drand48_r.3:99
648 #: build/C/man3/ecvt.3:111 build/C/man3/mblen.3:88 build/C/man3/qecvt.3:86
649 #: build/C/man3/strtod.3:161 build/C/man3/strtoimax.3:59
650 #: build/C/man3/strtol.3:162 build/C/man3/strtoul.3:166
651 #: build/C/man3/wctomb.3:85
652 #, no-wrap
653 msgid "Multithreading (see pthreads(7))"
654 msgstr "マルチスレッディング (pthreads(7) 参照)"
655
656 #. type: Plain text
657 #: build/C/man3/a64l.3:67
658 msgid "The B<l64a>()  function is not thread-safe."
659 msgstr "B<l64a>() 関数はスレッドセーフではない。"
660
661 #. type: Plain text
662 #: build/C/man3/a64l.3:71
663 msgid "The B<a64l>()  function is thread-safe."
664 msgstr "B<a64l>() 関数はスレッドセーフである。"
665
666 #. type: Plain text
667 #: build/C/man3/a64l.3:73 build/C/man3/getsubopt.3:131
668 msgid "POSIX.1-2001."
669 msgstr "POSIX.1-2001."
670
671 #. type: Plain text
672 #: build/C/man3/a64l.3:78
673 msgid ""
674 "The value returned by B<l64a>()  may be a pointer to a static buffer, "
675 "possibly overwritten by later calls."
676 msgstr ""
677 "B<l64a>()  で返される値は静的バッファへのポインタかもしれないので、 以降の呼"
678 "び出しで上書きされる可能性がある。"
679
680 #. type: Plain text
681 #: build/C/man3/a64l.3:87
682 msgid ""
683 "The behavior of B<l64a>()  is undefined when I<value> is negative.  If "
684 "I<value> is zero, it returns an empty string."
685 msgstr ""
686 "I<value> が負の場合、 B<l64a>()  の動作は定義されていない。 I<value> が 0 の"
687 "場合は空文字列を返す。"
688
689 #. type: Plain text
690 #: build/C/man3/a64l.3:90
691 msgid ""
692 "These functions are broken in glibc before 2.2.5 (puts most significant "
693 "digit first)."
694 msgstr ""
695 "これらの関数は glibc 2.2.5 以前では間違っている (最上位デジットを最初にしてい"
696 "る)。"
697
698 #. type: Plain text
699 #: build/C/man3/a64l.3:93
700 msgid "This is not the encoding used by B<uuencode>(1)."
701 msgstr "これは B<uuencode>(1)  で使われるエンコーディングではない。"
702
703 #.  .BR itoa (3),
704 #. type: Plain text
705 #: build/C/man3/a64l.3:97
706 msgid "B<uuencode>(1), B<strtoul>(3)"
707 msgstr "B<uuencode>(1), B<strtoul>(3)"
708
709 #. type: TH
710 #: build/C/man3/atexit.3:33
711 #, no-wrap
712 msgid "ATEXIT"
713 msgstr "ATEXIT"
714
715 #. type: TH
716 #: build/C/man3/atexit.3:33 build/C/man3/on_exit.3:31
717 #, no-wrap
718 msgid "2008-12-05"
719 msgstr "2008-12-05"
720
721 #. type: Plain text
722 #: build/C/man3/atexit.3:36
723 msgid "atexit - register a function to be called at normal process termination"
724 msgstr "atexit - プロセスが正常終了した時に呼び出される関数を登録する"
725
726 #. type: Plain text
727 #: build/C/man3/atexit.3:41
728 #, no-wrap
729 msgid "B<int atexit(void (*>I<function>B<)(void));>\n"
730 msgstr "B<int atexit(void (*>I<function>B<)(void));>\n"
731
732 #. type: Plain text
733 #: build/C/man3/atexit.3:54
734 msgid ""
735 "The B<atexit>()  function registers the given I<function> to be called at "
736 "normal process termination, either via B<exit>(3)  or via return from the "
737 "program's I<main>().  Functions so registered are called in the reverse "
738 "order of their registration; no arguments are passed."
739 msgstr ""
740 "B<atexit>()  関数は、与えられた I<function> を、 B<exit>(3)  やプログラムの "
741 "I<main>()  関数からの返りを通じて、プロセスが正常終了した時に呼び出される 関"
742 "数として登録する。 ここで定義された関数は、登録した順番とは逆の順番で呼び出さ"
743 "れる。 登録した関数に引き数は渡されない。"
744
745 #. type: Plain text
746 #: build/C/man3/atexit.3:57 build/C/man3/on_exit.3:69
747 msgid ""
748 "The same function may be registered multiple times: it is called once for "
749 "each registration."
750 msgstr ""
751 "同じ関数を複数回登録してもよい。 登録された関数は登録 1 回につき 1 回呼び出さ"
752 "れる。"
753
754 #. type: Plain text
755 #: build/C/man3/atexit.3:63
756 msgid ""
757 "POSIX.1-2001 requires that an implementation allow at least B<ATEXIT_MAX> "
758 "(32) such functions to be registered.  The actual limit supported by an "
759 "implementation can be obtained using B<sysconf>(3)."
760 msgstr ""
761 "POSIX.1-2001 では、このような関数を少なくとも B<ATEXIT_MAX> 個 (32個) 登録で"
762 "きることを要求している。 その実装でサポートされている実際の上限は B<sysconf>"
763 "(3)  を使って取得できる。"
764
765 #. type: Plain text
766 #: build/C/man3/atexit.3:71 build/C/man3/on_exit.3:76
767 msgid ""
768 "When a child process is created via B<fork>(2), it inherits copies of its "
769 "parent's registrations.  Upon a successful call to one of the B<exec>(3)  "
770 "functions, all registrations are removed."
771 msgstr ""
772 "B<fork>(2) で作成された場合、子プロセスは親プロセスの登録のコピーを継承す"
773 "る。\n"
774 "B<exec>(3) ファミリーの関数の場合、呼び出しに成功すると、 全ての登録が削除さ"
775 "れる。"
776
777 #. type: Plain text
778 #: build/C/man3/atexit.3:76
779 msgid ""
780 "The B<atexit>()  function returns the value 0 if successful; otherwise it "
781 "returns a nonzero value."
782 msgstr ""
783 "B<atexit>()  関数は、関数登録が成功した時には 0 を返す。 その他の場合には 0 "
784 "以外の値を返す。"
785
786 #. type: Plain text
787 #: build/C/man3/atexit.3:78
788 msgid "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
789 msgstr "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
790
791 #. type: Plain text
792 #: build/C/man3/atexit.3:85
793 msgid ""
794 "Functions registered using B<atexit>()  (and B<on_exit>(3))  are not called "
795 "if a process terminates abnormally because of the delivery of a signal."
796 msgstr ""
797 "B<atexit>()  (と B<on_exit>(3))  を使って登録された関数は、 シグナルの配送に"
798 "よりプロセスが異常終了した場合には呼び出されない。"
799
800 #. type: Plain text
801 #: build/C/man3/atexit.3:92
802 msgid ""
803 "If one of the functions registered functions calls B<_exit>(2), then any "
804 "remaining functions are not invoked, and the other process termination steps "
805 "performed by B<exit>(3)  are not performed."
806 msgstr ""
807 "登録された関数の一つが B<_exit>(2)  を呼び出した場合、残りの関数はどれも起動"
808 "されず、 B<exit>(3)  により実行される他のプロセス終了ステップは実行されない。"
809
810 #.  This can happen on OpenBSD 4.2 for example, and is documented
811 #.  as occurring on FreeBSD as well.
812 #.  Glibc does "the Right Thing" -- invocation of the remaining
813 #.  exit handlers carries on as normal.
814 #. type: Plain text
815 #: build/C/man3/atexit.3:109
816 msgid ""
817 "POSIX.1-2001 says that the result of calling B<exit>(3)  more than once (i."
818 "e., calling B<exit>(3)  within a function registered using B<atexit>())  is "
819 "undefined.  On some systems (but not Linux), this can result in an infinite "
820 "recursion; portable programs should not invoke B<exit>(3)  inside a function "
821 "registered using B<atexit>()."
822 msgstr ""
823 "POSIX.1-2001 では、 B<atexit>()  を使って登録された一つの関数内で、複数回 "
824 "B<exit>(3)  を呼び出した際の結果は未定義である。 (Linux ではないが) いくつか"
825 "のシステムでは、この場合、 繰り返しが無限に起こることになる。 移植性が必要な"
826 "プログラムでは、 B<atexit>()  で登録された関数内で B<exit>(3)  を起動すべきで"
827 "はない。"
828
829 #. type: Plain text
830 #: build/C/man3/atexit.3:118
831 msgid ""
832 "The B<atexit>()  and B<on_exit>(3)  functions register functions on the same "
833 "list: at normal process termination, the registered functions are invoked in "
834 "reverse order of their registration by these two functions."
835 msgstr ""
836 "B<atexit>()  と B<on_exit>(3)  は、同じリストに対して関数を登録する。 プロセ"
837 "スが正常に終了した際には、 これらの二つの関数で登録された順序の逆順で、 登録"
838 "された関数が起動される。"
839
840 #.  In glibc, things seem to be handled okay
841 #. type: Plain text
842 #: build/C/man3/atexit.3:124
843 msgid ""
844 "POSIX.1-2001 says that the result is undefined if B<longjmp>(3)  is used to "
845 "terminate execution of one of the functions registered B<atexit>()."
846 msgstr ""
847 "POSIX.1-2001 では、 B<atexit>()  で登録された関数の実行を終了するために "
848 "B<longjmp>(3)  が使用された場合の結果は未定義である。"
849
850 #. type: SS
851 #: build/C/man3/atexit.3:124
852 #, no-wrap
853 msgid "Linux notes"
854 msgstr "Linux での注意"
855
856 #. type: Plain text
857 #: build/C/man3/atexit.3:131
858 msgid ""
859 "Since glibc 2.2.3, B<atexit>()  (and B<on_exit>(3))  can be used within a "
860 "shared library to establish functions that are called when the shared "
861 "library is unloaded."
862 msgstr ""
863 "glibc 2.2.3 以降では、共有ライブラリがアンロードされるときに呼ばれる 関数を登"
864 "録するために、共有ライブラリの中で B<atexit>()  (と B<on_exit>(3))  を使用す"
865 "ることができる。"
866
867 #. type: SH
868 #: build/C/man3/atexit.3:131 build/C/man3/getsubopt.3:138
869 #: build/C/man3/mbstowcs.3:109 build/C/man3/rand.3:160
870 #: build/C/man3/rpmatch.3:119 build/C/man3/strtod.3:186
871 #: build/C/man3/strtol.3:216 build/C/man3/strtoul.3:220
872 #, no-wrap
873 msgid "EXAMPLE"
874 msgstr "例"
875
876 #. type: Plain text
877 #: build/C/man3/atexit.3:136
878 #, no-wrap
879 msgid ""
880 "#include E<lt>stdio.hE<gt>\n"
881 "#include E<lt>stdlib.hE<gt>\n"
882 "#include E<lt>unistd.hE<gt>\n"
883 msgstr ""
884 "#include E<lt>stdio.hE<gt>\n"
885 "#include E<lt>stdlib.hE<gt>\n"
886 "#include E<lt>unistd.hE<gt>\n"
887
888 #. type: Plain text
889 #: build/C/man3/atexit.3:142
890 #, no-wrap
891 msgid ""
892 "void\n"
893 "bye(void)\n"
894 "{\n"
895 "    printf(\"That was all, folks\\en\");\n"
896 "}\n"
897 msgstr ""
898 "void\n"
899 "bye(void)\n"
900 "{\n"
901 "    printf(\"That was all, folks\\en\");\n"
902 "}\n"
903
904 #. type: Plain text
905 #: build/C/man3/atexit.3:148
906 #, no-wrap
907 msgid ""
908 "int\n"
909 "main(void)\n"
910 "{\n"
911 "    long a;\n"
912 "    int i;\n"
913 msgstr ""
914 "int\n"
915 "main(void)\n"
916 "{\n"
917 "    long a;\n"
918 "    int i;\n"
919
920 #. type: Plain text
921 #: build/C/man3/atexit.3:151
922 #, no-wrap
923 msgid ""
924 "    a = sysconf(_SC_ATEXIT_MAX);\n"
925 "    printf(\"ATEXIT_MAX = %ld\\en\", a);\n"
926 msgstr ""
927 "    a = sysconf(_SC_ATEXIT_MAX);\n"
928 "    printf(\"ATEXIT_MAX = %ld\\en\", a);\n"
929
930 #. type: Plain text
931 #: build/C/man3/atexit.3:157
932 #, no-wrap
933 msgid ""
934 "    i = atexit(bye);\n"
935 "    if (i != 0) {\n"
936 "        fprintf(stderr, \"cannot set exit function\\en\");\n"
937 "        exit(EXIT_FAILURE);\n"
938 "    }\n"
939 msgstr ""
940 "    i = atexit(bye);\n"
941 "    if (i != 0) {\n"
942 "        fprintf(stderr, \"cannot set exit function\\en\");\n"
943 "        exit(EXIT_FAILURE);\n"
944 "    }\n"
945
946 #. type: Plain text
947 #: build/C/man3/atexit.3:160 build/C/man3/getsubopt.3:226
948 #: build/C/man3/mbstowcs.3:216 build/C/man3/rand.3:215
949 #: build/C/man3/strtol.3:296
950 #, no-wrap
951 msgid ""
952 "    exit(EXIT_SUCCESS);\n"
953 "}\n"
954 msgstr ""
955 "    exit(EXIT_SUCCESS);\n"
956 "}\n"
957
958 #. type: Plain text
959 #: build/C/man3/atexit.3:165
960 msgid "B<_exit>(2), B<exit>(3), B<on_exit>(3)"
961 msgstr "B<_exit>(2), B<exit>(3), B<on_exit>(3)"
962
963 #. type: TH
964 #: build/C/man3/atof.3:31
965 #, no-wrap
966 msgid "ATOF"
967 msgstr "ATOF"
968
969 #. type: TH
970 #: build/C/man3/atof.3:31 build/C/man3/atoi.3:33 build/C/man3/strtod.3:45
971 #: build/C/man3/strtoimax.3:24
972 #, no-wrap
973 msgid "2014-01-22"
974 msgstr ""
975
976 #. type: TH
977 #: build/C/man3/atof.3:31 build/C/man3/atoi.3:33
978 #: build/C/man3/canonicalize_file_name.3:26 build/C/man3/drand48_r.3:27
979 #: build/C/man3/ecvt_r.3:30 build/C/man3/getauxval.3:29
980 #: build/C/man3/getenv.3:33 build/C/man3/getsubopt.3:25
981 #: build/C/man3/malloc.3:30 build/C/man3/mblen.3:16 build/C/man3/mbstowcs.3:18
982 #: build/C/man3/mbtowc.3:16 build/C/man3/mkdtemp.3:26
983 #: build/C/man3/mkstemp.3:35 build/C/man3/mktemp.3:34
984 #: build/C/man3/on_exit.3:31 build/C/man3/putenv.3:36 build/C/man3/qecvt.3:28
985 #: build/C/man3/random.3:33 build/C/man3/random_r.3:26
986 #: build/C/man3/rpmatch.3:29 build/C/man3/setenv.3:37 build/C/man3/strtol.3:31
987 #: build/C/man3/strtoul.3:33 build/C/man3/wcstombs.3:16
988 #: build/C/man3/wctomb.3:16
989 #, no-wrap
990 msgid "GNU"
991 msgstr "GNU"
992
993 #. type: Plain text
994 #: build/C/man3/atof.3:34
995 msgid "atof - convert a string to a double"
996 msgstr "atof - 文字列を double 型の数値に変換"
997
998 #. type: Plain text
999 #: build/C/man3/atof.3:39
1000 #, no-wrap
1001 msgid "B<double atof(const char *>I<nptr>B<);>\n"
1002 msgstr "B<double atof(const char *>I<nptr>B<);>\n"
1003
1004 #. type: Plain text
1005 #: build/C/man3/atof.3:47
1006 msgid ""
1007 "The B<atof>()  function converts the initial portion of the string pointed "
1008 "to by I<nptr> to I<double>.  The behavior is the same as"
1009 msgstr ""
1010 "B<atof>()  関数は、I<nptr>によって指示される文字列のはじめの部分を I<double> "
1011 "型の数値に変換する。 この振る舞いは、 B<atof>()  関数がエラーを見つけないこと"
1012 "を除いては、"
1013
1014 #. type: Plain text
1015 #: build/C/man3/atof.3:50
1016 msgid "strtod(nptr, NULL);"
1017 msgstr "strtod(nptr, NULL);"
1018
1019 #. type: Plain text
1020 #: build/C/man3/atof.3:55
1021 msgid "except that B<atof>()  does not detect errors."
1022 msgstr "と同じである。"
1023
1024 #. type: Plain text
1025 #: build/C/man3/atof.3:57 build/C/man3/atoi.3:93
1026 msgid "The converted value."
1027 msgstr "変換された値。"
1028
1029 #. type: Plain text
1030 #: build/C/man3/atof.3:65
1031 msgid ""
1032 "The B<atof>()  function is thread-safe with exceptions.  It can be safely "
1033 "used in multithreaded applications, as long as B<setlocale>(3)  is not "
1034 "called to change the locale during its execution."
1035 msgstr ""
1036
1037 #. type: Plain text
1038 #: build/C/man3/atof.3:67
1039 msgid "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
1040 msgstr "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
1041
1042 #. type: Plain text
1043 #: build/C/man3/atof.3:73
1044 msgid "B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
1045 msgstr "B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
1046
1047 #. type: TH
1048 #: build/C/man3/atoi.3:33
1049 #, no-wrap
1050 msgid "ATOI"
1051 msgstr "ATOI"
1052
1053 #. type: Plain text
1054 #: build/C/man3/atoi.3:36
1055 msgid "atoi, atol, atoll, atoq - convert a string to an integer"
1056 msgstr "atoi, atol, atoll, atoq - 文字列を整数型に変換する"
1057
1058 #. type: Plain text
1059 #: build/C/man3/atoi.3:41
1060 #, no-wrap
1061 msgid "B<int atoi(const char *>I<nptr>B<);>\n"
1062 msgstr "B<int atoi(const char *>I<nptr>B<);>\n"
1063
1064 #. type: Plain text
1065 #: build/C/man3/atoi.3:43
1066 #, no-wrap
1067 msgid "B<long atol(const char *>I<nptr>B<);>\n"
1068 msgstr "B<long atol(const char *>I<nptr>B<);>\n"
1069
1070 #. type: Plain text
1071 #: build/C/man3/atoi.3:45
1072 #, no-wrap
1073 msgid "B<long long atoll(const char *>I<nptr>B<);>\n"
1074 msgstr "B<long long atoll(const char *>I<nptr>B<);>\n"
1075
1076 #. type: Plain text
1077 #: build/C/man3/atoi.3:47
1078 #, no-wrap
1079 msgid "B<long long atoq(const char *>I<nptr>B<);>\n"
1080 msgstr "B<long long atoq(const char *>I<nptr>B<);>\n"
1081
1082 #. type: Plain text
1083 #: build/C/man3/atoi.3:56
1084 msgid "B<atoll>():"
1085 msgstr "B<atoll>():"
1086
1087 #. type: Plain text
1088 #: build/C/man3/atoi.3:59
1089 msgid ""
1090 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
1091 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1092 msgstr ""
1093 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
1094 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1095
1096 #. type: Plain text
1097 #: build/C/man3/atoi.3:71
1098 msgid ""
1099 "The B<atoi>()  function converts the initial portion of the string pointed "
1100 "to by I<nptr> to I<int>.  The behavior is the same as"
1101 msgstr ""
1102 "B<atoi>()  関数は、I<nptr> によって指示される文字列のはじめの部分を I<int> 型"
1103 "整数に変換する。 この振る舞いは、 B<atoi>()  関数がエラーを見つけない点以外"
1104 "は、"
1105
1106 #. type: Plain text
1107 #: build/C/man3/atoi.3:74
1108 msgid "strtol(nptr, NULL, 10);"
1109 msgstr "strtol(nptr, NULL, 10);"
1110
1111 #. type: Plain text
1112 #: build/C/man3/atoi.3:79
1113 msgid "except that B<atoi>()  does not detect errors."
1114 msgstr "と同じである。"
1115
1116 #. type: Plain text
1117 #: build/C/man3/atoi.3:91
1118 msgid ""
1119 "The B<atol>()  and B<atoll>()  functions behave the same as B<atoi>(), "
1120 "except that they convert the initial portion of the string to their return "
1121 "type of I<long> or I<long long>.  B<atoq>()  is an obsolete name for B<atoll>"
1122 "()."
1123 msgstr ""
1124 "B<atol>()  関数と B<atoll>()  関数は B<atoi>()  と同様の振る舞いをするが、 文"
1125 "字列のはじめの部分をそれぞれ I<long> や I<long long> に変換する。 B<atoq>()  "
1126 "は B<atoll>()  の古い名前である。"
1127
1128 #. type: Plain text
1129 #: build/C/man3/atoi.3:105
1130 msgid ""
1131 "The B<atoi>(), B<atol>(), and B<atoll>()  functions are thread-safe with "
1132 "exceptions.  These functions can be safely used in multithreaded "
1133 "applications, as long as B<setlocale>(3)  is not called to change the locale "
1134 "during their execution."
1135 msgstr ""
1136
1137 #. type: Plain text
1138 #: build/C/man3/atoi.3:115
1139 msgid ""
1140 "SVr4, POSIX.1-2001, 4.3BSD, C99.  C89 and POSIX.1-1996 include the functions "
1141 "B<atoi>()  and B<atol>()  only.  B<atoq>()  is a GNU extension."
1142 msgstr ""
1143 "SVr4, POSIX.1-2001, 4.3BSD, C99.  C89 と POSIX.1-1996 には B<atoi>()  と "
1144 "B<atol>()  だけが含まれている。 B<atoq>()  は GNU による拡張である。"
1145
1146 #. type: Plain text
1147 #: build/C/man3/atoi.3:125
1148 msgid ""
1149 "The nonstandard B<atoq>()  function is not present in libc 4.6.27 or glibc "
1150 "2, but is present in libc5 and libc 4.7 (though only as an inline function "
1151 "in I<E<lt>stdlib.hE<gt>> until libc 5.4.44).  The B<atoll>()  function is "
1152 "present in glibc 2 since version 2.0.2, but not in libc4 or libc5."
1153 msgstr ""
1154 "非標準である B<atoq>()  関数は libc 4.6.27 や glibc 2 には含まれていないが、 "
1155 "libc5 と libc 4.7 には存在している (ただし libc 5.4.44 までは I<E<lt>stdlib."
1156 "hE<gt>> のインライン関数のみである)。 B<atoll>()  関数は glibc 2 のバージョ"
1157 "ン 2.0.2 から存在しているが、 libc4 や libc5 には存在しない。"
1158
1159 #. type: Plain text
1160 #: build/C/man3/atoi.3:130
1161 msgid "B<atof>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
1162 msgstr "B<atof>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
1163
1164 #. type: TH
1165 #: build/C/man3/canonicalize_file_name.3:26
1166 #, no-wrap
1167 msgid "CANONICALIZE_FILE_NAME"
1168 msgstr "CANONICALIZE_FILE_NAME"
1169
1170 #. type: TH
1171 #: build/C/man3/canonicalize_file_name.3:26
1172 #, no-wrap
1173 msgid "2013-05-11"
1174 msgstr "2013-05-11"
1175
1176 #. type: Plain text
1177 #: build/C/man3/canonicalize_file_name.3:29
1178 msgid "canonicalize_file_name - return the canonicalized absolute pathname"
1179 msgstr "canonicalize_file_name - 正規化された絶対パス名を返す"
1180
1181 #. type: Plain text
1182 #: build/C/man3/canonicalize_file_name.3:31
1183 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
1184 msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"
1185
1186 #. type: Plain text
1187 #: build/C/man3/canonicalize_file_name.3:35
1188 msgid "B<char *canonicalize_file_name(const char *>I<path>B<);>"
1189 msgstr "B<char *canonicalize_file_name(const char *>I<path>B<);>"
1190
1191 #. type: Plain text
1192 #: build/C/man3/canonicalize_file_name.3:49
1193 msgid ""
1194 "The B<canonicalize_file_name>()  function returns a null-terminated string "
1195 "containing the canonicalized absolute pathname corresponding to I<path>.  In "
1196 "the returned string, symbolic links are resolved, as are I<.> and I<..> "
1197 "pathname components.  Consecutive slash (I</>)  characters are replaced by a "
1198 "single slash."
1199 msgstr ""
1200 "B<canonicalize_file_name>() 関数は I<path> に対応する正規化された絶対パス名を"
1201 "示す NULL 終端された文字列を返す。返された文字列では、シンボリックリンクや、"
1202 "パス名に含まれる I<.> や I<..> は展開される。連続するスラッシュ (I</>) 文字は"
1203 "スラッシュ一つに置換される。"
1204
1205 #. type: Plain text
1206 #: build/C/man3/canonicalize_file_name.3:55
1207 msgid ""
1208 "The returned string is dynamically allocated by B<canonicalize_file_name>()  "
1209 "and the caller should deallocate it with B<free>(3)  when it is no longer "
1210 "required."
1211 msgstr ""
1212 "返される文字列は B<canonicalize_file_name>() により動的に割り当てられる。呼び"
1213 "出し側は、必要なくなった際にはこの文字列を B<free>(3) で解放すべきである。"
1214
1215 #. type: Plain text
1216 #: build/C/man3/canonicalize_file_name.3:59
1217 msgid "The call I<canonicalize_file_name(path)> is equivalent to the call:"
1218 msgstr "I<canonicalize_file_name(path)> は以下と等価である。"
1219
1220 #. type: Plain text
1221 #: build/C/man3/canonicalize_file_name.3:61
1222 #, no-wrap
1223 msgid "    realpath(path, NULL);\n"
1224 msgstr "    realpath(path, NULL);\n"
1225
1226 #. type: Plain text
1227 #: build/C/man3/canonicalize_file_name.3:70
1228 msgid ""
1229 "On success, B<canonicalize_file_name>()  returns a null-terminated string.  "
1230 "On error (e.g., a pathname component is unreadable or does not exist), "
1231 "B<canonicalize_file_name>()  returns NULL and sets I<errno> to indicate the "
1232 "error."
1233 msgstr ""
1234 "成功すると、 B<canonicalize_file_name>() は NULL 終端された文字列を返す。エ"
1235 "ラーの場合 (例えば、パス名の中に読み込めなかったり存在しないパスが含まれてい"
1236 "る場合など)、 B<canonicalize_file_name>() は NULL を返し、 I<errno> にエラー"
1237 "内容を示す値を設定する。"
1238
1239 #. type: SH
1240 #: build/C/man3/canonicalize_file_name.3:70 build/C/man3/getauxval.3:181
1241 #: build/C/man3/mkdtemp.3:75 build/C/man3/mkstemp.3:161
1242 #: build/C/man3/mktemp.3:91 build/C/man3/putenv.3:75 build/C/man3/random.3:140
1243 #: build/C/man3/random_r.3:105 build/C/man3/rpmatch.3:82
1244 #: build/C/man3/setenv.3:119 build/C/man3/strtod.3:156
1245 #: build/C/man3/strtol.3:144 build/C/man3/strtoul.3:148
1246 #, no-wrap
1247 msgid "ERRORS"
1248 msgstr "エラー"
1249
1250 #. type: Plain text
1251 #: build/C/man3/canonicalize_file_name.3:73
1252 msgid "See B<realpath>(3)."
1253 msgstr "B<realpath>(3) 参照。"
1254
1255 #. type: Plain text
1256 #: build/C/man3/canonicalize_file_name.3:75
1257 msgid "This function is a GNU extension."
1258 msgstr "この関数は GNU による拡張である。"
1259
1260 #. type: Plain text
1261 #: build/C/man3/canonicalize_file_name.3:78
1262 msgid "B<readlink>(2), B<realpath>(3)"
1263 msgstr "B<readlink>(2), B<realpath>(3)"
1264
1265 #. type: TH
1266 #: build/C/man3/cfree.3:24
1267 #, no-wrap
1268 msgid "CFREE"
1269 msgstr "CFREE"
1270
1271 #. type: TH
1272 #: build/C/man3/cfree.3:24 build/C/man3/ecvt_r.3:30 build/C/man3/rpmatch.3:29
1273 #, no-wrap
1274 msgid "2007-07-26"
1275 msgstr "2007-07-26"
1276
1277 #. type: Plain text
1278 #: build/C/man3/cfree.3:27
1279 msgid "cfree - free allocated memory"
1280 msgstr "cfree - 割り当てられたメモリを解放する"
1281
1282 #. type: Plain text
1283 #: build/C/man3/cfree.3:34
1284 #, no-wrap
1285 msgid ""
1286 "/* In SunOS 4 */\n"
1287 "B<int cfree(void *>I<ptr>B<);>\n"
1288 msgstr ""
1289 "/* SunOS 4 では */\n"
1290 "B<int cfree(void *>I<ptr>B<);>\n"
1291
1292 #. type: Plain text
1293 #: build/C/man3/cfree.3:37
1294 #, no-wrap
1295 msgid ""
1296 "/* In glibc or FreeBSD libcompat */\n"
1297 "B<void cfree(void *>I<ptr>B<);>\n"
1298 msgstr ""
1299 "/* glibc と FreeBSD libcompat では */\n"
1300 "B<void cfree(void *>I<ptr>B<);>\n"
1301
1302 #. type: Plain text
1303 #: build/C/man3/cfree.3:40
1304 #, no-wrap
1305 msgid ""
1306 "/* In SCO OpenServer */\n"
1307 "B<void cfree(char *>I<ptr>B<, unsigned >I<num>B<, unsigned >I<size>B<);>\n"
1308 msgstr ""
1309 "/* SCO OpenServer では */\n"
1310 "B<void cfree(char *>I<ptr>B<, unsigned >I<num>B<, unsigned >I<size>B<);>\n"
1311
1312 #. type: Plain text
1313 #: build/C/man3/cfree.3:43
1314 #, no-wrap
1315 msgid ""
1316 "/* In Solaris watchmalloc.so.1 */\n"
1317 "B<void cfree(void *>I<ptr>B<, size_t >I<nelem>B<, size_t >I<elsize>B<);>\n"
1318 msgstr ""
1319 "/* Solaris watchmalloc.so.1 では */\n"
1320 "B<void cfree(void *>I<ptr>B<, size_t >I<nelem>B<, size_t >I<elsize>B<);>\n"
1321
1322 #. type: Plain text
1323 #: build/C/man3/cfree.3:52
1324 msgid "B<cfree>(): _BSD_SOURCE || _SVID_SOURCE"
1325 msgstr "B<cfree>(): _BSD_SOURCE || _SVID_SOURCE"
1326
1327 #. type: Plain text
1328 #: build/C/man3/cfree.3:57
1329 msgid "This function should never be used.  Use B<free>(3)  instead."
1330 msgstr "この関数は決して使用すべきではない。 代わりに B<free>(3)  を使うこと。"
1331
1332 #. type: SS
1333 #: build/C/man3/cfree.3:57
1334 #, no-wrap
1335 msgid "1-arg cfree"
1336 msgstr "引き数が 1 つの cfree"
1337
1338 #. type: Plain text
1339 #: build/C/man3/cfree.3:63
1340 msgid ""
1341 "In glibc, the function B<cfree>()  is a synonym for B<free>(3), \"added for "
1342 "compatibility with SunOS\"."
1343 msgstr ""
1344 "glibc では、関数 B<cfree>()  は B<free>(3)  の別名であり、「SunOS との互換性"
1345 "のために追加された」。"
1346
1347 #. type: Plain text
1348 #: build/C/man3/cfree.3:69
1349 msgid ""
1350 "Other systems have other functions with this name.  The declaration is "
1351 "sometimes in I<E<lt>stdlib.hE<gt>> and sometimes in I<E<lt>malloc.hE<gt>>."
1352 msgstr ""
1353 "他のシステムでは、この名前の別の関数がある。 この宣言は I<E<lt>stdlib."
1354 "hE<gt>> に存在する場合もあるし、 I<E<lt>malloc.hE<gt>> に存在する場合もある。"
1355
1356 #. type: SS
1357 #: build/C/man3/cfree.3:69
1358 #, no-wrap
1359 msgid "3-arg cfree"
1360 msgstr "引き数が 3 つの cfree"
1361
1362 #. type: Plain text
1363 #: build/C/man3/cfree.3:74
1364 msgid ""
1365 "Some SCO and Solaris versions have malloc libraries with a 3-argument "
1366 "B<cfree>(), apparently as an analog to B<calloc>(3)."
1367 msgstr ""
1368 "SCO と Solaris のいくつかのバージョンでは、 引き数が 3 つの B<cfree>()  が含"
1369 "まれる malloc ライブラリがある。 これは明らかに B<calloc>(3)  に類似してい"
1370 "る。"
1371
1372 #. type: Plain text
1373 #: build/C/man3/cfree.3:76
1374 msgid "If you need it while porting something, add"
1375 msgstr "何かを移植する時にこの関数が必要な場合、"
1376
1377 #. type: Plain text
1378 #: build/C/man3/cfree.3:79
1379 msgid "#define cfree(p, n, s) free((p))"
1380 msgstr "#define cfree(p, n, s) free((p))"
1381
1382 #. type: Plain text
1383 #: build/C/man3/cfree.3:82
1384 msgid "to your file."
1385 msgstr "をファイルに追加すること。"
1386
1387 #. type: Plain text
1388 #: build/C/man3/cfree.3:91
1389 msgid ""
1390 "A frequently asked question is \"Can I use B<free>(3)  to free memory "
1391 "allocated with B<calloc>(3), or do I need B<cfree>()?\" Answer: use B<free>"
1392 "(3)."
1393 msgstr ""
1394 "よく尋ねられる質問は 「B<calloc>(3)  で割り当てられたメモリを解放するのに "
1395 "B<free>(3)  を使うことができるか、 それとも B<cfree>()  を使う必要があるか」"
1396 "というものである。 答え: B<free>(3)  を使うこと。"
1397
1398 #. type: Plain text
1399 #: build/C/man3/cfree.3:96
1400 msgid ""
1401 "An SCO manual writes: \"The cfree routine is provided for compliance to the "
1402 "iBCSe2 standard and simply calls free.  The num and size arguments to cfree "
1403 "are not used.\""
1404 msgstr ""
1405 "SCO のマニュアルには以下のように記述されている: 「cfree ルーチンは iBCSe2 規"
1406 "格に従うために提供されており、 単に free を呼んでいるだけである。 cfree の "
1407 "num と size 引き数は使用されない。」"
1408
1409 #. type: Plain text
1410 #: build/C/man3/cfree.3:112
1411 msgid ""
1412 "The SunOS version of B<cfree>()  (which is a synonym for B<free>(3))  "
1413 "returns 1 on success and 0 on failure.  In case of error, I<errno> is set to "
1414 "B<EINVAL>: the value of I<ptr> was not a pointer to a block previously "
1415 "allocated by one of the routines in the B<malloc>(3)  family."
1416 msgstr ""
1417 "SunOS 版の B<cfree>()  (B<free>(3)  の別名) は、成功した場合に 1 を返し、失敗"
1418 "した場合に 0 を返す。 エラーの場合、 I<errno> が B<EINVAL> に設定される: "
1419 "I<ptr> の値が B<malloc>()  系のルーチンの 1 つで以前に割り当てられた ブロック"
1420 "へのポインタでない。"
1421
1422 #. type: Plain text
1423 #: build/C/man3/cfree.3:117
1424 msgid ""
1425 "The 3-argument version of B<cfree>()  as used by SCO conforms to the iBCSe2 "
1426 "standard: Intel386 Binary Compatibility Specification, Edition 2."
1427 msgstr ""
1428 "SCO で用いられている引き数が 3 つの B<cfree>()  は、iBCSe2 規格: Intel386 "
1429 "Binary Compatibility Specification, Edition 2 (Intel386 バイナリ互換仕様、第 "
1430 "2 版) に準拠する。"
1431
1432 #. type: Plain text
1433 #: build/C/man3/cfree.3:119
1434 msgid "B<malloc>(3)"
1435 msgstr "B<malloc>(3)"
1436
1437 #. type: TH
1438 #: build/C/man3/clearenv.3:26
1439 #, no-wrap
1440 msgid "CLEARENV"
1441 msgstr "CLEARENV"
1442
1443 #. type: TH
1444 #: build/C/man3/clearenv.3:26
1445 #, no-wrap
1446 msgid "2010-10-04"
1447 msgstr "2010-10-04"
1448
1449 #. type: Plain text
1450 #: build/C/man3/clearenv.3:29
1451 msgid "clearenv - clear the environment"
1452 msgstr "clearenv - 環境 (environment) をクリアする"
1453
1454 #. type: Plain text
1455 #: build/C/man3/clearenv.3:34
1456 #, no-wrap
1457 msgid "B<int clearenv(void);>\n"
1458 msgstr "B<int clearenv(void);>\n"
1459
1460 #. type: Plain text
1461 #: build/C/man3/clearenv.3:43
1462 msgid "B<clearenv>(): _SVID_SOURCE || _BSD_SOURCE"
1463 msgstr "B<clearenv>(): _SVID_SOURCE || _BSD_SOURCE"
1464
1465 #. type: Plain text
1466 #: build/C/man3/clearenv.3:50
1467 msgid ""
1468 "The B<clearenv>()  function clears the environment of all name-value pairs "
1469 "and sets the value of the external variable I<environ> to NULL."
1470 msgstr ""
1471 "B<clearenv>()  関数は、名前と値が組になった全ての環境をクリアする。 さらに外"
1472 "部変数 I<environ> の値を NULL にする。"
1473
1474 #.  Most versions of UNIX return -1 on error, or do not even have errors.
1475 #.  Glibc info and the Watcom C library document "a nonzero value".
1476 #. type: Plain text
1477 #: build/C/man3/clearenv.3:57
1478 msgid ""
1479 "The B<clearenv>()  function returns zero on success, and a nonzero value on "
1480 "failure."
1481 msgstr ""
1482 "B<clearenv>()  関数は、成功した場合は 0 を返し、 失敗した場合は 0 以外を返"
1483 "す。"
1484
1485 #. type: SH
1486 #: build/C/man3/clearenv.3:57 build/C/man3/getauxval.3:183
1487 #: build/C/man3/getenv.3:93 build/C/man3/getloadavg.3:63
1488 #: build/C/man3/mkdtemp.3:84 build/C/man3/mkstemp.3:188
1489 #, no-wrap
1490 msgid "VERSIONS"
1491 msgstr "バージョン"
1492
1493 #. type: Plain text
1494 #: build/C/man3/clearenv.3:60
1495 msgid "Not in libc4, libc5.  In glibc since glibc 2.0."
1496 msgstr "libc4, libc5 では使用できない。 glibc 2.0 以降の glibc で使用できる。"
1497
1498 #. type: Plain text
1499 #: build/C/man3/clearenv.3:74
1500 msgid ""
1501 "Various UNIX variants (DG/UX, HP-UX, QNX, ...).  POSIX.9 (bindings for "
1502 "FORTRAN77).  POSIX.1-1996 did not accept B<clearenv>()  and B<putenv>(3), "
1503 "but changed its mind and scheduled these functions for some later issue of "
1504 "this standard (cf. B.4.6.1).  However, POSIX.1-2001 adds only B<putenv>(3), "
1505 "and rejected B<clearenv>()."
1506 msgstr ""
1507 "(DG/UX, HP-UX, QNX, などの) 多くの UNIX 系 OS。 (FORTRAN77 へのバインディング"
1508 "である) POSIX.9。 POSIX.1-1996 では B<clearenv>()  と B<putenv>(3)  は採用さ"
1509 "れなかったが、 方針が変更され、この標準規格の以降の号 (B.4.6.1 を参照) では "
1510 "採用されることになった。 しかし POSIX.1-2001 では B<putenv>(3) だけが追加さ"
1511 "れ、 B<clearenv>()  の追加は否決された。"
1512
1513 #. type: Plain text
1514 #: build/C/man3/clearenv.3:78
1515 msgid ""
1516 "Used in security-conscious applications.  If it is unavailable the assignment"
1517 msgstr ""
1518 "この関数はセキュリティに考慮したアプリケーションで使われる。 この関数が使用で"
1519 "きない場合は、"
1520
1521 #. type: Plain text
1522 #: build/C/man3/clearenv.3:81
1523 #, no-wrap
1524 msgid "    environ = NULL;\n"
1525 msgstr "    environ = NULL;\n"
1526
1527 #. type: Plain text
1528 #: build/C/man3/clearenv.3:84
1529 msgid "will probably do."
1530 msgstr "というように変数 environ を設定すればよい。"
1531
1532 #.  .LP
1533 #.  HP-UX has a ENOMEM error return.
1534 #. type: Plain text
1535 #: build/C/man3/clearenv.3:97
1536 msgid ""
1537 "The DG/UX and Tru64 man pages write: If I<environ> has been modified by "
1538 "anything other than the B<putenv>(3), B<getenv>(3), or B<clearenv>()  "
1539 "functions, then B<clearenv>()  will return an error and the process "
1540 "environment will remain unchanged."
1541 msgstr ""
1542 "DG/UX と Tru64 man ページには次のように記されている: I<environ> が B<putenv>"
1543 "(3), B<getenv>(3), B<clearenv>()  関数以外で変更された場合、 B<clearenv>()  "
1544 "はエラーを返し、プロセス環境は変更前のままにされる。"
1545
1546 #. type: Plain text
1547 #: build/C/man3/clearenv.3:103
1548 msgid "B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
1549 msgstr ""
1550 "B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
1551
1552 #. type: TH
1553 #: build/C/man3/drand48.3:30
1554 #, no-wrap
1555 msgid "DRAND48"
1556 msgstr "DRAND48"
1557
1558 #. type: Plain text
1559 #: build/C/man3/drand48.3:34
1560 msgid ""
1561 "drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, "
1562 "lcong48 - generate uniformly distributed pseudo-random numbers"
1563 msgstr ""
1564 "drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, "
1565 "lcong48 - 一様分布する疑似乱数を生成する関数"
1566
1567 #. type: Plain text
1568 #: build/C/man3/drand48.3:39
1569 #, no-wrap
1570 msgid "B<double drand48(void);>\n"
1571 msgstr "B<double drand48(void);>\n"
1572
1573 #. type: Plain text
1574 #: build/C/man3/drand48.3:41
1575 #, no-wrap
1576 msgid "B<double erand48(unsigned short >I<xsubi>B<[3]);>\n"
1577 msgstr "B<double erand48(unsigned short >I<xsubi>B<[3]);>\n"
1578
1579 #. type: Plain text
1580 #: build/C/man3/drand48.3:43
1581 #, no-wrap
1582 msgid "B<long int lrand48(void);>\n"
1583 msgstr "B<long int lrand48(void);>\n"
1584
1585 #. type: Plain text
1586 #: build/C/man3/drand48.3:45
1587 #, no-wrap
1588 msgid "B<long int nrand48(unsigned short >I<xsubi>B<[3]);>\n"
1589 msgstr "B<long int nrand48(unsigned short >I<xsubi>B<[3]);>\n"
1590
1591 #. type: Plain text
1592 #: build/C/man3/drand48.3:47
1593 #, no-wrap
1594 msgid "B<long int mrand48(void);>\n"
1595 msgstr "B<long int mrand48(void);>\n"
1596
1597 #. type: Plain text
1598 #: build/C/man3/drand48.3:49
1599 #, no-wrap
1600 msgid "B<long int jrand48(unsigned short >I<xsubi>B<[3]);>\n"
1601 msgstr "B<long int jrand48(unsigned short >I<xsubi>B<[3]);>\n"
1602
1603 #. type: Plain text
1604 #: build/C/man3/drand48.3:51
1605 #, no-wrap
1606 msgid "B<void srand48(long int >I<seedval>B<);>\n"
1607 msgstr "B<void srand48(long int >I<seedval>B<);>\n"
1608
1609 #. type: Plain text
1610 #: build/C/man3/drand48.3:53
1611 #, no-wrap
1612 msgid "B<unsigned short *seed48(unsigned short >I<seed16v>B<[3]);>\n"
1613 msgstr "B<unsigned short *seed48(unsigned short >I<seed16v>B<[3]);>\n"
1614
1615 #. type: Plain text
1616 #: build/C/man3/drand48.3:55
1617 #, no-wrap
1618 msgid "B<void lcong48(unsigned short >I<param>B<[7]);>\n"
1619 msgstr "B<void lcong48(unsigned short >I<param>B<[7]);>\n"
1620
1621 #.  .BR drand48 (),
1622 #.  .BR erand48 (),
1623 #.  .BR lrand48 (),
1624 #.  .BR nrand48 (),
1625 #.  .BR mrand48 (),
1626 #.  .BR jrand48 (),
1627 #.  .BR srand48 (),
1628 #.  .BR seed48 (),
1629 #.  .BR lcong48 ():
1630 #. type: Plain text
1631 #: build/C/man3/drand48.3:74
1632 msgid "All functions shown above: _SVID_SOURCE || _XOPEN_SOURCE"
1633 msgstr "上記の全ての関数: _SVID_SOURCE || _XOPEN_SOURCE"
1634
1635 #. type: Plain text
1636 #: build/C/man3/drand48.3:78
1637 msgid ""
1638 "These functions generate pseudo-random numbers using the linear congruential "
1639 "algorithm and 48-bit integer arithmetic."
1640 msgstr ""
1641 "これらの関数は線形合同アルゴリズムと 48ビット整数演算を用いて 疑似乱数を生成"
1642 "する。"
1643
1644 #. type: Plain text
1645 #: build/C/man3/drand48.3:86
1646 msgid ""
1647 "The B<drand48>()  and B<erand48>()  functions return nonnegative double-"
1648 "precision floating-point values uniformly distributed between [0.0, 1.0)."
1649 msgstr ""
1650 "関数 B<drand48>()  と B<erand48>()  は、区間 [0.0, 1.0) で 一様分布する非負の"
1651 "倍精度浮動小数点実数値を返す。"
1652
1653 #. type: Plain text
1654 #: build/C/man3/drand48.3:93
1655 msgid ""
1656 "The B<lrand48>()  and B<nrand48>()  functions return nonnegative long "
1657 "integers uniformly distributed between 0 and 2^31."
1658 msgstr ""
1659 "関数 B<lrand48>()  と B<nrand48>()  は 0 と 2^31 の間で一様分布する 非負のロ"
1660 "ング整数を返す。"
1661
1662 #. type: Plain text
1663 #: build/C/man3/drand48.3:100
1664 msgid ""
1665 "The B<mrand48>()  and B<jrand48>()  functions return signed long integers "
1666 "uniformly distributed between -2^31 and 2^31."
1667 msgstr ""
1668 "関数 B<mrand48>()  と B<jrand48>()  は -2^31 と 2^31 の間で一様分布する符号付"
1669 "きロング整数を返す。"
1670
1671 #. type: Plain text
1672 #: build/C/man3/drand48.3:119
1673 msgid ""
1674 "The B<srand48>(), B<seed48>()  and B<lcong48>()  functions are "
1675 "initialization functions, one of which should be called before using "
1676 "B<drand48>(), B<lrand48>()  or B<mrand48>().  The functions B<erand48>(), "
1677 "B<nrand48>()  and B<jrand48>()  do not require an initialization function to "
1678 "be called first."
1679 msgstr ""
1680 "関数 B<srand48>(), B<seed48>(), B<lcong48>()  は初期化関数 である。 関数 "
1681 "B<drand48>(), B<lrand48>(), B<mrand48>()  を 使用する前に、これらの初期化関数"
1682 "のいずれかを呼ぶべきである。 関数 B<erand48>(), B<nrand48>(), B<jrand48>()  "
1683 "は初めに 初期化関数を呼ぶことを必要としない。"
1684
1685 #. type: Plain text
1686 #: build/C/man3/drand48.3:123
1687 msgid ""
1688 "All the functions work by generating a sequence of 48-bit integers, I<Xi>, "
1689 "according to the linear congruential formula:"
1690 msgstr ""
1691 "ここで説明しているすべての関数は 48ビットの整数の シーケンス (I<Xi>) を生成す"
1692 "ることで 機能している。生成方法は以下の線形合同の式による。"
1693
1694 #. type: Plain text
1695 #: build/C/man3/drand48.3:127
1696 #, no-wrap
1697 msgid "B<Xn+1 = (aXn + c) mod m, where n E<gt>= 0>\n"
1698 msgstr "B<Xn+1 = (aXn + c) mod m,>\n"
1699
1700 #. type: Plain text
1701 #: build/C/man3/drand48.3:140
1702 msgid ""
1703 "The parameter I<m> = 2^48, hence 48-bit integer arithmetic is performed.  "
1704 "Unless B<lcong48>()  is called, I<a> and I<c> are given by:"
1705 msgstr ""
1706 "ここで n E<gt>= 0 である。 パラメータが I<m> = 2^48 であるため、48ビット整数"
1707 "演算が行われている。 B<lcong48>()  が呼ばれていない場合、I<a> と I<c> は以下"
1708 "の式で与えられる。"
1709
1710 #. type: Plain text
1711 #: build/C/man3/drand48.3:145
1712 #, no-wrap
1713 msgid ""
1714 "B<a = 0x5DEECE66D>\n"
1715 "B<c = 0xB>\n"
1716 msgstr ""
1717 "B<a = 0x5DEECE66D>\n"
1718 "B<c = 0xB>\n"
1719
1720 #. type: Plain text
1721 #: build/C/man3/drand48.3:165
1722 msgid ""
1723 "The value returned by any of the functions B<drand48>(), B<erand48>(), "
1724 "B<lrand48>(), B<nrand48>(), B<mrand48>()  or B<jrand48>()  is computed by "
1725 "first generating the next 48-bit I<Xi> in the sequence.  Then the "
1726 "appropriate number of bits, according to the type of data item to be "
1727 "returned, is copied from the high-order bits of I<Xi> and transformed into "
1728 "the returned value."
1729 msgstr ""
1730 "関数 B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
1731 "B<jrand48>()  で返される値は次のようにして計算される。 はじめに、次の48ビット"
1732 "の I<Xi> が計算される。 そして、返すべきデータの型に依存した適切な ビット数"
1733 "が I<Xi> の上位ビットからコピーされる。 最後に、この値を返り値に変換する。"
1734
1735 #. type: Plain text
1736 #: build/C/man3/drand48.3:191
1737 msgid ""
1738 "The functions B<drand48>(), B<lrand48>()  and B<mrand48>()  store the last "
1739 "48-bit I<Xi> generated in an internal buffer.  The functions B<erand48>(), "
1740 "B<nrand48>()  and B<jrand48>()  require the calling program to provide "
1741 "storage for the successive I<Xi> values in the array argument I<xsubi>.  The "
1742 "functions are initialized by placing the initial value of I<Xi> into the "
1743 "array before calling the function for the first time."
1744 msgstr ""
1745 "関数 B<drand48>(), B<lrand48>(), B<mrand48>()  は 最後に生成された48ビットの "
1746 "I<Xi> を内部バッファに格納する。 配列の形の引数 I<xsubi> に個々の I<Xi> の値"
1747 "を 格納できるような領域を確保することを、 関数 B<erand48>(), B<nrand48>(), "
1748 "B<jrand48>()  は、 呼び出し側のプログラムに要求する。 これらの関数は、はじめ"
1749 "てそれらの関数を呼ぶ前に I<Xi> の初期値を配列に 代入することで初期化される。"
1750
1751 #. type: Plain text
1752 #: build/C/man3/drand48.3:200
1753 msgid ""
1754 "The initializer function B<srand48>()  sets the high order 32-bits of I<Xi> "
1755 "to the argument I<seedval>.  The low order 16-bits are set to the arbitrary "
1756 "value 0x330E."
1757 msgstr ""
1758 "初期化関数 B<srand48>()  は、I<Xi> の 上位32ビットを引数 I<seedval> に設定す"
1759 "る。 下位の16ビットは、適当に決められた値である0x330Eに設定される。"
1760
1761 #. type: Plain text
1762 #: build/C/man3/drand48.3:214
1763 msgid ""
1764 "The initializer function B<seed48>()  sets the value of I<Xi> to the 48-bit "
1765 "value specified in the array argument I<seed16v>.  The previous value of "
1766 "I<Xi> is copied into an internal buffer and a pointer to this buffer is "
1767 "returned by B<seed48>()."
1768 msgstr ""
1769 "初期化関数 B<seed48>()  は、I<Xi> の値を、 配列の形をした引数である "
1770 "I<seed16v> の中で指定された 48ビットの値に設定する。 I<Xi> の前の値は内部バッ"
1771 "ファにコピーされ、このバッファへのポインタが B<seed48>()  によって返される。"
1772
1773 #. type: Plain text
1774 #: build/C/man3/drand48.3:245
1775 msgid ""
1776 "The initialization function B<lcong48>()  allows the user to specify initial "
1777 "values for I<Xi>, I<a> and I<c>.  Array argument elements I<param[0-2]> "
1778 "specify I<Xi>, I<param[3-5]> specify I<a>, and I<param[6]> specifies I<c>.  "
1779 "After B<lcong48>()  has been called, a subsequent call to either B<srand48>"
1780 "()  or B<seed48>()  will restore the standard values of I<a> and I<c>."
1781 msgstr ""
1782 "初期化関数 B<lcong48>()  は使用者が I<Xi>, I<a>, I<c> の 初期値を指定するため"
1783 "の関数である。 配列の形をした引数の要素はそれぞれ、I<param[0-2]> は I<Xi> "
1784 "を、 I<param[3-5]> は I<a> を、I<param[6]> は I<c> を指定するもの である。 "
1785 "B<lcong48>()  が呼ばれた後で、 B<srand48>()  か B<seed48>()  を呼ぶと、前述"
1786 "の I<a> と I<c> の 標準値が再び設定される。"
1787
1788 #. type: Plain text
1789 #: build/C/man3/drand48.3:260
1790 msgid ""
1791 "The B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
1792 "B<jrand48>(), B<srand48>(), B<seed48>(), and B<lcong48>()  functions record "
1793 "global state information for the random number generator, so they are not "
1794 "thread-safe."
1795 msgstr ""
1796 "関数 B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
1797 "B<jrand48>(), B<srand48>(), B<seed48>(), B<lcong48>() は、 乱数生成に使用する"
1798 "状態情報をグローバルに保持する。 そのため、 これらの関数はスレッドセーフでは"
1799 "ない。"
1800
1801 #. type: Plain text
1802 #: build/C/man3/drand48.3:262
1803 msgid "SVr4, POSIX.1-2001."
1804 msgstr "SVr4, POSIX.1-2001."
1805
1806 #. type: Plain text
1807 #: build/C/man3/drand48.3:266
1808 msgid ""
1809 "These functions are declared obsolete by SVID 3, which states that B<rand>"
1810 "(3)  should be used instead."
1811 msgstr ""
1812 "SVID 3 ではこれらの関数は時代遅れと宣言されている。 SVID 3 では B<rand>(3)  "
1813 "が代わりに使用されるべきだと記述されている。"
1814
1815 #. type: Plain text
1816 #: build/C/man3/drand48.3:269
1817 msgid "B<rand>(3), B<random>(3)"
1818 msgstr "B<rand>(3), B<random>(3)"
1819
1820 #. type: TH
1821 #: build/C/man3/drand48_r.3:27
1822 #, no-wrap
1823 msgid "DRAND48_R"
1824 msgstr "DRAND48_R"
1825
1826 #. type: TH
1827 #: build/C/man3/drand48_r.3:27
1828 #, no-wrap
1829 msgid "2013-09-09"
1830 msgstr "2013-09-09"
1831
1832 #. type: Plain text
1833 #: build/C/man3/drand48_r.3:32
1834 msgid ""
1835 "drand48_r, erand48_r, lrand48_r, nrand48_r, mrand48_r, jrand48_r, srand48_r, "
1836 "seed48_r, lcong48_r - generate uniformly distributed pseudo-random numbers "
1837 "reentrantly"
1838 msgstr ""
1839 "drand48_r, erand48_r, lrand48_r, nrand48_r, mrand48_r, jrand48_r, srand48_r, "
1840 "seed48_r, lcong48_r - 一様分布する疑似乱数をリエントラント (reentrant) に生成"
1841 "する"
1842
1843 #. type: Plain text
1844 #: build/C/man3/drand48_r.3:37
1845 #, no-wrap
1846 msgid "B<int drand48_r(struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
1847 msgstr "B<int drand48_r(struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
1848
1849 #. type: Plain text
1850 #: build/C/man3/drand48_r.3:39
1851 #, no-wrap
1852 msgid "B<int erand48_r(unsigned short >I<xsubi>B<[3]>I<,>\n"
1853 msgstr "B<int erand48_r(unsigned short >I<xsubi>B<[3]>I<,>\n"
1854
1855 #. type: Plain text
1856 #: build/C/man3/drand48_r.3:41
1857 #, no-wrap
1858 msgid "B<              struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
1859 msgstr "B<              struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
1860
1861 #. type: Plain text
1862 #: build/C/man3/drand48_r.3:43
1863 #, no-wrap
1864 msgid "B<int lrand48_r(struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
1865 msgstr "B<int lrand48_r(struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
1866
1867 #. type: Plain text
1868 #: build/C/man3/drand48_r.3:45
1869 #, no-wrap
1870 msgid "B<int nrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
1871 msgstr "B<int nrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
1872
1873 #. type: Plain text
1874 #: build/C/man3/drand48_r.3:47 build/C/man3/drand48_r.3:53
1875 #, no-wrap
1876 msgid "B<              struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
1877 msgstr "B<              struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
1878
1879 #. type: Plain text
1880 #: build/C/man3/drand48_r.3:49
1881 #, no-wrap
1882 msgid "B<int mrand48_r(struct drand48_data *>I<buffer>B<,long int *>I<result>B<);>\n"
1883 msgstr "B<int mrand48_r(struct drand48_data *>I<buffer>B<,long int *>I<result>B<);>\n"
1884
1885 #. type: Plain text
1886 #: build/C/man3/drand48_r.3:51
1887 #, no-wrap
1888 msgid "B<int jrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
1889 msgstr "B<int jrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
1890
1891 #. type: Plain text
1892 #: build/C/man3/drand48_r.3:55
1893 #, no-wrap
1894 msgid "B<int srand48_r(long int >I<seedval>B<, struct drand48_data *>I<buffer>B<);>\n"
1895 msgstr "B<int srand48_r(long int >I<seedval>B<, struct drand48_data *>I<buffer>B<);>\n"
1896
1897 #. type: Plain text
1898 #: build/C/man3/drand48_r.3:57
1899 #, no-wrap
1900 msgid "B<int seed48_r(unsigned short int >I<seed16v[3]>B<,>\n"
1901 msgstr "B<int seed48_r(unsigned short int >I<seed16v[3]>B<,>\n"
1902
1903 #. type: Plain text
1904 #: build/C/man3/drand48_r.3:59
1905 #, no-wrap
1906 msgid "B<             struct drand48_data *>I<buffer>B<);>\n"
1907 msgstr "B<             struct drand48_data *>I<buffer>B<);>\n"
1908
1909 #. type: Plain text
1910 #: build/C/man3/drand48_r.3:61
1911 #, no-wrap
1912 msgid "B<int lcong48_r(unsigned short int >I<param[7]>B<,>\n"
1913 msgstr "B<int lcong48_r(unsigned short int >I<param[7]>B<,>\n"
1914
1915 #. type: Plain text
1916 #: build/C/man3/drand48_r.3:63
1917 #, no-wrap
1918 msgid "B<              struct drand48_data *>I<buffer>B<);>\n"
1919 msgstr "B<              struct drand48_data *>I<buffer>B<);>\n"
1920
1921 #.  .BR drand48_r (),
1922 #.  .BR erand48_r (),
1923 #.  .BR lrand48_r (),
1924 #.  .BR nrand48_r (),
1925 #.  .BR mrand48_r (),
1926 #.  .BR jrand48_r (),
1927 #.  .BR srand48_r (),
1928 #.  .BR seed48_r (),
1929 #.  .BR lcong48_r ():
1930 #. type: Plain text
1931 #: build/C/man3/drand48_r.3:82
1932 msgid "All functions shown above: _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE"
1933 msgstr "上記の全ての関数: _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE"
1934
1935 #. type: Plain text
1936 #: build/C/man3/drand48_r.3:89
1937 msgid ""
1938 "These functions are the reentrant analogs of the functions described in "
1939 "B<drand48>(3).  Instead of modifying the global random generator state, they "
1940 "use the supplied data I<buffer>."
1941 msgstr ""
1942 "これらの関数は B<drand48>(3)  で説明されている関数に類似するリエントラントな"
1943 "関数である。 大域的な乱数生成の状態を変更する代わりに、 これらの関数は指定さ"
1944 "れたデータ I<buffer> を使う。"
1945
1946 #. type: Plain text
1947 #: build/C/man3/drand48_r.3:96
1948 msgid ""
1949 "Before the first use, this struct must be initialized, for example, by "
1950 "filling it with zeros, or by calling one of the functions B<srand48_r>(), "
1951 "B<seed48_r>(), or B<lcong48_r>()."
1952 msgstr ""
1953 "最初に使う前に、この構造体は初期化されていなければならない。 初期化は、たとえ"
1954 "ば 0 で埋めたり、関数 B<srand48_r>(), B<seed48_r>(), B<lcong48_r>()  のいずれ"
1955 "かを呼び出すことによって行われる。"
1956
1957 #. type: Plain text
1958 #: build/C/man3/drand48_r.3:98
1959 msgid "The return value is 0."
1960 msgstr "返り値は 0 である。"
1961
1962 #. type: Plain text
1963 #: build/C/man3/drand48_r.3:112
1964 msgid ""
1965 "The B<drand48_r>(), B<erand48_r>(), B<lrand48_r>(), B<nrand48_r>(), "
1966 "B<mrand48_r>(), B<jrand48_r>(), B<srand48_r>(), B<seed48_r>(), and "
1967 "B<lcong48_r>()  functions are thread-safe."
1968 msgstr ""
1969 "関数 B<drand48_r>(), B<erand48_r>(), B<lrand48_r>(), B<nrand48_r>(), "
1970 "B<mrand48_r>(), B<jrand48_r>(), B<srand48_r>(), B<seed48_r>(), B<lcong48_r>"
1971 "() はスレッドセーフである。"
1972
1973 #. type: Plain text
1974 #: build/C/man3/drand48_r.3:114
1975 msgid "These functions are GNU extensions and are not portable."
1976 msgstr "これらの関数は GNU による拡張であり、移植性はない。"
1977
1978 #. type: Plain text
1979 #: build/C/man3/drand48_r.3:118 build/C/man3/random_r.3:136
1980 msgid "B<drand48>(3), B<rand>(3), B<random>(3)"
1981 msgstr "B<drand48>(3), B<rand>(3), B<random>(3)"
1982
1983 #. type: TH
1984 #: build/C/man3/ecvt.3:32
1985 #, no-wrap
1986 msgid "ECVT"
1987 msgstr "ECVT"
1988
1989 #. type: TH
1990 #: build/C/man3/ecvt.3:32
1991 #, no-wrap
1992 msgid "2013-07-04"
1993 msgstr "2013-07-04"
1994
1995 #. type: Plain text
1996 #: build/C/man3/ecvt.3:35
1997 msgid "ecvt, fcvt - convert a floating-point number to a string"
1998 msgstr "ecvt, fcvt - 浮動小数点数の文字列への変換"
1999
2000 #. type: Plain text
2001 #: build/C/man3/ecvt.3:40
2002 msgid ""
2003 "B<char *ecvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
2004 "B<int *>I<sign>B<);>"
2005 msgstr ""
2006 "B<char *ecvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
2007 "B<int *>I<sign>B<);>"
2008
2009 #. type: Plain text
2010 #: build/C/man3/ecvt.3:43
2011 msgid ""
2012 "B<char *fcvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
2013 "B<int *>I<sign>B<);>"
2014 msgstr ""
2015 "B<char *fcvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
2016 "B<int *>I<sign>B<);>"
2017
2018 #. type: Plain text
2019 #: build/C/man3/ecvt.3:51
2020 msgid "B<ecvt>(), B<fcvt>():"
2021 msgstr "B<ecvt>(), B<fcvt>():"
2022
2023 #. type: TP
2024 #: build/C/man3/ecvt.3:54 build/C/man3/gcvt.3:49 build/C/man3/mktemp.3:53
2025 #, no-wrap
2026 msgid "Since glibc 2.12:"
2027 msgstr "glibc 2.12 以降:"
2028
2029 #. type: Plain text
2030 #: build/C/man3/ecvt.3:61 build/C/man3/gcvt.3:56
2031 #, no-wrap
2032 msgid ""
2033 "_SVID_SOURCE ||\n"
2034 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
2035 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
2036 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
2037 msgstr ""
2038 "_SVID_SOURCE ||\n"
2039 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
2040 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
2041 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
2042
2043 #. type: TP
2044 #: build/C/man3/ecvt.3:62 build/C/man3/gcvt.3:57 build/C/man3/mktemp.3:59
2045 #, no-wrap
2046 msgid "Before glibc 2.12:"
2047 msgstr "glibc 2.12 より前:"
2048
2049 #. type: Plain text
2050 #: build/C/man3/ecvt.3:92
2051 msgid ""
2052 "The B<ecvt>()  function converts I<number> to a null-terminated string of "
2053 "I<ndigits> digits (where I<ndigits> is reduced to a system-specific limit "
2054 "determined by the precision of a I<double>), and returns a pointer to the "
2055 "string.  The high-order digit is nonzero, unless I<number> is zero.  The low "
2056 "order digit is rounded.  The string itself does not contain a decimal point; "
2057 "however, the position of the decimal point relative to the start of the "
2058 "string is stored in I<*decpt>.  A negative value for I<*decpt> means that "
2059 "the decimal point is to the left of the start of the string.  If the sign of "
2060 "I<number> is negative, I<*sign> is set to a nonzero value, otherwise it is "
2061 "set to 0.  If I<number> is zero, it is unspecified whether I<*decpt> is 0 or "
2062 "1."
2063 msgstr ""
2064 "関数 B<ecvt>()  は I<number> を NUL 文字で終端された I<ndigits> 文字の文字列"
2065 "へ変換し、その文字列へのポインタを返す (I<ndigits> が I<double> の精度によっ"
2066 "て決定されるシステム依存の上限値より大きい場合は、 その条件値が I<ndigits> の"
2067 "値となる)。 I<number> が 0 でなければ、最上位の桁は 0 以外である。 最下位の桁"
2068 "は丸められる。 文字列には小数点は含まれない。そのかわりに、文字列の先頭からの"
2069 "小数点の 位置が I<*decpt> に保持される。 I<*decpt> が負の値の場合、小数点が文"
2070 "字列の先頭の左側にあることを意味する。 もし(I<number>の)符号が負ならば "
2071 "I<*sign> は 0 以外の値に、 そうでなければ 0 に設定される。 I<number> が 0 な"
2072 "ら、I<*decpt> が 0 か 1 かは未規定である。"
2073
2074 #. type: Plain text
2075 #: build/C/man3/ecvt.3:99
2076 msgid ""
2077 "The B<fcvt>()  function is identical to B<ecvt>(), except that I<ndigits> "
2078 "specifies the number of digits after the decimal point."
2079 msgstr ""
2080 "関数 B<fcvt>()  は B<ecvt>()  と同じ機能を持つが、I<ndigits> は小数点以下の文"
2081 "字数を指定する。"
2082
2083 #. type: Plain text
2084 #: build/C/man3/ecvt.3:110
2085 msgid ""
2086 "Both the B<ecvt>()  and B<fcvt>()  functions return a pointer to a static "
2087 "string containing the ASCII representation of I<number>.  The static string "
2088 "is overwritten by each call to B<ecvt>()  or B<fcvt>()."
2089 msgstr ""
2090 "関数 B<ecvt>()  と B<fcvt>()  は I<number> の ASCII 表現を含む 静的な領域内の"
2091 "文字列へのポインタを返す。 この文字列は B<ecvt>()  や B<fcvt>()  の呼び出しの"
2092 "たびに上書きされる。"
2093
2094 #. type: Plain text
2095 #: build/C/man3/ecvt.3:117
2096 msgid "The B<ecvt>()  and B<fcvt>()  functions are not thread-safe."
2097 msgstr "関数 B<ecvt>() と B<fcvt>() はスレッドセーフではない。"
2098
2099 #. type: Plain text
2100 #: build/C/man3/ecvt.3:129
2101 msgid ""
2102 "SVr2; marked as LEGACY in POSIX.1-2001.  POSIX.1-2008 removes the "
2103 "specifications of B<ecvt>()  and B<fcvt>(), recommending the use of "
2104 "B<sprintf>(3)  instead (though B<snprintf>(3)  may be preferable)."
2105 msgstr ""
2106 "SVr2。 POSIX.1-2001 では「過去の名残 (LEGACY)」と位置付けられている。 "
2107 "POSIX.1-2008 では B<ecvt>()  と B<fcvt>()  の仕様が削除され、代わりに "
2108 "B<sprintf>(3)  の使用が推奨されている(しかし B<snprintf>(3)  がより適切かもし"
2109 "れない)。"
2110
2111 #. type: Plain text
2112 #: build/C/man3/ecvt.3:135
2113 msgid ""
2114 "Linux libc4 and libc5 specified the type of I<ndigits> as I<size_t>.  Not "
2115 "all locales use a point as the radix character (\"decimal point\")."
2116 msgstr ""
2117 "Linux libc4 と libc5 では I<ndigits> の型は I<size_t> となっていた。 小数点に"
2118 "ピリオドを使わないロケールもある。"
2119
2120 #. type: Plain text
2121 #: build/C/man3/ecvt.3:141
2122 msgid "B<ecvt_r>(3), B<gcvt>(3), B<qecvt>(3), B<setlocale>(3), B<sprintf>(3)"
2123 msgstr "B<ecvt_r>(3), B<gcvt>(3), B<qecvt>(3), B<setlocale>(3), B<sprintf>(3)"
2124
2125 #. type: TH
2126 #: build/C/man3/ecvt_r.3:30
2127 #, no-wrap
2128 msgid "ECVT_R"
2129 msgstr "ECVT_R"
2130
2131 #. type: Plain text
2132 #: build/C/man3/ecvt_r.3:33
2133 msgid ""
2134 "ecvt_r, fcvt_r, qecvt_r, qfcvt_r - convert a floating-point number to a "
2135 "string"
2136 msgstr "ecvt_r, fcvt_r, qecvt_r, qfcvt_r - 浮動小数点数の文字列への変換"
2137
2138 #. type: Plain text
2139 #: build/C/man3/ecvt_r.3:39
2140 #, no-wrap
2141 msgid ""
2142 "B<int ecvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2143 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2144 msgstr ""
2145 "B<int ecvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2146 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2147
2148 #. type: Plain text
2149 #: build/C/man3/ecvt_r.3:42
2150 #, no-wrap
2151 msgid ""
2152 "B<int fcvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2153 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2154 msgstr ""
2155 "B<int fcvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2156 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2157
2158 #. type: Plain text
2159 #: build/C/man3/ecvt_r.3:45
2160 #, no-wrap
2161 msgid ""
2162 "B<int qecvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2163 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2164 msgstr ""
2165 "B<int qecvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2166 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2167
2168 #. type: Plain text
2169 #: build/C/man3/ecvt_r.3:48
2170 #, no-wrap
2171 msgid ""
2172 "B<int qfcvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2173 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2174 msgstr ""
2175 "B<int qfcvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2176 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2177
2178 #. type: Plain text
2179 #: build/C/man3/ecvt_r.3:60
2180 msgid "B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>():"
2181 msgstr "B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>():"
2182
2183 #. type: Plain text
2184 #: build/C/man3/ecvt_r.3:62
2185 msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
2186 msgstr "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
2187
2188 #. type: Plain text
2189 #: build/C/man3/ecvt_r.3:86
2190 msgid ""
2191 "The functions B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>()  and B<qfcvt_r>()  are "
2192 "identical to B<ecvt>(3), B<fcvt>(3), B<qecvt>(3)  and B<qfcvt>(3), "
2193 "respectively, except that they do not return their result in a static "
2194 "buffer, but instead use the supplied I<buf> of size I<len>.  See B<ecvt>(3)  "
2195 "and B<qecvt>(3)."
2196 msgstr ""
2197 "関数 B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>()  は、それぞれ "
2198 "B<ecvt>(3), B<fcvt>(3), B<qecvt>(3), B<qfcvt>(3)  と同じであるが、 静的バッ"
2199 "ファの代わりに、長さ I<len> の指定された I<buf> に結果を格納する点が異なる。 "
2200 "B<ecvt>(3), B<qecvt>(3)  を参照のこと。"
2201
2202 #. type: Plain text
2203 #: build/C/man3/ecvt_r.3:88
2204 msgid "These functions return 0 on success, and -1 otherwise."
2205 msgstr "これらの関数は成功すると 0 を、それ以外は -1 を返す。"
2206
2207 #. type: Plain text
2208 #: build/C/man3/ecvt_r.3:90
2209 msgid "These functions are GNU extensions."
2210 msgstr "これらの関数は GNU による拡張である。"
2211
2212 #. type: Plain text
2213 #: build/C/man3/ecvt_r.3:95
2214 msgid "These functions are obsolete.  Instead, B<sprintf>(3)  is recommended."
2215 msgstr "これらの関数は廃止された。代わりに B<sprintf>(3)  の使用を推奨する。"
2216
2217 #. type: Plain text
2218 #: build/C/man3/ecvt_r.3:99
2219 msgid "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"
2220 msgstr "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"
2221
2222 #. type: TH
2223 #: build/C/man3/exit.3:29
2224 #, no-wrap
2225 msgid "EXIT"
2226 msgstr "EXIT"
2227
2228 #. type: TH
2229 #: build/C/man3/exit.3:29
2230 #, no-wrap
2231 msgid "2013-02-14"
2232 msgstr "2013-02-14"
2233
2234 #. type: Plain text
2235 #: build/C/man3/exit.3:32
2236 msgid "exit - cause normal process termination"
2237 msgstr "exit - プロセスの正常終了"
2238
2239 #. type: Plain text
2240 #: build/C/man3/exit.3:37
2241 #, no-wrap
2242 msgid "B<void exit(int >I<status>B<);>\n"
2243 msgstr "B<void exit(int >I<status>B<);>\n"
2244
2245 #. type: Plain text
2246 #: build/C/man3/exit.3:45
2247 msgid ""
2248 "The B<exit>()  function causes normal process termination and the value of "
2249 "I<status & 0377> is returned to the parent (see B<wait>(2))."
2250 msgstr ""
2251 "B<exit>()  関数は、プロセスを正常に終了させ、 I<status & 0377> という値を親プ"
2252 "ロセスへ返す (B<wait>(2)  を参照)。"
2253
2254 #. type: Plain text
2255 #: build/C/man3/exit.3:72
2256 msgid ""
2257 "All functions registered with B<atexit>(3)  and B<on_exit>(3)  are called, "
2258 "in the reverse order of their registration.  (It is possible for one of "
2259 "these functions to use B<atexit>(3)  or B<on_exit>(3)  to register an "
2260 "additional function to be executed during exit processing; the new "
2261 "registration is added to the front of the list of functions that remain to "
2262 "be called.)  If one of these functions does not return (e.g., it calls "
2263 "B<_exit>(2), or kills itself with a signal), then none of the remaining "
2264 "functions is called, and further exit processing (in particular, flushing of "
2265 "B<stdio>(3)  streams) is abandoned.  If a function has been registered "
2266 "multiple times using B<atexit>(3)  or B<on_exit>(3), then it is called as "
2267 "many times as it was registered."
2268 msgstr ""
2269 "B<atexit>(3)  や B<on_exit>(3)  によって 登録された全ての関数は、それらが登録"
2270 "された順番と逆順にコールされる。 (登録された関数の中で B<atexit>(3)  or "
2271 "B<on_exit>(3)  を使って exit 処理中に実行される追加の関数を登録することができ"
2272 "る; 新規に登録された関数は、この後で実行される関数リストの先頭に 追加され"
2273 "る。)  これらの関数の一つが返らなかった場合 (例えば、その関数が B<_exit>(2)  "
2274 "を呼び出したり、シグナルで自分自身を kill した場合)、 残りの関数はどれも呼び"
2275 "出されず、それ以降の exit 処理 (特に B<stdio>(3)  ストリームのフラッシュな"
2276 "ど) は中止される。 ある関数が B<atexit>(3)  や B<on_exit>(3)  を使って複数回"
2277 "登録されていた場合、 その関数は登録されたのと同じ回数だけ呼び出される。"
2278
2279 #. type: Plain text
2280 #: build/C/man3/exit.3:79
2281 msgid ""
2282 "All open B<stdio>(3)  streams are flushed and closed.  Files created by "
2283 "B<tmpfile>(3)  are removed."
2284 msgstr ""
2285 "オープン中の B<stdio>(3)  ストリームは全てフラッシュされて、クローズされる。 "
2286 "B<tmpfile>(3)  によって作成されたファイルは削除される。"
2287
2288 #. type: Plain text
2289 #: build/C/man3/exit.3:86
2290 msgid ""
2291 "The C standard specifies two constants, B<EXIT_SUCCESS> and B<EXIT_FAILURE>, "
2292 "that may be passed to B<exit>()  to indicate successful or unsuccessful "
2293 "termination, respectively."
2294 msgstr ""
2295 "C 標準では B<EXIT_SUCCESS> と B<EXIT_FAILURE> という 2つの定数が 定義されてい"
2296 "る。それぞれ正常終了と異常終了を示すもので、 B<exit>()  として渡すことができ"
2297 "る。"
2298
2299 #. type: Plain text
2300 #: build/C/man3/exit.3:90
2301 msgid "The B<exit>()  function does not return."
2302 msgstr "B<exit>()  関数は返らない。"
2303
2304 #. type: Plain text
2305 #: build/C/man3/exit.3:92
2306 msgid "SVr4, 4.3BSD, POSIX.1-2001, C89, C99."
2307 msgstr "SVr4, 4.3BSD, POSIX.1-2001, C89, C99."
2308
2309 #. type: Plain text
2310 #: build/C/man3/exit.3:109
2311 msgid ""
2312 "It is undefined what happens if one of the functions registered using "
2313 "B<atexit>(3)  and B<on_exit>(3)  calls either B<exit>()  or B<longjmp>(3).  "
2314 "Note that a call to B<execve>(2)  removes registrations created using "
2315 "B<atexit>(3)  and B<on_exit>(3)."
2316 msgstr ""
2317 "B<atexit>(3)  や B<on_exit>(3)  を使って登録された関数の中で B<exit>() か "
2318 "B<longjmp>(3)  が呼び出された場合、 何が起こるかは未定義である。 B<execve>"
2319 "(2) を呼び出すと、 B<atexit>(3) や B<on_exit>(3) を使って登録された関数が削除"
2320 "される点に注意すること。"
2321
2322 #. type: Plain text
2323 #: build/C/man3/exit.3:118
2324 msgid ""
2325 "The use of B<EXIT_SUCCESS> and B<EXIT_FAILURE> is slightly more portable (to "
2326 "non-UNIX environments) than the use of 0 and some nonzero value like 1 or "
2327 "-1.  In particular, VMS uses a different convention."
2328 msgstr ""
2329 "B<EXIT_SUCCESS> と B<EXIT_FAILURE> を使うと、0 や (1 や -1 といった) 0 以外の"
2330 "値を使うのに比べて (UNIX 以外の環境に) 移植するのがいくらか簡単になる。 特に "
2331 "VMS は別の方式を用いている。"
2332
2333 #. type: Plain text
2334 #: build/C/man3/exit.3:121
2335 msgid ""
2336 "BSD has attempted to standardize exit codes; see the file I<E<lt>sysexits."
2337 "hE<gt>>."
2338 msgstr ""
2339 "BSD は終了コードを標準化しようとしている; I<E<lt>sysexits.hE<gt>> を参照する"
2340 "こと。"
2341
2342 #. type: Plain text
2343 #: build/C/man3/exit.3:146
2344 msgid ""
2345 "After B<exit>(), the exit status must be transmitted to the parent process.  "
2346 "There are three cases.  If the parent has set B<SA_NOCLDWAIT>, or has set "
2347 "the B<SIGCHLD> handler to B<SIG_IGN>, the status is discarded.  If the "
2348 "parent was waiting on the child it is notified of the exit status.  In both "
2349 "cases the exiting process dies immediately.  If the parent has not indicated "
2350 "that it is not interested in the exit status, but is not waiting, the "
2351 "exiting process turns into a \"zombie\" process (which is nothing but a "
2352 "container for the single byte representing the exit status) so that the "
2353 "parent can learn the exit status when it later calls one of the B<wait>(2)  "
2354 "functions."
2355 msgstr ""
2356 "B<exit>()  の後、親プロセスに終了ステータスが渡されなければならない。 終了ス"
2357 "テータスの渡し方には 3 つの場合がある。 親プロセスが B<SA_NOCLDWAIT> を設定し"
2358 "た場合、 または B<SIGCHLD> ハンドラを B<SIG_IGN> に設定した場合、 ステータス"
2359 "は破棄される。 親プロセスが子プロセスの終了を待っている場合、 親プロセスに終"
2360 "了ステータスが伝えられる。 どちらの場合でも exit のプロセスは直ちに終了す"
2361 "る。 「終了ステータスを関知せず終了も待たない」 ということを親プロセスが指示"
2362 "していない場合、 exit プロセスは (終了ステータスを表す 1 バイトのみを保持す"
2363 "る)  「ゾンビ」プロセスになる。 これにより、後から B<wait>(2)  関数を呼び出す"
2364 "ことで、 親プロセスは終了ステータスを知ることができる。"
2365
2366 #. type: Plain text
2367 #: build/C/man3/exit.3:156
2368 msgid ""
2369 "If the implementation supports the B<SIGCHLD> signal, this signal is sent to "
2370 "the parent.  If the parent has set B<SA_NOCLDWAIT>, it is undefined whether "
2371 "a B<SIGCHLD> signal is sent."
2372 msgstr ""
2373 "B<SIGCHLD> シグナルのサポートが実装されている場合、 このシグナルは親プロセス"
2374 "に送られる。 親プロセスが B<SA_NOCLDWAIT> を設定した場合、 B<SIGCHLD> シグナ"
2375 "ルが送られるかどうかは定義されていない。"
2376
2377 #. type: Plain text
2378 #: build/C/man3/exit.3:165
2379 msgid ""
2380 "If the process is a session leader and its controlling terminal is the "
2381 "controlling terminal of the session, then each process in the foreground "
2382 "process group of this controlling terminal is sent a B<SIGHUP> signal, and "
2383 "the terminal is disassociated from this session, allowing it to be acquired "
2384 "by a new controlling process."
2385 msgstr ""
2386 "そのプロセスがセッションのリーダーで、 そのプロセスの制御端末がそのセッション"
2387 "の制御端末である場合、 この制御端末のフォアグラウンドプロセスグループにある "
2388 "各プロセスに B<SIGHUP> シグナルが送られ、端末がセッションから切り離される。 "
2389 "これにより新しい制御プロセスを取得することができる。"
2390
2391 #. type: Plain text
2392 #: build/C/man3/exit.3:177
2393 msgid ""
2394 "If the exit of the process causes a process group to become orphaned, and if "
2395 "any member of the newly orphaned process group is stopped, then a B<SIGHUP> "
2396 "signal followed by a B<SIGCONT> signal will be sent to each process in this "
2397 "process group.  See B<setpgid>(2)  for an explanation of orphaned process "
2398 "groups."
2399 msgstr ""
2400 "プロセスが終了することにより、プロセスグループが孤立して、 そのグループのメン"
2401 "バーのうちのどれかが停止した場合、 プロセスグループの各プロセスに対して "
2402 "B<SIGHUP> シグナルが送られ、続いて B<SIGCONT> シグナルが送られる。 孤立した "
2403 "(orphaned) プロセスグループの説明は B<setpgid>(2)  を参照。"
2404
2405 #. type: Plain text
2406 #: build/C/man3/exit.3:184
2407 msgid ""
2408 "B<_exit>(2), B<setpgid>(2), B<wait>(2), B<atexit>(3), B<on_exit>(3), "
2409 "B<tmpfile>(3)"
2410 msgstr ""
2411 "B<_exit>(2), B<setpgid>(2), B<wait>(2), B<atexit>(3), B<on_exit>(3), "
2412 "B<tmpfile>(3)"
2413
2414 #. type: TH
2415 #: build/C/man3/gcvt.3:30
2416 #, no-wrap
2417 msgid "GCVT"
2418 msgstr "GCVT"
2419
2420 #. type: Plain text
2421 #: build/C/man3/gcvt.3:33
2422 msgid "gcvt - convert a floating-point number to a string"
2423 msgstr "gcvt - 浮動小数点数を文字列へ変換する"
2424
2425 #. type: Plain text
2426 #: build/C/man3/gcvt.3:38
2427 #, no-wrap
2428 msgid "B<char *gcvt(double >I<number>B<, size_t >I<ndigit>B<, char *>I<buf>B<);>\n"
2429 msgstr "B<char *gcvt(double >I<number>B<, size_t >I<ndigit>B<, char *>I<buf>B<);>\n"
2430
2431 #. type: Plain text
2432 #: build/C/man3/gcvt.3:46
2433 msgid "B<gcvt>():"
2434 msgstr "B<gcvt>():"
2435
2436 #. type: Plain text
2437 #: build/C/man3/gcvt.3:61
2438 msgid ""
2439 "_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE && "
2440 "_XOPEN_SOURCE_EXTENDED"
2441 msgstr ""
2442 "_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE && "
2443 "_XOPEN_SOURCE_EXTENDED"
2444
2445 #. type: Plain text
2446 #: build/C/man3/gcvt.3:72
2447 msgid ""
2448 "The B<gcvt>()  function converts I<number> to a minimal length null-"
2449 "terminated ASCII string and stores the result in I<buf>.  It produces "
2450 "I<ndigit> significant digits in either B<printf>(3)  F format or E format."
2451 msgstr ""
2452 "関数 B<gcvt>()  は、 I<number> を、最短の長さの NULL 終端された ASCII 文字列"
2453 "へ変換し、変換後の文字列を I<buf> に格納する。 B<printf>(3)  の F フォーマッ"
2454 "トや E フォーマットのように I<ndigit> 桁の 有効数字を生成する。"
2455
2456 #. type: Plain text
2457 #: build/C/man3/gcvt.3:77
2458 msgid ""
2459 "The B<gcvt>()  function returns the address of the string pointed to by "
2460 "I<buf>."
2461 msgstr "関数 B<gcvt>()  は文字列 I<buf> へのポインタを返す。"
2462
2463 #. type: Plain text
2464 #: build/C/man3/gcvt.3:86
2465 msgid ""
2466 "Marked as LEGACY in POSIX.1-2001.  POSIX.1-2008 removes the specification of "
2467 "B<gcvt>(), recommending the use of B<sprintf>(3)  instead (though B<snprintf>"
2468 "(3)  may be preferable)."
2469 msgstr ""
2470 "POSIX.1-2001 では、 この関数は「過去の名残 (LEGACY)」と位置付けられている。 "
2471 "POSIX.1-2008 では、 B<gcvt>()  の仕様は削除され、 代わりに B<sprintf>(3)  を"
2472 "使用することが推奨されている (B<snprintf>(3)  の方が適切かもしれないが)。"
2473
2474 #. type: Plain text
2475 #: build/C/man3/gcvt.3:90
2476 msgid "B<ecvt>(3), B<fcvt>(3), B<sprintf>(3)"
2477 msgstr "B<ecvt>(3), B<fcvt>(3), B<sprintf>(3)"
2478
2479 #. type: TH
2480 #: build/C/man3/getauxval.3:29
2481 #, no-wrap
2482 msgid "GETAUXVAL"
2483 msgstr "GETAUXVAL"
2484
2485 #. type: TH
2486 #: build/C/man3/getauxval.3:29
2487 #, no-wrap
2488 msgid "2014-01-11"
2489 msgstr ""
2490
2491 #. type: Plain text
2492 #: build/C/man3/getauxval.3:32
2493 msgid "getauxval - retrieve a value from the auxiliary vector"
2494 msgstr ""
2495
2496 #. type: Plain text
2497 #: build/C/man3/getauxval.3:35
2498 #, no-wrap
2499 msgid "B<#include E<lt>sys/auxv.hE<gt>>\n"
2500 msgstr "B<#include E<lt>sys/auxv.hE<gt>>\n"
2501
2502 #. type: Plain text
2503 #: build/C/man3/getauxval.3:37
2504 #, no-wrap
2505 msgid "B<unsigned long getauxval(unsigned long >I<type>B<);>\n"
2506 msgstr "B<unsigned long getauxval(unsigned long >I<type>B<);>\n"
2507
2508 #. type: Plain text
2509 #: build/C/man3/getauxval.3:45
2510 msgid ""
2511 "The B<getauxval>()  function retrieves values from the auxiliary vector, a "
2512 "mechanism that the kernel's ELF binary loader uses to pass certain "
2513 "information to user space when a program is executed."
2514 msgstr ""
2515
2516 #. type: Plain text
2517 #: build/C/man3/getauxval.3:53
2518 msgid ""
2519 "Each entry in the auxiliary vector consists of a pair of values: a type that "
2520 "identifies what this entry represents, and a value for that type.  Given the "
2521 "argument I<type>, B<getauxval>()  returns the corresponding value."
2522 msgstr ""
2523
2524 #. type: Plain text
2525 #: build/C/man3/getauxval.3:60
2526 msgid ""
2527 "The value returned for each I<type> is given in the following list.  Not all "
2528 "I<type> values are present on all architectures."
2529 msgstr ""
2530
2531 #. type: TP
2532 #: build/C/man3/getauxval.3:60
2533 #, no-wrap
2534 msgid "B<AT_BASE>"
2535 msgstr "B<AT_BASE>"
2536
2537 #. type: Plain text
2538 #: build/C/man3/getauxval.3:63
2539 msgid ""
2540 "The base address of the program interpreter (usually, the dynamic linker)."
2541 msgstr ""
2542
2543 #. type: TP
2544 #: build/C/man3/getauxval.3:63
2545 #, no-wrap
2546 msgid "B<AT_BASE_PLATFORM>"
2547 msgstr "B<AT_BASE_PLATFORM>"
2548
2549 #. type: Plain text
2550 #: build/C/man3/getauxval.3:68
2551 msgid ""
2552 "A string identifying the real platform; may differ from B<AT_PLATFORM> "
2553 "(PowerPC only)."
2554 msgstr ""
2555
2556 #. type: TP
2557 #: build/C/man3/getauxval.3:68
2558 #, no-wrap
2559 msgid "B<AT_CLKTCK>"
2560 msgstr "B<AT_CLKTCK>"
2561
2562 #. type: Plain text
2563 #: build/C/man3/getauxval.3:75
2564 msgid ""
2565 "The frequency with which B<times>(2)  counts.  This value can also be "
2566 "obtained via I<sysconf(_SC_CLK_TCK)>."
2567 msgstr ""
2568
2569 #. type: TP
2570 #: build/C/man3/getauxval.3:75
2571 #, no-wrap
2572 msgid "B<AT_DCACHEBSIZE>"
2573 msgstr "B<AT_DCACHEBSIZE>"
2574
2575 #. type: Plain text
2576 #: build/C/man3/getauxval.3:78
2577 msgid "The data cache block size."
2578 msgstr ""
2579
2580 #. type: TP
2581 #: build/C/man3/getauxval.3:78
2582 #, no-wrap
2583 msgid "B<AT_EGID>"
2584 msgstr "B<AT_EGID>"
2585
2586 #. type: Plain text
2587 #: build/C/man3/getauxval.3:81
2588 msgid "The effective group ID of the thread."
2589 msgstr ""
2590
2591 #. type: TP
2592 #: build/C/man3/getauxval.3:81
2593 #, no-wrap
2594 msgid "B<AT_ENTRY>"
2595 msgstr "B<AT_ENTRY>"
2596
2597 #. type: Plain text
2598 #: build/C/man3/getauxval.3:84
2599 msgid "The entry address of the executable."
2600 msgstr ""
2601
2602 #. type: TP
2603 #: build/C/man3/getauxval.3:84
2604 #, no-wrap
2605 msgid "B<AT_EUID>"
2606 msgstr "B<AT_EUID>"
2607
2608 #. type: Plain text
2609 #: build/C/man3/getauxval.3:87
2610 msgid "The effective user ID of the thread."
2611 msgstr ""
2612
2613 #. type: TP
2614 #: build/C/man3/getauxval.3:87
2615 #, no-wrap
2616 msgid "B<AT_EXECFD>"
2617 msgstr "B<AT_EXECFD>"
2618
2619 #. type: Plain text
2620 #: build/C/man3/getauxval.3:90
2621 msgid "File descriptor of program."
2622 msgstr ""
2623
2624 #. type: TP
2625 #: build/C/man3/getauxval.3:90
2626 #, no-wrap
2627 msgid "B<AT_EXECFN>"
2628 msgstr "B<AT_EXECFN>"
2629
2630 #. type: Plain text
2631 #: build/C/man3/getauxval.3:93
2632 msgid "Pathname used to execute program."
2633 msgstr ""
2634
2635 #. type: TP
2636 #: build/C/man3/getauxval.3:93
2637 #, no-wrap
2638 msgid "B<AT_FLAGS>"
2639 msgstr "B<AT_FLAGS>"
2640
2641 #. type: Plain text
2642 #: build/C/man3/getauxval.3:96
2643 msgid "Flags (unused)."
2644 msgstr ""
2645
2646 #. type: TP
2647 #: build/C/man3/getauxval.3:96
2648 #, no-wrap
2649 msgid "B<AT_FPUCW>"
2650 msgstr "B<AT_FPUCW>"
2651
2652 #. type: Plain text
2653 #: build/C/man3/getauxval.3:101
2654 msgid ""
2655 "Used FPU control word (SuperH architecture only).  This gives some "
2656 "information about the FPU initialization performed by the kernel."
2657 msgstr ""
2658
2659 #. type: TP
2660 #: build/C/man3/getauxval.3:101
2661 #, no-wrap
2662 msgid "B<AT_GID>"
2663 msgstr "B<AT_GID>"
2664
2665 #. type: Plain text
2666 #: build/C/man3/getauxval.3:104
2667 msgid "The real group ID of the thread."
2668 msgstr ""
2669
2670 #. type: TP
2671 #: build/C/man3/getauxval.3:104
2672 #, no-wrap
2673 msgid "B<AT_HWCAP>"
2674 msgstr "B<AT_HWCAP>"
2675
2676 #. type: Plain text
2677 #: build/C/man3/getauxval.3:114
2678 msgid ""
2679 "A pointer to a multibyte mask of bits whose settings indicate detailed "
2680 "processor capabilities.  The contents of the bit mask are hardware dependent "
2681 "(for example, see the kernel source file I<arch/x86/include/asm/cpufeature."
2682 "h> for details relating to the Intel x86 architecture).  A human-readable "
2683 "version of the same information is available via I</proc/cpuinfo>."
2684 msgstr ""
2685
2686 #. type: TP
2687 #: build/C/man3/getauxval.3:114
2688 #, no-wrap
2689 msgid "B<AT_ICACHEBSIZE>"
2690 msgstr "B<AT_ICACHEBSIZE>"
2691
2692 #.  .TP
2693 #.  .BR AT_IGNORE
2694 #.  .TP
2695 #.  .BR AT_IGNOREPPC
2696 #.  .TP
2697 #.  .BR AT_NOTELF
2698 #. type: Plain text
2699 #: build/C/man3/getauxval.3:123
2700 msgid "The instruction cache block size."
2701 msgstr ""
2702
2703 #. type: TP
2704 #: build/C/man3/getauxval.3:123
2705 #, no-wrap
2706 msgid "B<AT_PAGESZ>"
2707 msgstr "B<AT_PAGESZ>"
2708
2709 #. type: Plain text
2710 #: build/C/man3/getauxval.3:127
2711 msgid ""
2712 "The system page size (the same value returned by I<sysconf(_SC_PAGESIZE)>)."
2713 msgstr ""
2714
2715 #. type: TP
2716 #: build/C/man3/getauxval.3:127
2717 #, no-wrap
2718 msgid "B<AT_PHDR>"
2719 msgstr "B<AT_PHDR>"
2720
2721 #. type: Plain text
2722 #: build/C/man3/getauxval.3:130
2723 msgid "The address of the program headers of the executable."
2724 msgstr ""
2725
2726 #. type: TP
2727 #: build/C/man3/getauxval.3:130
2728 #, no-wrap
2729 msgid "B<AT_PHENT>"
2730 msgstr "B<AT_PHENT>"
2731
2732 #. type: Plain text
2733 #: build/C/man3/getauxval.3:133
2734 msgid "The size of program header entry."
2735 msgstr ""
2736
2737 #. type: TP
2738 #: build/C/man3/getauxval.3:133
2739 #, no-wrap
2740 msgid "B<AT_PHNUM>"
2741 msgstr "B<AT_PHNUM>"
2742
2743 #. type: Plain text
2744 #: build/C/man3/getauxval.3:136
2745 msgid "The number of program headers."
2746 msgstr ""
2747
2748 #. type: TP
2749 #: build/C/man3/getauxval.3:136
2750 #, no-wrap
2751 msgid "B<AT_PLATFORM>"
2752 msgstr "B<AT_PLATFORM>"
2753
2754 #. type: Plain text
2755 #: build/C/man3/getauxval.3:143
2756 msgid ""
2757 "A pointer to a string that identifies the hardware platform that the program "
2758 "is running on.  The dynamic linker uses this in the interpretation of "
2759 "I<rpath> values."
2760 msgstr ""
2761
2762 #. type: TP
2763 #: build/C/man3/getauxval.3:143
2764 #, no-wrap
2765 msgid "B<AT_RANDOM>"
2766 msgstr "B<AT_RANDOM>"
2767
2768 #. type: Plain text
2769 #: build/C/man3/getauxval.3:146
2770 msgid "The address of sixteen bytes containing a random value."
2771 msgstr ""
2772
2773 #. type: TP
2774 #: build/C/man3/getauxval.3:146
2775 #, no-wrap
2776 msgid "B<AT_SECURE>"
2777 msgstr "B<AT_SECURE>"
2778
2779 #. type: Plain text
2780 #: build/C/man3/getauxval.3:158
2781 msgid ""
2782 "Has a nonzero value if this executable should be treated securely.  Most "
2783 "commonly, a nonzero value indicates that the process is executing a set-user-"
2784 "ID or set-group-ID program; alternatively, a nonzero value may be triggered "
2785 "by a Linux Security Module.  When this value is nonzero, the dynamic linker "
2786 "disables the use of certain environment variables (see B<ld-linux.so>(8))  "
2787 "and glibc changes other aspects of its behavior.  (See also B<secure_getenv>"
2788 "(3).)"
2789 msgstr ""
2790
2791 #. type: TP
2792 #: build/C/man3/getauxval.3:158
2793 #, no-wrap
2794 msgid "B<AT_SYSINFO>"
2795 msgstr "B<AT_SYSINFO>"
2796
2797 #. type: Plain text
2798 #: build/C/man3/getauxval.3:162
2799 msgid ""
2800 "The entry point to the system call function in the vDSO.  Not present/needed "
2801 "on all architectures (e.g., absent on x86-64)."
2802 msgstr ""
2803
2804 #. type: TP
2805 #: build/C/man3/getauxval.3:162
2806 #, no-wrap
2807 msgid "B<AT_SYSINFO_EHDR>"
2808 msgstr "B<AT_SYSINFO_EHDR>"
2809
2810 #. type: Plain text
2811 #: build/C/man3/getauxval.3:167
2812 msgid ""
2813 "The address of a page containing the virtual Dynamic Shared Object (vDSO)  "
2814 "that the kernel creates in order to provide fast implementations of certain "
2815 "system calls."
2816 msgstr ""
2817
2818 #. type: TP
2819 #: build/C/man3/getauxval.3:167
2820 #, no-wrap
2821 msgid "B<AT_UCACHEBSIZE>"
2822 msgstr "B<AT_UCACHEBSIZE>"
2823
2824 #. type: Plain text
2825 #: build/C/man3/getauxval.3:170
2826 msgid "The unified cache block size."
2827 msgstr ""
2828
2829 #. type: TP
2830 #: build/C/man3/getauxval.3:170
2831 #, no-wrap
2832 msgid "B<AT_UID>"
2833 msgstr "B<AT_UID>"
2834
2835 #. type: Plain text
2836 #: build/C/man3/getauxval.3:173
2837 msgid "The real user ID of the thread."
2838 msgstr ""
2839
2840 #. type: Plain text
2841 #: build/C/man3/getauxval.3:181
2842 msgid ""
2843 "On success, B<getauxval>()  returns the value corresponding to I<type>.  If "
2844 "I<type> is not found, 0 is returned."
2845 msgstr ""
2846 "成功すると、 B<getauxval>() は I<type> に対応する値を返す。 I<type> が見つか"
2847 "らない場合には 0 を返す。"
2848
2849 #. type: Plain text
2850 #: build/C/man3/getauxval.3:183
2851 msgid "No errors are diagnosed."
2852 msgstr "エラーは検出されない。"
2853
2854 #. type: Plain text
2855 #: build/C/man3/getauxval.3:187
2856 msgid "The B<getauxval>()  function was added to glibc in version 2.16."
2857 msgstr "B<getauxval>() 関数は glibc バージョン 2.16 で追加された。"
2858
2859 #. type: Plain text
2860 #: build/C/man3/getauxval.3:189
2861 msgid "This function is a nonstandard glibc extension."
2862 msgstr "この関数は非標準で glibc による拡張である。"
2863
2864 #. type: Plain text
2865 #: build/C/man3/getauxval.3:198
2866 msgid ""
2867 "The primary consumer of the information in the auxiliary vector is the "
2868 "dynamic linker B<ld-linux.so>(8).  The auxiliary vector is a convenient and "
2869 "efficient shortcut that allows the kernel to communicate a certain set of "
2870 "standard information that the dynamic linker usually or always needs.  In "
2871 "some cases, the same information could be obtained by system calls, but "
2872 "using the auxiliary vector is cheaper."
2873 msgstr ""
2874
2875 #. type: Plain text
2876 #: build/C/man3/getauxval.3:204
2877 msgid ""
2878 "The auxiliary vector resides just above the argument list and environment in "
2879 "the process address space.  The auxiliary vector supplied to a program can "
2880 "be viewed by setting the B<LD_SHOW_AUXV> environment variable when running a "
2881 "program:"
2882 msgstr ""
2883
2884 #. type: Plain text
2885 #: build/C/man3/getauxval.3:206
2886 #, no-wrap
2887 msgid "    $ LD_SHOW_AUXV=1 sleep 1\n"
2888 msgstr "    $ LD_SHOW_AUXV=1 sleep 1\n"
2889
2890 #. type: Plain text
2891 #: build/C/man3/getauxval.3:213
2892 msgid ""
2893 "The auxiliary vector of any process can (subject to file permissions)  be "
2894 "obtained via I</proc/PID/auxv>; see B<proc>(5)  for more information."
2895 msgstr ""
2896
2897 #. type: Plain text
2898 #: build/C/man3/getauxval.3:217
2899 #, fuzzy
2900 #| msgid "B<secure_getenv>(3), B<ld-linux.so>(8)"
2901 msgid "B<secure_getenv>(3), B<vdso>(7), B<ld-linux.so>(8)"
2902 msgstr "B<secure_getenv>(3), B<ld-linux.so>(8)"
2903
2904 #. type: TH
2905 #: build/C/man3/getenv.3:33
2906 #, no-wrap
2907 msgid "GETENV"
2908 msgstr "GETENV"
2909
2910 #. type: TH
2911 #: build/C/man3/getenv.3:33
2912 #, no-wrap
2913 msgid "2012-08-14"
2914 msgstr "2012-08-14"
2915
2916 #. type: Plain text
2917 #: build/C/man3/getenv.3:36
2918 msgid "getenv, secure_getenv - get an environment variable"
2919 msgstr "getenv, secure_getenv - 環境変数を得る"
2920
2921 #. type: Plain text
2922 #: build/C/man3/getenv.3:41
2923 #, no-wrap
2924 msgid "B<char *getenv(const char *>I<name>B<);>\n"
2925 msgstr "B<char *getenv(const char *>I<name>B<);>\n"
2926
2927 #. type: Plain text
2928 #: build/C/man3/getenv.3:43
2929 #, no-wrap
2930 msgid "B<char *secure_getenv(const char *>I<name>B<);>\n"
2931 msgstr "B<char *secure_getenv(const char *>I<name>B<);>\n"
2932
2933 #. type: Plain text
2934 #: build/C/man3/getenv.3:52
2935 msgid "B<secure_getenv>(): _GNU_SOURCE"
2936 msgstr "B<secure_getenv>(): _GNU_SOURCE"
2937
2938 #. type: Plain text
2939 #: build/C/man3/getenv.3:61
2940 msgid ""
2941 "The B<getenv>()  function searches the environment list to find the "
2942 "environment variable I<name>, and returns a pointer to the corresponding "
2943 "I<value> string."
2944 msgstr ""
2945 "関数 B<getenv>()  は、環境リストから名前が I<name> の環境変数を検索し、対応す"
2946 "る I<value> 文字列へのポインタを返す。"
2947
2948 #. type: Plain text
2949 #: build/C/man3/getenv.3:69
2950 msgid ""
2951 "The GNU-specific B<secure_getenv>()  function is just like B<getenv>()  "
2952 "except that it returns NULL in cases where \"secure execution\" is "
2953 "required.  Secure execution is required if one of the following conditions "
2954 "was true when the program run by the calling process was loaded:"
2955 msgstr ""
2956 "GNU 固有の B<secure_getenv>() 関数は B<getenv>() と同様だが、 \"secure "
2957 "execution\" (「安全な実行」) が必要な場合には NULL を返す点が異なる。 "
2958 "\"secure execution\" が必要となるのは、 呼び出し元プロセスにより実行されるプ"
2959 "ログラムがロードされる際に、 以下の条件のいずれか一つが成立する場合である。"
2960
2961 #. type: IP
2962 #: build/C/man3/getenv.3:69 build/C/man3/getenv.3:74 build/C/man3/getenv.3:76
2963 #, no-wrap
2964 msgid "*"
2965 msgstr "*"
2966
2967 #. type: Plain text
2968 #: build/C/man3/getenv.3:74
2969 msgid ""
2970 "the process's effective user ID did not match its real user ID or the "
2971 "process's effective group ID did not match its real group ID (typically this "
2972 "is the result of executing a set-user-ID or set-group-ID program);"
2973 msgstr ""
2974 "プロセスの実効ユーザ ID がプロセスの実ユーザ ID と一致しない場合、またはプロ"
2975 "セスの実効グループ ID がプロセスの実グループ ID と一致しない場合 (通常、この"
2976 "状況になるのは、 set-user-ID プログラムか set-group-ID プログラムを実行した場"
2977 "合である)。"
2978
2979 #. type: Plain text
2980 #: build/C/man3/getenv.3:76
2981 msgid "the effective capability bit was set on the executable file; or"
2982 msgstr "実行ファイルで実効ケーパビリティビットがセットされている場合。"
2983
2984 #. type: Plain text
2985 #: build/C/man3/getenv.3:78
2986 msgid "the process has a nonempty permitted capability set."
2987 msgstr "プロセスの許可ケーパビリティセットが空でない場合。"
2988
2989 #. type: Plain text
2990 #: build/C/man3/getenv.3:81
2991 msgid ""
2992 "Secure execution may also required if triggered by some Linux security "
2993 "modules."
2994 msgstr ""
2995 "Linux セキュリティモジュールにより要求された場合にも \"secure execution\" は"
2996 "必要となる。"
2997
2998 #. type: Plain text
2999 #: build/C/man3/getenv.3:88
3000 msgid ""
3001 "The B<secure_getenv>()  function is intended for use in general-purpose "
3002 "libraries to avoid vulnerabilities that could occur if set-user-ID or set-"
3003 "group-ID programs accidentally trusted the environment."
3004 msgstr ""
3005 "B<secure_getenv>() 関数は、 set-user-ID プログラムや set-group-ID プログラム"
3006 "が実行環境を偶然信用してしまった場合に起こり得る脆弱性を、 汎用ライブラリで回"
3007 "避するために使うことを意図して作られた。"
3008
3009 #. type: Plain text
3010 #: build/C/man3/getenv.3:93
3011 msgid ""
3012 "The B<getenv>()  function returns a pointer to the value in the environment, "
3013 "or NULL if there is no match."
3014 msgstr ""
3015 "関数 B<getenv>()  は、環境における値 value へのポインタを返す。 I<name> に"
3016 "マッチする環境変数が存在しないときには NULL を返す。"
3017
3018 #. type: Plain text
3019 #: build/C/man3/getenv.3:96
3020 msgid "B<secure_getenv>()  first appeared in glibc 2.17."
3021 msgstr "B<secure_getenv>() は glibc 2.17 で初めて登場した。"
3022
3023 #. type: Plain text
3024 #: build/C/man3/getenv.3:99
3025 msgid "B<getenv>(): SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
3026 msgstr "B<getenv>(): SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
3027
3028 #. type: Plain text
3029 #: build/C/man3/getenv.3:102
3030 msgid "B<secure_getenv>()  is a GNU extension."
3031 msgstr "B<secure_getenv>() は GNU による拡張である。"
3032
3033 #. type: Plain text
3034 #: build/C/man3/getenv.3:104
3035 msgid "The strings in the environment list are of the form I<name=value>."
3036 msgstr "環境リストの文字列は I<name=value> という形式をしている。"
3037
3038 #. type: Plain text
3039 #: build/C/man3/getenv.3:110
3040 msgid ""
3041 "As typically implemented, B<getenv>()  returns a pointer to a string within "
3042 "the environment list.  The caller must take care not to modify this string, "
3043 "since that would change the environment of the process."
3044 msgstr ""
3045 "通常の実装では、 B<getenv>()  は環境リスト内の文字列へのポインタを返す。 呼び"
3046 "出し元はこの文字列を変更しないように注意しなければならない。 この文字列を変更"
3047 "すると、そのプロセスの環境を変化させることになるからである。"
3048
3049 #. type: Plain text
3050 #: build/C/man3/getenv.3:123
3051 msgid ""
3052 "The implementation of B<getenv>()  is not required to be reentrant.  The "
3053 "string pointed to by the return value of B<getenv>()  may be statically "
3054 "allocated, and can be modified by a subsequent call to B<getenv>(), B<putenv>"
3055 "(3), B<setenv>(3), or B<unsetenv>(3)."
3056 msgstr ""
3057 "B<getenv>()  の実装はリエントラント (再入可能) であることを要求されていな"
3058 "い。 B<getenv>()  の返り値により参照される文字列は静的に割り当てられてもよ"
3059 "く、 文字列の内容は後続の B<getenv>(), B<putenv>(3), B<setenv>(3), "
3060 "B<unsetenv>(3)  の呼び出しにより変更されることがある。"
3061
3062 #. type: Plain text
3063 #: build/C/man3/getenv.3:129
3064 msgid ""
3065 "The \"secure execution\" mode of B<secure_getenv>()  is controlled by the "
3066 "B<AT_SECURE> flag contained in the auxiliary vector passed from the kernel "
3067 "to user space."
3068 msgstr ""
3069 "B<secure_getenv>() の \"secure execution\" モードは、 カーネルからユーザ空間"
3070 "に渡される補助ベクトル (auxiliary vector) の B<AT_SECURE> フラグにより制御さ"
3071 "れる。"
3072
3073 #. type: Plain text
3074 #: build/C/man3/getenv.3:137
3075 msgid ""
3076 "B<clearenv>(3), B<getauxval>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), "
3077 "B<capabilities>(7), B<environ>(7)"
3078 msgstr ""
3079 "B<clearenv>(3), B<getauxval>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), "
3080 "B<capabilities>(7), B<environ>(7)"
3081
3082 #. type: TH
3083 #: build/C/man3/getloadavg.3:34
3084 #, no-wrap
3085 msgid "GETLOADAVG"
3086 msgstr "GETLOADAVG"
3087
3088 #. type: TH
3089 #: build/C/man3/getloadavg.3:34
3090 #, no-wrap
3091 msgid "2007-12-08"
3092 msgstr "2007-12-08"
3093
3094 #. type: Plain text
3095 #: build/C/man3/getloadavg.3:37
3096 msgid "getloadavg - get system load averages"
3097 msgstr "getloadavg - get system load averages"
3098
3099 #. type: Plain text
3100 #: build/C/man3/getloadavg.3:41
3101 #, no-wrap
3102 msgid ""
3103 "B<#define _BSD_SOURCE>         /* See feature_test_macros(7) */\n"
3104 "B<#include E<lt>stdlib.hE<gt>>\n"
3105 msgstr ""
3106 "B<#define _BSD_SOURCE>         /* feature_test_macros(7) 参照 */\n"
3107 "B<#include E<lt>stdlib.hE<gt>>\n"
3108
3109 #. type: Plain text
3110 #: build/C/man3/getloadavg.3:43
3111 #, no-wrap
3112 msgid "B<int getloadavg(double >I<loadavg[]>B<, int >I<nelem>B<);>\n"
3113 msgstr "B<int getloadavg(double >I<loadavg[]>B<, int >I<nelem>B<);>\n"
3114
3115 #. type: Plain text
3116 #: build/C/man3/getloadavg.3:55
3117 msgid ""
3118 "The B<getloadavg>()  function returns the number of processes in the system "
3119 "run queue averaged over various periods of time.  Up to I<nelem> samples are "
3120 "retrieved and assigned to successive elements of I<loadavg>[].  The system "
3121 "imposes a maximum of 3 samples, representing averages over the last 1, 5, "
3122 "and 15 minutes, respectively."
3123 msgstr ""
3124 "B<getloadavg>()  関数はシステムの実行キューに入っているプロセスの数を、 様々"
3125 "な期間について平均した値を返す。 I<nelem> 個までのサンプル値を取得し、 "
3126 "I<loadavg>[] の連続する要素に代入する。 システムが提供するサンプル数は 3 個ま"
3127 "でで、 それぞれ最近 1, 5, 15 分の平均を表している。"
3128
3129 #.  .SH HISTORY
3130 #.  The
3131 #.  BR getloadavg ()
3132 #.  function appeared in
3133 #.  4.3BSD Reno .
3134 #. type: Plain text
3135 #: build/C/man3/getloadavg.3:63
3136 msgid ""
3137 "If the load average was unobtainable, -1 is returned; otherwise, the number "
3138 "of samples actually retrieved is returned."
3139 msgstr ""
3140 "負荷平均が取得できないと -1 を返す。 取得できた場合は、実際に取得したサンプル"
3141 "値の数を返す。"
3142
3143 #. type: Plain text
3144 #: build/C/man3/getloadavg.3:65
3145 msgid "This function is available in glibc since version 2.2."
3146 msgstr "この関数は glibc のバージョン 2.2 以降で利用可能である。"
3147
3148 #.  mdoc seems to have a bug - there must be no newline here
3149 #. type: Plain text
3150 #: build/C/man3/getloadavg.3:69
3151 msgid "Not in POSIX.1-2001.  Present on the BSDs and Solaris."
3152 msgstr "POSIX.1-2001 にはない。 BSD 系と Solaris に存在する。"
3153
3154 #. type: Plain text
3155 #: build/C/man3/getloadavg.3:72
3156 msgid "B<uptime>(1), B<proc>(5)"
3157 msgstr "B<uptime>(1), B<proc>(5)"
3158
3159 #. type: TH
3160 #: build/C/man3/getsubopt.3:25
3161 #, no-wrap
3162 msgid "GETSUBOPT"
3163 msgstr "GETSUBOPT"
3164
3165 #. type: TH
3166 #: build/C/man3/getsubopt.3:25 build/C/man3/mkdtemp.3:26
3167 #, no-wrap
3168 msgid "2010-09-26"
3169 msgstr "2010-09-26"
3170
3171 #. type: Plain text
3172 #: build/C/man3/getsubopt.3:28
3173 msgid "getsubopt - parse suboption arguments from a string"
3174 msgstr "getsubopt - 文字列中のサブオプション引き数の解釈を行う"
3175
3176 #. type: Plain text
3177 #: build/C/man3/getsubopt.3:33
3178 msgid ""
3179 "B<int getsubopt(char **>I<optionp>B<, char * const *>I<tokens>B<, char "
3180 "**>I<valuep>B<);>"
3181 msgstr ""
3182 "B<int getsubopt(char **>I<optionp>B<, char * const *>I<tokens>B<, char "
3183 "**>I<valuep>B<);>"
3184
3185 #. type: Plain text
3186 #: build/C/man3/getsubopt.3:40
3187 msgid "B<getsubopt>():"
3188 msgstr "B<getsubopt>():"
3189
3190 #. type: Plain text
3191 #: build/C/man3/getsubopt.3:45
3192 msgid ""
3193 "_XOPEN_SOURCE\\ E<gt>= 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
3194 msgstr ""
3195 "_XOPEN_SOURCE\\ E<gt>= 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
3196
3197 #. type: Plain text
3198 #: build/C/man3/getsubopt.3:47
3199 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
3200 msgstr "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
3201
3202 #. type: Plain text
3203 #: build/C/man3/getsubopt.3:64
3204 msgid ""
3205 "B<getsubopt>()  parses the list of comma-separated suboptions provided in "
3206 "I<optionp>.  (Such a suboption list is typically produced when B<getopt>(3)  "
3207 "is used to parse a command line; see for example the I<-o> option of B<mount>"
3208 "(8).)  Each suboption may include an associated value, which is separated "
3209 "from the suboption name by an equal sign.  The following is an example of "
3210 "the kind of string that might be passed in I<optionp>:"
3211 msgstr ""
3212 "B<getsubopt>()  は、 I<optionp> で与えられたカンマ区切りのサブオプション・リ"
3213 "ストを解析する。 (このようなサブオプション・リストは B<getopt>(3)  を使ってコ"
3214 "マンドラインを解釈した場合に現れることが多い。 例えば、 B<mount>(8)  の I<-"
3215 "o> オプションを見るとよい。)  それぞれのサブオプションには対応する値を指定す"
3216 "ることができる。 サブオプションの名前と対応する値は等号 (\\(aq=\\(aq) で区切"
3217 "られる。 例えば、以下のような文字列を I<optionp> に渡すことができる。"
3218
3219 #. type: Plain text
3220 #: build/C/man3/getsubopt.3:67
3221 msgid "B<ro,name=xyz>"
3222 msgstr "B<ro,name=xyz>"
3223
3224 #. type: Plain text
3225 #: build/C/man3/getsubopt.3:77
3226 msgid ""
3227 "The I<tokens> argument is a pointer to a NULL-terminated array of pointers "
3228 "to the tokens that B<getsubopt>()  will look for in I<optionp>.  The tokens "
3229 "should be distinct, null-terminated strings containing at least one "
3230 "character, with no embedded equal signs or commas."
3231 msgstr ""
3232 "I<tokens> 引き数はトークンへのポインタの配列へのポインタで、 配列は NULL で終"
3233 "端される。 B<getsubopt>()  はこのトークンを I<optionp> 内で探す。 それぞれの"
3234 "トークンは、NULL 終端された 1文字以上の文字列で、 他のトークンと区別できる必"
3235 "要がある。 また、等号とカンマを含んではならない。"
3236
3237 #. type: Plain text
3238 #: build/C/man3/getsubopt.3:98
3239 msgid ""
3240 "Each call to B<getsubopt>()  returns information about the next unprocessed "
3241 "suboption in I<optionp>.  The first equal sign in a suboption (if any) is "
3242 "interpreted as a separator between the name and the value of that "
3243 "suboption.  The value extends to the next comma, or (for the last suboption) "
3244 "to the end of the string.  If the name of the suboption matches a known name "
3245 "from I<tokens>, and a value string was found, B<getsubopt>()  sets "
3246 "I<*valuep> to the address of that string.  The first comma in I<optionp> is "
3247 "overwritten with a null byte, so I<*valuep> is precisely the \"value string"
3248 "\" for that suboption."
3249 msgstr ""
3250 "B<getsubopt>()  は呼び出されるたびに、 I<optionp> 中の次の未処理のサブオプ"
3251 "ションの情報を返す。 サブオプション内に等号があった場合、最初の等号は そのサ"
3252 "ブオプションの名前と値の区切りと解釈される。 区切りから次のカンマ (最後のサブ"
3253 "オプションの場合、文字列の末尾)  までが、サブオプションの値となる。 サブオプ"
3254 "ションの名前が I<tokens> 内の名前と一致し、値を表す文字列が見つかった場合、 "
3255 "B<getsubopt>()  は I<*valuep> を値を表す文字列のアドレスに設定する。 "
3256 "I<optionp> 中の最初のカンマはヌルバイトで上書きされる。そのため、 I<*valuep> "
3257 "はそのサブオプションの「値の文字列」そのものとなる。"
3258
3259 #. type: Plain text
3260 #: build/C/man3/getsubopt.3:102
3261 msgid ""
3262 "If the suboption is recognized, but no value string was found, I<*valuep> is "
3263 "set to NULL."
3264 msgstr ""
3265 "サブオプションが認識されたが、値を表す文字列が見つからなかった場合、 "
3266 "*I<valuep> は NULL に設定される。"
3267
3268 #. type: Plain text
3269 #: build/C/man3/getsubopt.3:110
3270 msgid ""
3271 "When B<getsubopt>()  returns, I<optionp> points to the next suboption, or to "
3272 "the null byte (\\(aq\\e0\\(aq) at the end of the string if the last "
3273 "suboption was just processed."
3274 msgstr ""
3275 "B<getsubopt>()  が返る時、 I<optionp> は次のサブオプションを指している。 ちょ"
3276 "うど最後のサブオプションが処理された場合は、 文字列末尾のヌルバイト (\\(aq"
3277 "\\e0\\(aq) を指している。"
3278
3279 #. type: Plain text
3280 #: build/C/man3/getsubopt.3:122
3281 msgid ""
3282 "If the first suboption in I<optionp> is recognized, B<getsubopt>()  returns "
3283 "the index of the matching suboption element in I<tokens>.  Otherwise, -1 is "
3284 "returned and I<*valuep> is the entire I<name>B<[=>I<value>B<]> string."
3285 msgstr ""
3286 "I<optionp> 内でサブオプションが見つかった場合、 B<getsubopt>()  は最初のサブ"
3287 "オプションにマッチする I<tokens> の要素の添字を返す。 見つからなかった場"
3288 "合、-1 を返す。この場合、 I<*valuep> は I<name>B<[=>I<value>B<]> の文字列全体"
3289 "となる。"
3290
3291 #. type: Plain text
3292 #: build/C/man3/getsubopt.3:129
3293 msgid ""
3294 "Since I<*optionp> is changed, the first suboption before the call to "
3295 "B<getsubopt>()  is not (necessarily) the same as the first suboption after "
3296 "B<getsubopt>()."
3297 msgstr ""
3298 "I<*optionp> は変更されるので、 B<getsubopt>()  を呼び出す前の最初のサブオプ"
3299 "ションは B<getsubopt>()  を呼び出し後のサブオプションと必ずしも同じとは限らな"
3300 "い。"
3301
3302 #. type: Plain text
3303 #: build/C/man3/getsubopt.3:138
3304 msgid ""
3305 "Since B<getsubopt>()  overwrites any commas it finds in the string "
3306 "I<*optionp>, that string must be writable; it cannot be a string constant."
3307 msgstr ""
3308 "B<getsubopt>()  は、文字列 *I<optionp> 中に見つけたカンマを上書きするので、文"
3309 "字列 I<*optionp> は書き込み可能でなければならず、 文字列定数にすることはでき"
3310 "ない。"
3311
3312 #. type: Plain text
3313 #: build/C/man3/getsubopt.3:140
3314 msgid "The following program expects suboptions following a \"-o\" option."
3315 msgstr ""
3316 "以下のプログラムは \"-o\" オプションに続いてサブオプションがあることを 期待し"
3317 "ている。"
3318
3319 #. type: Plain text
3320 #: build/C/man3/getsubopt.3:146
3321 #, no-wrap
3322 msgid ""
3323 "#define _XOPEN_SOURCE 500\n"
3324 "#include E<lt>stdlib.hE<gt>\n"
3325 "#include E<lt>assert.hE<gt>\n"
3326 "#include E<lt>stdio.hE<gt>\n"
3327 msgstr ""
3328 "#define _XOPEN_SOURCE 500\n"
3329 "#include E<lt>stdlib.hE<gt>\n"
3330 "#include E<lt>assert.hE<gt>\n"
3331 "#include E<lt>stdio.hE<gt>\n"
3332
3333 #. type: Plain text
3334 #: build/C/man3/getsubopt.3:164
3335 #, fuzzy, no-wrap
3336 #| msgid ""
3337 #| "int main(int argc, char **argv)\n"
3338 #| "{\n"
3339 #| "    enum {\n"
3340 #| "        RO_OPT = 0,\n"
3341 #| "        RW_OPT,\n"
3342 #| "        NAME_OPT\n"
3343 #| "    };\n"
3344 #| "    char *const token[] = {\n"
3345 #| "        [RO_OPT]   = \"ro\",\n"
3346 #| "        [RW_OPT]   = \"rw\",\n"
3347 #| "        [NAME_OPT] = \"name\",\n"
3348 #| "        NULL\n"
3349 #| "    };\n"
3350 #| "    char *subopts;\n"
3351 #| "    char *value;\n"
3352 #| "    int opt;\n"
3353 msgid ""
3354 "int\n"
3355 "main(int argc, char **argv)\n"
3356 "{\n"
3357 "    enum {\n"
3358 "        RO_OPT = 0,\n"
3359 "        RW_OPT,\n"
3360 "        NAME_OPT\n"
3361 "    };\n"
3362 "    char *const token[] = {\n"
3363 "        [RO_OPT]   = \"ro\",\n"
3364 "        [RW_OPT]   = \"rw\",\n"
3365 "        [NAME_OPT] = \"name\",\n"
3366 "        NULL\n"
3367 "    };\n"
3368 "    char *subopts;\n"
3369 "    char *value;\n"
3370 "    int opt;\n"
3371 msgstr ""
3372 "int main(int argc, char **argv)\n"
3373 "{\n"
3374 "    enum {\n"
3375 "        RO_OPT = 0,\n"
3376 "        RW_OPT,\n"
3377 "        NAME_OPT\n"
3378 "    };\n"
3379 "    char *const token[] = {\n"
3380 "        [RO_OPT]   = \"ro\",\n"
3381 "        [RW_OPT]   = \"rw\",\n"
3382 "        [NAME_OPT] = \"name\",\n"
3383 "        NULL\n"
3384 "    };\n"
3385 "    char *subopts;\n"
3386 "    char *value;\n"
3387 "    int opt;\n"
3388
3389 #. type: Plain text
3390 #: build/C/man3/getsubopt.3:169
3391 #, no-wrap
3392 msgid ""
3393 "    int readonly = 0;\n"
3394 "    int readwrite = 0;\n"
3395 "    char *name = NULL;\n"
3396 "    int errfnd = 0;\n"
3397 msgstr ""
3398 "    int readonly = 0;\n"
3399 "    int readwrite = 0;\n"
3400 "    char *name = NULL;\n"
3401 "    int errfnd = 0;\n"
3402
3403 #. type: Plain text
3404 #: build/C/man3/getsubopt.3:175
3405 #, no-wrap
3406 msgid ""
3407 "    while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
3408 "        switch (opt) {\n"
3409 "        case \\(aqo\\(aq:\n"
3410 "            subopts = optarg;\n"
3411 "            while (*subopts != \\(aq\\e0\\(aq && !errfnd) {\n"
3412 msgstr ""
3413 "    while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
3414 "        switch (opt) {\n"
3415 "        case \\(aqo\\(aq:\n"
3416 "            subopts = optarg;\n"
3417 "            while (*subopts != \\(aq\\e0\\(aq && !errfnd) {\n"
3418
3419 #. type: Plain text
3420 #: build/C/man3/getsubopt.3:180
3421 #, no-wrap
3422 msgid ""
3423 "            switch (getsubopt(&subopts, token, &value)) {\n"
3424 "            case RO_OPT:\n"
3425 "                readonly = 1;\n"
3426 "                break;\n"
3427 msgstr ""
3428 "            switch (getsubopt(&subopts, token, &value)) {\n"
3429 "            case RO_OPT:\n"
3430 "                readonly = 1;\n"
3431 "                break;\n"
3432
3433 #. type: Plain text
3434 #: build/C/man3/getsubopt.3:184
3435 #, no-wrap
3436 msgid ""
3437 "            case RW_OPT:\n"
3438 "                readwrite = 1;\n"
3439 "                break;\n"
3440 msgstr ""
3441 "            case RW_OPT:\n"
3442 "                readwrite = 1;\n"
3443 "                break;\n"
3444
3445 #. type: Plain text
3446 #: build/C/man3/getsubopt.3:192
3447 #, no-wrap
3448 msgid ""
3449 "            case NAME_OPT:\n"
3450 "                if (value == NULL) {\n"
3451 "                    fprintf(stderr, \"Missing value for \"\n"
3452 "                            \"suboption \\(aq%s\\(aq\\en\", token[NAME_OPT]);\n"
3453 "                    errfnd = 1;\n"
3454 "                    continue;\n"
3455 "                }\n"
3456 msgstr ""
3457 "            case NAME_OPT:\n"
3458 "                if (value == NULL) {\n"
3459 "                    fprintf(stderr, \"Missing value for \"\n"
3460 "                            \"suboption \\(aq%s\\(aq\\en\", token[NAME_OPT]);\n"
3461 "                    errfnd = 1;\n"
3462 "                    continue;\n"
3463 "                }\n"
3464
3465 #. type: Plain text
3466 #: build/C/man3/getsubopt.3:195
3467 #, no-wrap
3468 msgid ""
3469 "                name = value;\n"
3470 "                break;\n"
3471 msgstr ""
3472 "                name = value;\n"
3473 "                break;\n"
3474
3475 #. type: Plain text
3476 #: build/C/man3/getsubopt.3:209
3477 #, no-wrap
3478 msgid ""
3479 "            default:\n"
3480 "                fprintf(stderr, \"No match found \"\n"
3481 "                        \"for token: /%s/\\en\", value);\n"
3482 "                errfnd = 1;\n"
3483 "                break;\n"
3484 "            }\n"
3485 "        }\n"
3486 "        if (readwrite && readonly) {\n"
3487 "            fprintf(stderr, \"Only one of \\(aq%s\\(aq and \\(aq%s\\(aq can be \"\n"
3488 "                    \"specified\\en\", token[RO_OPT], token[RW_OPT]);\n"
3489 "            errfnd = 1;\n"
3490 "        }\n"
3491 "        break;\n"
3492 msgstr ""
3493 "            default:\n"
3494 "                fprintf(stderr, \"No match found \"\n"
3495 "                        \"for token: /%s/\\en\", value);\n"
3496 "                errfnd = 1;\n"
3497 "                break;\n"
3498 "            }\n"
3499 "        }\n"
3500 "        if (readwrite && readonly) {\n"
3501 "            fprintf(stderr, \"Only one of \\(aq%s\\(aq and \\(aq%s\\(aq can be \"\n"
3502 "                    \"specified\\en\", token[RO_OPT], token[RW_OPT]);\n"
3503 "            errfnd = 1;\n"
3504 "        }\n"
3505 "        break;\n"
3506
3507 #. type: Plain text
3508 #: build/C/man3/getsubopt.3:214
3509 #, no-wrap
3510 msgid ""
3511 "        default:\n"
3512 "            errfnd = 1;\n"
3513 "        }\n"
3514 "    }\n"
3515 msgstr ""
3516 "        default:\n"
3517 "            errfnd = 1;\n"
3518 "        }\n"
3519 "    }\n"
3520
3521 #. type: Plain text
3522 #: build/C/man3/getsubopt.3:221
3523 #, no-wrap
3524 msgid ""
3525 "    if (errfnd || argc == 1) {\n"
3526 "        fprintf(stderr, \"\\enUsage: %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
3527 "        fprintf(stderr, \"suboptions are \\(aqro\\(aq, \\(aqrw\\(aq, \"\n"
3528 "                \"and \\(aqname=E<lt>valueE<gt>\\(aq\\en\");\n"
3529 "        exit(EXIT_FAILURE);\n"
3530 "    }\n"
3531 msgstr ""
3532 "    if (errfnd || argc == 1) {\n"
3533 "        fprintf(stderr, \"\\enUsage: %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
3534 "        fprintf(stderr, \"suboptions are \\(aqro\\(aq, \\(aqrw\\(aq, \"\n"
3535 "                \"and \\(aqname=E<lt>valueE<gt>\\(aq\\en\");\n"
3536 "        exit(EXIT_FAILURE);\n"
3537 "    }\n"
3538
3539 #. type: Plain text
3540 #: build/C/man3/getsubopt.3:223
3541 #, no-wrap
3542 msgid "    /* Remainder of program... */\n"
3543 msgstr "    /* Remainder of program... */\n"
3544
3545 #. type: Plain text
3546 #: build/C/man3/getsubopt.3:229
3547 msgid "B<getopt>(3)"
3548 msgstr "B<getopt>(3)"
3549
3550 #. type: TH
3551 #: build/C/man3/malloc.3:30
3552 #, no-wrap
3553 msgid "MALLOC"
3554 msgstr "MALLOC"
3555
3556 #. type: TH
3557 #: build/C/man3/malloc.3:30
3558 #, fuzzy, no-wrap
3559 #| msgid "2012-12-21"
3560 msgid "2013-12-12"
3561 msgstr "2012-12-21"
3562
3563 #. type: Plain text
3564 #: build/C/man3/malloc.3:33
3565 msgid "malloc, free, calloc, realloc - allocate and free dynamic memory"
3566 msgstr "malloc, free, calloc, realloc - 動的なメモリの割り当てと解放を行う"
3567
3568 #. type: Plain text
3569 #: build/C/man3/malloc.3:41
3570 #, no-wrap
3571 msgid ""
3572 "B<void *malloc(size_t >I<size>B<);>\n"
3573 "B<void free(void >I<*ptr>B<);>\n"
3574 "B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
3575 "B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
3576 msgstr ""
3577 "B<void *malloc(size_t >I<size>B<);>\n"
3578 "B<void free(void >I<*ptr>B<);>\n"
3579 "B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
3580 "B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
3581
3582 #.  glibc does this:
3583 #. type: Plain text
3584 #: build/C/man3/malloc.3:58
3585 msgid ""
3586 "The B<malloc>()  function allocates I<size> bytes and returns a pointer to "
3587 "the allocated memory.  I<The memory is not initialized>.  If I<size> is 0, "
3588 "then B<malloc>()  returns either NULL, or a unique pointer value that can "
3589 "later be successfully passed to B<free>()."
3590 msgstr ""
3591 "B<malloc>() 関数は I<size> バイトを割り当て、 割り当てられたメモリに対する\n"
3592 "ポインタを返す。I<メモリの内容は初期化されない>。 I<size> が 0 の場合、\n"
3593 "B<malloc>() は NULL または B<free>() に後で渡しても問題の起こらない\n"
3594 "一意なポインタ値を返す。"
3595
3596 #. type: Plain text
3597 #: build/C/man3/malloc.3:74
3598 msgid ""
3599 "The B<free>()  function frees the memory space pointed to by I<ptr>, which "
3600 "must have been returned by a previous call to B<malloc>(), B<calloc>()  or "
3601 "B<realloc>().  Otherwise, or if I<free(ptr)> has already been called before, "
3602 "undefined behavior occurs.  If I<ptr> is NULL, no operation is performed."
3603 msgstr ""
3604 "B<free>() 関数はポインタ I<ptr> が指すメモリ空間を解放する。このポインタ"
3605 "は、\n"
3606 "以前に呼び出された B<malloc>(), B<calloc>(), B<realloc>() のいずれかが返した"
3607 "値で\n"
3608 "なければならない。これ以外のポインタを指定したり、すでに I<free(ptr)> が実"
3609 "行\n"
3610 "されていたりした場合の動作は定義されていない。\n"
3611 "I<ptr> が NULL の場合には、何の動作も行われない。"
3612
3613 #.  glibc does this:
3614 #. type: Plain text
3615 #: build/C/man3/malloc.3:93
3616 msgid ""
3617 "The B<calloc>()  function allocates memory for an array of I<nmemb> elements "
3618 "of I<size> bytes each and returns a pointer to the allocated memory.  The "
3619 "memory is set to zero.  If I<nmemb> or I<size> is 0, then B<calloc>()  "
3620 "returns either NULL, or a unique pointer value that can later be "
3621 "successfully passed to B<free>()."
3622 msgstr ""
3623 "B<calloc>() 関数は I<size> バイトの要素 I<nmemb> 個からなる配列にメモリを\n"
3624 "割り当て、割り当てられたメモリに対するポインタを返す。 メモリの内容は数値ゼ"
3625 "ロ\n"
3626 "(全ビットが 0 のバイト) にセットされる。 I<nmemb> か I<size> が 0 の場合、\n"
3627 "B<calloc>() は NULL または B<free>() に後で渡しても問題の起こらない一意な\n"
3628 "ポインタ値を返す。"
3629
3630 #. type: Plain text
3631 #: build/C/man3/malloc.3:129
3632 msgid ""
3633 "The B<realloc>()  function changes the size of the memory block pointed to "
3634 "by I<ptr> to I<size> bytes.  The contents will be unchanged in the range "
3635 "from the start of the region up to the minimum of the old and new sizes.  If "
3636 "the new size is larger than the old size, the added memory will I<not> be "
3637 "initialized.  If I<ptr> is NULL, then the call is equivalent to I<malloc"
3638 "(size)>, for all values of I<size>; if I<size> is equal to zero, and I<ptr> "
3639 "is not NULL, then the call is equivalent to I<free(ptr)>.  Unless I<ptr> is "
3640 "NULL, it must have been returned by an earlier call to B<malloc>(), B<calloc>"
3641 "()  or B<realloc>().  If the area pointed to was moved, a I<free(ptr)> is "
3642 "done."
3643 msgstr ""
3644 "B<realloc>() は、ポインタ I<ptr> が示すメモリブロックのサイズを I<size> バイ"
3645 "ト\n"
3646 "に変更する。領域の先頭から、新旧のサイズの小さい方の位置までの範囲の内容は\n"
3647 "変更されない。新しいサイズが前のサイズよりも大きい場合、追加されたメモリは\n"
3648 "初期化 I<されない>。\n"
3649 "I<ptr> が NULL の場合には I<malloc(size)> と等価である。\n"
3650 "I<size> が 0 で I<ptr> が NULL でない場合には、 I<free(ptr)> と等価である。\n"
3651 "I<ptr> が NULL 以外の場合、 I<ptr> は以前に呼び出された B<malloc>(), "
3652 "B<calloc>(),\n"
3653 "B<realloc>() のいずれかが返した値でなければならない。\n"
3654 "I<ptr> が指す領域が移動されていた場合は I<free(ptr)> が実行される。"
3655
3656 #. type: Plain text
3657 #: build/C/man3/malloc.3:149
3658 #, fuzzy
3659 #| msgid ""
3660 #| "The B<malloc>()  and B<calloc>()  functions return a pointer to the "
3661 #| "allocated memory that is suitably aligned for any kind of variable.  On "
3662 #| "error, these functions return NULL.  NULL may also be returned by a "
3663 #| "successful call to B<malloc>()  with a I<size> of zero, or by a "
3664 #| "successful call to B<calloc>()  with I<nmemb> or I<size> equal to zero."
3665 msgid ""
3666 "The B<malloc>()  and B<calloc>()  functions return a pointer to the "
3667 "allocated memory, which is suitably aligned for any built-in type.  On "
3668 "error, these functions return NULL.  NULL may also be returned by a "
3669 "successful call to B<malloc>()  with a I<size> of zero, or by a successful "
3670 "call to B<calloc>()  with I<nmemb> or I<size> equal to zero."
3671 msgstr ""
3672 "関数 B<calloc>() と B<malloc>() は、割り当てられたメモリへのポインタを返"
3673 "す。\n"
3674 "割り当てられたメモリは、あらゆる種類の変数に対応できるようにアラインメントさ"
3675 "れる。\n"
3676 "エラーの場合、これらの関数は NULL を返す。\n"
3677 "I<size> が 0 で呼び出した B<malloc>() や、I<nmemb> か I<size> が 0 で呼び出し"
3678 "た\n"
3679 "B<calloc>() が成功した場合にも NULL が返される。"
3680
3681 #. type: Plain text
3682 #: build/C/man3/malloc.3:153
3683 msgid "The B<free>()  function returns no value."
3684 msgstr "B<free>() 関数は値を返さない。"
3685
3686 #. type: Plain text
3687 #: build/C/man3/malloc.3:168
3688 #, fuzzy
3689 #| msgid ""
3690 #| "The B<realloc>()  function returns a pointer to the newly allocated "
3691 #| "memory, which is suitably aligned for any kind of variable and may be "
3692 #| "different from I<ptr>, or NULL if the request fails.  If I<size> was "
3693 #| "equal to 0, either NULL or a pointer suitable to be passed to B<free>()  "
3694 #| "is returned.  If B<realloc>()  fails the original block is left "
3695 #| "untouched; it is not freed or moved."
3696 msgid ""
3697 "The B<realloc>()  function returns a pointer to the newly allocated memory, "
3698 "which is suitably aligned for any built-in type and may be different from "
3699 "I<ptr>, or NULL if the request fails.  If I<size> was equal to 0, either "
3700 "NULL or a pointer suitable to be passed to B<free>()  is returned.  If "
3701 "B<realloc>()  fails the original block is left untouched; it is not freed or "
3702 "moved."
3703 msgstr ""
3704 "B<realloc>() 関数は新たに割り当てられたメモリへのポインタを返す。\n"
3705 "これはあらゆる種類の変数に対応できるようにアラインメントされており、\n"
3706 "I<ptr> とは異なることもある。割り当て要求に失敗した場合は NULL が返る。\n"
3707 "I<size> が 0 の場合には、NULL もしくは B<free>() に渡すことができるポインタが"
3708 "返る。\n"
3709 "B<realloc>() が失敗した場合には、元のブロックは変更されない。\n"
3710 "つまり、解放されたり移動されたりはしない。"
3711
3712 #. type: Plain text
3713 #: build/C/man3/malloc.3:170
3714 msgid "C89, C99."
3715 msgstr "C89, C99."
3716
3717 #. type: Plain text
3718 #: build/C/man3/malloc.3:186
3719 msgid ""
3720 "By default, Linux follows an optimistic memory allocation strategy.  This "
3721 "means that when B<malloc>()  returns non-NULL there is no guarantee that the "
3722 "memory really is available.  In case it turns out that the system is out of "
3723 "memory, one or more processes will be killed by the OOM killer.  For more "
3724 "information, see the description of I</proc/sys/vm/overcommit_memory> and I</"
3725 "proc/sys/vm/oom_adj> in B<proc>(5), and the Linux kernel source file "
3726 "I<Documentation/vm/overcommit-accounting>."
3727 msgstr ""
3728 "デフォルトでは、Linux は楽観的メモリ配置戦略を用いている。つまり、\n"
3729 "B<malloc>() が NULL でない値を返しても、そのメモリが実際に利用可能であるこ"
3730 "と\n"
3731 "が保証されない。システムがメモリ不足状態になったとき、メモリ不足解決器 (OOM\n"
3732 "killer) によって一つまたは複数のプロセスが削除される。\n"
3733 "詳しい情報は、B<proc>(5) の I</proc/sys/vm/overcommit_memory> と\n"
3734 "I<proc/sys/vm/oom_adj>、および Linux カーネルのソースファイルの\n"
3735 "I<Documentation/vm/overcommit-accounting> を参照のこと。"
3736
3737 #. type: Plain text
3738 #: build/C/man3/malloc.3:207
3739 msgid ""
3740 "Normally, B<malloc>()  allocates memory from the heap, and adjusts the size "
3741 "of the heap as required, using B<sbrk>(2).  When allocating blocks of memory "
3742 "larger than B<MMAP_THRESHOLD> bytes, the glibc B<malloc>()  implementation "
3743 "allocates the memory as a private anonymous mapping using B<mmap>(2).  "
3744 "B<MMAP_THRESHOLD> is 128 kB by default, but is adjustable using B<mallopt>"
3745 "(3).  Allocations performed using B<mmap>(2)  are unaffected by the "
3746 "B<RLIMIT_DATA> resource limit (see B<getrlimit>(2))."
3747 msgstr ""
3748 "通常、 B<malloc>()  は、ヒープからメモリを割り当て、必要に応じてヒープのサイ"
3749 "ズを B<sbrk>(2)  を使って調節する。 B<MMAP_THRESHOLD> バイトよりも大きなメモ"
3750 "リブロックを割り当てる場合、 glibc の B<malloc>()  実装は B<mmap>(2)  を使っ"
3751 "てプライベートな無名マッピング (anonymous mapping) として メモリを割り当て"
3752 "る。 デフォルトでは B<MMAP_THRESHOLD> は 128 kB だが、 B<mallopt>(3)  を使っ"
3753 "て調整できる。 B<mmap>(2)  を使って行われたメモリ割り当ては B<RLIMIT_DATA> リ"
3754 "ソース上限の影響を受けない (B<getrlimit>(2)  参照)。"
3755
3756 #. type: Plain text
3757 #: build/C/man3/malloc.3:225
3758 msgid ""
3759 "To avoid corruption in multithreaded applications, mutexes are used "
3760 "internally to protect the memory-management data structures employed by "
3761 "these functions.  In a multithreaded application in which threads "
3762 "simultaneously allocate and free memory, there could be contention for these "
3763 "mutexes.  To scalably handle memory allocation in multithreaded "
3764 "applications, glibc creates additional I<memory allocation arenas> if mutex "
3765 "contention is detected.  Each arena is a large region of memory that is "
3766 "internally allocated by the system (using B<brk>(2)  or B<mmap>(2)), and "
3767 "managed with its own mutexes."
3768 msgstr ""
3769 "マルチスレッドアプリケーションでのデータ破損を回避するため、内部では mutex"
3770 "を\n"
3771 "使用して、これらの関数で利用されるメモリ管理用のデータ構造を保護している。\n"
3772 "複数のスレッドが同時にメモリの確保や解放を行うようなマルチスレッドアプリ"
3773 "ケー\n"
3774 "ションでは、これらの mutex の衝突が起こり得る。マルチスレッドアプリケーショ"
3775 "ン\n"
3776 "でのメモリ割り当て処理にスケーラビリティを持たせるために、glibc では mutex "
3777 "の\n"
3778 "衝突が検出された際には追加の I<メモリ割り当て領域> を作成する。\n"
3779 "追加領域の各々は、(B<brk>(2) や B<mmap>(2) を使って) システムにより内部的に\n"
3780 "割り当てられた大きな領域で、それぞれ独自の mutex により管理されている。"
3781
3782 #. type: Plain text
3783 #: build/C/man3/malloc.3:243
3784 msgid ""
3785 "The UNIX 98 standard requires B<malloc>(), B<calloc>(), and B<realloc>()  to "
3786 "set I<errno> to B<ENOMEM> upon failure.  Glibc assumes that this is done "
3787 "(and the glibc versions of these routines do this); if you use a private "
3788 "malloc implementation that does not set I<errno>, then certain library "
3789 "routines may fail without having a reason in I<errno>."
3790 msgstr ""
3791 "UNIX 98 標準では、 B<malloc>(), B<calloc>(), B<realloc>() は実行に失敗したと"
3792 "きに I<errno> を B<ENOMEM> に設定することになっている。 Glibc ではこれが守ら"
3793 "れていることを仮定している (またこれらのルーチンの glibc バージョンはこのこと"
3794 "を守っている)。 個人的に別の malloc の実装を使っていて、その malloc が"
3795 "I<errno> を設定しない場合には、失敗した際に I<errno> にエラーの理由を設定しな"
3796 "いライブラリルーチンがあるかもしれない。"
3797
3798 #. type: Plain text
3799 #: build/C/man3/malloc.3:252
3800 msgid ""
3801 "Crashes in B<malloc>(), B<calloc>(), B<realloc>(), or B<free>()  are almost "
3802 "always related to heap corruption, such as overflowing an allocated chunk or "
3803 "freeing the same pointer twice."
3804 msgstr ""
3805 "B<malloc>(), B<calloc>(), B<realloc>(), B<free>()  における事故は、 ほとんど"
3806 "の場合はヒープの破壊 (corruption) が原因である。 例えば、割り当てられた領域を"
3807 "オーバーフローする、 同じポインタに二度 free する、などがこれにあたる。"
3808
3809 #. type: Plain text
3810 #: build/C/man3/malloc.3:259
3811 msgid ""
3812 "Recent versions of Linux libc (later than 5.4.23) and glibc (2.x)  include a "
3813 "B<malloc>()  implementation which is tunable via environment variables.  For "
3814 "details, see B<mallopt>(3)."
3815 msgstr ""
3816 "Linux libc の新しいバージョン (5.4.23 より後) と glibc (2.x) には、\n"
3817 "環境変数で動作を調整できる B<malloc>() 実装が含まれている。\n"
3818 "詳細は B<mallopt>(3) を参照のこと。"
3819
3820 #. type: Plain text
3821 #: build/C/man3/malloc.3:283
3822 msgid ""
3823 "B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), B<malloc_info>"
3824 "(3), B<malloc_trim>(3), B<malloc_usable_size>(3), B<mallopt>(3), B<mcheck>"
3825 "(3), B<mtrace>(3), B<posix_memalign>(3)"
3826 msgstr ""
3827 "B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), B<malloc_info>"
3828 "(3), B<malloc_trim>(3), B<malloc_usable_size>(3), B<mallopt>(3), B<mcheck>"
3829 "(3), B<mtrace>(3), B<posix_memalign>(3)"
3830
3831 #. type: TH
3832 #: build/C/man3/mblen.3:16
3833 #, no-wrap
3834 msgid "MBLEN"
3835 msgstr "MBLEN"
3836
3837 #. type: Plain text
3838 #: build/C/man3/mblen.3:19
3839 msgid "mblen - determine number of bytes in next multibyte character"
3840 msgstr "mblen - 次のマルチバイト文字のバイト数を返す"
3841
3842 #. type: Plain text
3843 #: build/C/man3/mblen.3:24
3844 #, no-wrap
3845 msgid "B<int mblen(const char *>I<s>B<, size_t >I<n>B<);>\n"
3846 msgstr "B<int mblen(const char *>I<s>B<, size_t >I<n>B<);>\n"
3847
3848 #. type: Plain text
3849 #: build/C/man3/mblen.3:43
3850 #, fuzzy
3851 #| msgid ""
3852 #| "If I<s> is not a NULL pointer, the B<mblen>()  function inspects at most "
3853 #| "I<n> bytes of the multibyte string starting at I<s> and extracts the next "
3854 #| "complete multibyte character.  It uses a static anonymous shift state "
3855 #| "known only to the B<mblen>()  function.  If the multibyte character is "
3856 #| "not the null wide character, it returns the number of bytes that were "
3857 #| "consumed from I<s>.  If the multibyte character is the null wide "
3858 #| "character, it returns 0."
3859 msgid ""
3860 "If I<s> is not NULL, the B<mblen>()  function inspects at most I<n> bytes of "
3861 "the multibyte string starting at I<s> and extracts the next complete "
3862 "multibyte character.  It uses a static anonymous shift state known only to "
3863 "the B<mblen>()  function.  If the multibyte character is not the null wide "
3864 "character, it returns the number of bytes that were consumed from I<s>.  If "
3865 "the multibyte character is the null wide character, it returns 0."
3866 msgstr ""
3867 "I<s> が NULL ポインターでなければ、 B<mblen>()  関数は I<s> から始まる最大 "
3868 "I<n> バイトのマルチバイト文字列を検査して、 次の完全なマルチバイト文字を取り"
3869 "出す。これには B<mblen>()  関数のみが使用する静的で名前のないシフト状態が使用"
3870 "される。 マルチバイト文字がナルワイド文字でなければ I<s> から消費される バイ"
3871 "ト数を返す。マルチバイト文字がナルワイド文字ならば 0 を返す。"
3872
3873 #. type: Plain text
3874 #: build/C/man3/mblen.3:57
3875 msgid ""
3876 "If the I<n> bytes starting at I<s> do not contain a complete multibyte "
3877 "character, B<mblen>()  returns -1.  This can happen even if I<n> is greater "
3878 "than or equal to I<MB_CUR_MAX>, if the multibyte string contains redundant "
3879 "shift sequences."
3880 msgstr ""
3881 "I<s> から始まる I<n> バイトが完全なマルチバイト文字を含んで いなければ、 "
3882 "B<mblen>()  は -1 を返す。マルチバイト文字列 に冗長なシフトシーケンスが含まれ"
3883 "ていると、 I<n> が I<MB_CUR_MAX> 以上の場合にも このようなことが起こりえる。"
3884
3885 #. type: Plain text
3886 #: build/C/man3/mblen.3:64
3887 msgid ""
3888 "If the multibyte string starting at I<s> contains an invalid multibyte "
3889 "sequence before the next complete character, B<mblen>()  also returns -1."
3890 msgstr ""
3891 "I<s> から始まるマルチバイト文字列が次の完全な文字の前に 不正なマルチバイト列"
3892 "を含んでいる場合にも、 B<mblen>()  は -1 を返す。"
3893
3894 #.  The Dinkumware doc and the Single UNIX specification say this, but
3895 #.  glibc doesn't implement this.
3896 #. type: Plain text
3897 #: build/C/man3/mblen.3:75
3898 #, fuzzy
3899 #| msgid ""
3900 #| "If I<s> is a NULL pointer, the B<mblen>()  function resets the shift "
3901 #| "state, known to only this function, to the initial state, and returns "
3902 #| "nonzero if the encoding has nontrivial shift state, or zero if the "
3903 #| "encoding is stateless."
3904 msgid ""
3905 "If I<s> is NULL, the B<mblen>()  function resets the shift state, known to "
3906 "only this function, to the initial state, and returns nonzero if the "
3907 "encoding has nontrivial shift state, or zero if the encoding is stateless."
3908 msgstr ""
3909 "I<s> が NULL ポインターならば、 B<mblen>()  関数はこの関数のみが 使用するシフ"
3910 "ト状態を初期化状態に戻し、シフト状態を使用した文字符号の場合に はゼロ以外を、"
3911 "文字符号がシフト状態を持たない場合にはゼロを返す。"
3912
3913 #. type: Plain text
3914 #: build/C/man3/mblen.3:87
3915 msgid ""
3916 "The B<mblen>()  function returns the number of bytes parsed from the "
3917 "multibyte sequence starting at I<s>, if a non-null wide character was "
3918 "recognized.  It returns 0, if a null wide character was recognized.  It "
3919 "returns -1, if an invalid multibyte sequence was encountered or if it "
3920 "couldn't parse a complete multibyte character."
3921 msgstr ""
3922 "B<mblen>()  関数は I<s> から始まるマルチバイト列を検査して ナルワイド文字以外"
3923 "を確認した場合にはそのバイト数を返す。 ナルワイド文字を確認した場合にはゼロを"
3924 "返す。不正なマルチバイト列に 遭遇した場合や完全なマルチバイト文字を解析できな"
3925 "かった場合には -1 を返す。"
3926
3927 #. type: Plain text
3928 #: build/C/man3/mblen.3:92
3929 msgid "The B<mblen>()  function is not thread-safe."
3930 msgstr "B<mblen>() 関数はスレッドセーフではない。"
3931
3932 #. type: Plain text
3933 #: build/C/man3/mblen.3:94 build/C/man3/mbstowcs.3:97
3934 #: build/C/man3/mbtowc.3:116 build/C/man3/wcstombs.3:91
3935 #: build/C/man3/wctomb.3:91
3936 msgid "C99."
3937 msgstr "C99."
3938
3939 #. type: Plain text
3940 #: build/C/man3/mblen.3:101
3941 msgid ""
3942 "The behavior of B<mblen>()  depends on the B<LC_CTYPE> category of the "
3943 "current locale."
3944 msgstr ""
3945 "B<mblen>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
3946
3947 #. type: Plain text
3948 #: build/C/man3/mblen.3:106
3949 msgid ""
3950 "The function B<mbrlen>(3)  provides a better interface to the same "
3951 "functionality."
3952 msgstr "B<mbrlen>(3)  関数は同じ機能のより良いインタフェースを提供する。"
3953
3954 #. type: Plain text
3955 #: build/C/man3/mblen.3:108
3956 msgid "B<mbrlen>(3)"
3957 msgstr "B<mbrlen>(3)"
3958
3959 #. type: TH
3960 #: build/C/man3/mbstowcs.3:18
3961 #, no-wrap
3962 msgid "MBSTOWCS"
3963 msgstr "MBSTOWCS"
3964
3965 #. type: TH
3966 #: build/C/man3/mbstowcs.3:18 build/C/man3/mbtowc.3:16
3967 #: build/C/man3/strtol.3:31 build/C/man3/strtoul.3:33
3968 #: build/C/man3/wcstombs.3:16 build/C/man3/wctomb.3:16
3969 #, fuzzy, no-wrap
3970 #| msgid "2003-11-28"
3971 msgid "2014-03-18"
3972 msgstr "2003-11-28"
3973
3974 #. type: Plain text
3975 #: build/C/man3/mbstowcs.3:21
3976 msgid "mbstowcs - convert a multibyte string to a wide-character string"
3977 msgstr "mbstowcs - マルチバイト文字列をワイド文字列に変換する"
3978
3979 #. type: Plain text
3980 #: build/C/man3/mbstowcs.3:26
3981 #, no-wrap
3982 msgid "B<size_t mbstowcs(wchar_t *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
3983 msgstr "B<size_t mbstowcs(wchar_t *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
3984
3985 #. type: Plain text
3986 #: build/C/man3/mbstowcs.3:45
3987 #, fuzzy
3988 #| msgid ""
3989 #| "If I<dest> is not a NULL pointer, the B<mbstowcs>()  function converts "
3990 #| "the multibyte string I<src> to a wide-character string starting at "
3991 #| "I<dest>.  At most I<n> wide characters are written to I<dest>.  The "
3992 #| "conversion starts in the initial state.  The conversion can stop for "
3993 #| "three reasons:"
3994 msgid ""
3995 "If I<dest> is not NULL, the B<mbstowcs>()  function converts the multibyte "
3996 "string I<src> to a wide-character string starting at I<dest>.  At most I<n> "
3997 "wide characters are written to I<dest>.  The conversion starts in the "
3998 "initial state.  The conversion can stop for three reasons:"
3999 msgstr ""
4000 "I<dest> が NULL ポインターでなければ B<mbstowcs>()  関数は マルチバイト文字"
4001 "列 I<*src> を I<dest> から始まるワイド文字列に 変換する。I<dest> には最大で "
4002 "I<n> 文字のワイド文字が 書き込まれる。変換は初期状態で開始され、 以下の三つの"
4003 "いずれかの条件で停止する:"
4004
4005 #. type: IP
4006 #: build/C/man3/mbstowcs.3:45
4007 #, no-wrap
4008 msgid "1."
4009 msgstr "1."
4010
4011 #. type: Plain text
4012 #: build/C/man3/mbstowcs.3:50
4013 msgid ""
4014 "An invalid multibyte sequence has been encountered.  In this case I<"
4015 "(size_t)\\ -1> is returned."
4016 msgstr "不正なマルチバイト列に遭遇した。この場合には I<(size_t)\\ -1> を返す。"
4017
4018 #. type: IP
4019 #: build/C/man3/mbstowcs.3:50
4020 #, no-wrap
4021 msgid "2."
4022 msgstr "2."
4023
4024 #. type: Plain text
4025 #: build/C/man3/mbstowcs.3:59
4026 msgid ""
4027 "I<n> non-L\\(aq\\e0\\(aq wide characters have been stored at I<dest>.  In "
4028 "this case the number of wide characters written to I<dest> is returned, but "
4029 "the shift state at this point is lost."
4030 msgstr ""
4031 "I<n> 文字の L\\(aq\\e0\\(aq 以外のワイド文字を I<dest> に格納した場合。 この"
4032 "場合は I<*src> が次に変換されるマルチバイト列を指すようにして、 I<dest> に書"
4033 "き込まれたワイド文字の数を返す。しかしこの指している 場所のシフト状態は失われ"
4034 "る。"
4035
4036 #. type: IP
4037 #: build/C/man3/mbstowcs.3:59
4038 #, no-wrap
4039 msgid "3."
4040 msgstr "3."
4041
4042 #. type: Plain text
4043 #: build/C/man3/mbstowcs.3:65
4044 msgid ""
4045 "The multibyte string has been completely converted, including the "
4046 "terminating null wide character (\\(aq\\e0\\(aq).  In this case the number "
4047 "of wide characters written to I<dest>, excluding the terminating null wide "
4048 "character, is returned."
4049 msgstr ""
4050 "マルチバイト文字列が終端の NULL ワイド文字 (\\(aq\\e0\\(aq) まで含めて完全に "
4051 "変換された場合。この場合は終端の NULL ワイド文字を除いて I<dest> に書き込まれ"
4052 "た文字数を返す。"
4053
4054 #. type: Plain text
4055 #: build/C/man3/mbstowcs.3:71
4056 msgid ""
4057 "The programmer must ensure that there is room for at least I<n> wide "
4058 "characters at I<dest>."
4059 msgstr ""
4060 "プログラマーは I<dest> に最低でも I<n> ワイド文字を書き込むこ とができる空間"
4061 "があることを保証しなければならない。"
4062
4063 #. type: Plain text
4064 #: build/C/man3/mbstowcs.3:79
4065 msgid ""
4066 "If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
4067 "except that the converted wide characters are not written out to memory, and "
4068 "that no length limit exists."
4069 msgstr ""
4070 "I<dest> が NULL の場合、I<n> は無視され、上記と同様の変換が 行われるが、変換"
4071 "されたワイド文字はメモリに書き込まれず、変換先の上限 が存在しない。"
4072
4073 #. type: Plain text
4074 #: build/C/man3/mbstowcs.3:85
4075 #, fuzzy
4076 #| msgid ""
4077 #| "In order to avoid the case 2 above, the programmer should make sure I<n> "
4078 #| "is greater or equal to I<mbstowcs(NULL,src,0)+1>."
4079 msgid ""
4080 "In order to avoid the case 2 above, the programmer should make sure I<n> is "
4081 "greater than or equal to I<mbstowcs(NULL,src,0)+1>."
4082 msgstr ""
4083 "上記の 2. の場合を避けるためにプログラマーは I<n> が I<mbstowcs(NULL,"
4084 "src,0)+1> 以上であることを保証すべきである。"
4085
4086 #. type: Plain text
4087 #: build/C/man3/mbstowcs.3:95
4088 msgid ""
4089 "The B<mbstowcs>()  function returns the number of wide characters that make "
4090 "up the converted part of the wide-character string, not including the "
4091 "terminating null wide character.  If an invalid multibyte sequence was "
4092 "encountered, I<(size_t)\\ -1> is returned."
4093 msgstr ""
4094 "B<mbstowcs>()  関数はワイド文字列に変換完了したワイド文字の数を返す。 終端の"
4095 "ナルワイド文字は含まない。不正なマルチバイト列に遭遇した場合には I<"
4096 "(size_t)\\ -1> を返す。"
4097
4098 #. type: Plain text
4099 #: build/C/man3/mbstowcs.3:104
4100 msgid ""
4101 "The behavior of B<mbstowcs>()  depends on the B<LC_CTYPE> category of the "
4102 "current locale."
4103 msgstr ""
4104 "B<mbstowcs>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
4105
4106 #. type: Plain text
4107 #: build/C/man3/mbstowcs.3:109
4108 msgid ""
4109 "The function B<mbsrtowcs>(3)  provides a better interface to the same "
4110 "functionality."
4111 msgstr "B<mbsrtowcs>(3)  関数は同じ機能のより良いインターフェースを提供する。"
4112
4113 #. type: Plain text
4114 #: build/C/man3/mbstowcs.3:114
4115 msgid ""
4116 "The program below illustrates the use of B<mbstowcs>(), as well as some of "
4117 "the wider character classification functions.  An example run is the "
4118 "following:"
4119 msgstr ""
4120
4121 #. type: Plain text
4122 #: build/C/man3/mbstowcs.3:121
4123 #, no-wrap
4124 msgid ""
4125 "$ ./t_mbstowcs de_DE.UTF-8 Grüße!\n"
4126 "Length of source string (excluding terminator):\n"
4127 "    8 bytes\n"
4128 "    6 multibyte characters\n"
4129 msgstr ""
4130
4131 #. type: Plain text
4132 #: build/C/man3/mbstowcs.3:129
4133 #, no-wrap
4134 msgid ""
4135 "Wide character string is: Grüße! (6 characters)\n"
4136 "    G alpha upper\n"
4137 "    r alpha lower\n"
4138 "    ü alpha lower\n"
4139 "    ß alpha lower\n"
4140 "    e alpha lower\n"
4141 "    ! !alpha\n"
4142 msgstr ""
4143
4144 #. type: SS
4145 #: build/C/man3/mbstowcs.3:131 build/C/man3/strtol.3:248
4146 #, no-wrap
4147 msgid "Program source"
4148 msgstr "プログラムのソース"
4149
4150 #. type: Plain text
4151 #: build/C/man3/mbstowcs.3:138
4152 #, fuzzy, no-wrap
4153 #| msgid ""
4154 #| "#define _SVID_SOURCE\n"
4155 #| "#include E<lt>locale.hE<gt>\n"
4156 #| "#include E<lt>stdlib.hE<gt>\n"
4157 #| "#include E<lt>string.hE<gt>\n"
4158 #| "#include E<lt>stdio.hE<gt>\n"
4159 msgid ""
4160 "#include E<lt>locale.hE<gt>\n"
4161 "#include E<lt>wchar.hE<gt>\n"
4162 "#include E<lt>stdio.hE<gt>\n"
4163 "#include E<lt>string.hE<gt>\n"
4164 "#include E<lt>stdlib.hE<gt>\n"
4165 msgstr ""
4166 "#define _SVID_SOURCE\n"
4167 "#include E<lt>locale.hE<gt>\n"
4168 "#include E<lt>stdlib.hE<gt>\n"
4169 "#include E<lt>string.hE<gt>\n"
4170 "#include E<lt>stdio.hE<gt>\n"
4171
4172 #. type: Plain text
4173 #: build/C/man3/mbstowcs.3:145
4174 #, no-wrap
4175 msgid ""
4176 "int\n"
4177 "main(int argc, char *argv[])\n"
4178 "{\n"
4179 "    size_t mbslen;      /* Number of multibyte characters in source */\n"
4180 "    wchar_t *wcs;       /* Pointer to converted wide character string */\n"
4181 "    wchar_t *wp;\n"
4182 msgstr ""
4183
4184 #. type: Plain text
4185 #: build/C/man3/mbstowcs.3:150
4186 #, fuzzy, no-wrap
4187 #| msgid ""
4188 #| "    if (argc != 3) {\n"
4189 #| "        fprintf(stderr, \"Usage: %s E<lt>seedE<gt> E<lt>nloopsE<gt>\\en\", argv[0]);\n"
4190 #| "        exit(EXIT_FAILURE);\n"
4191 #| "    }\n"
4192 msgid ""
4193 "    if (argc E<lt> 3) {\n"
4194 "        fprintf(stderr, \"Usage: %s E<lt>localeE<gt> E<lt>stringE<gt>\\en\", argv[0]);\n"
4195 "        exit(EXIT_FAILURE);\n"
4196 "    }\n"
4197 msgstr ""
4198 "    if (argc != 3) {\n"
4199 "        fprintf(stderr, \"Usage: %s E<lt>seedE<gt> E<lt>nloopsE<gt>\\en\", argv[0]);\n"
4200 "        exit(EXIT_FAILURE);\n"
4201 "    }\n"
4202
4203 #. type: Plain text
4204 #: build/C/man3/mbstowcs.3:152
4205 #, no-wrap
4206 msgid "    /* Apply the specified locale */\n"
4207 msgstr ""
4208
4209 #. type: Plain text
4210 #: build/C/man3/mbstowcs.3:157
4211 #, fuzzy, no-wrap
4212 #| msgid ""
4213 #| "    if (endptr == str) {\n"
4214 #| "        fprintf(stderr, \"No digits were found\\en\");\n"
4215 #| "        exit(EXIT_FAILURE);\n"
4216 #| "    }\n"
4217 msgid ""
4218 "    if (setlocale(LC_ALL, argv[1]) == NULL) {\n"
4219 "        perror(\"setlocale\");\n"
4220 "        exit(EXIT_FAILURE);\n"
4221 "    }\n"
4222 msgstr ""
4223 "    if (endptr == str) {\n"
4224 "        fprintf(stderr, \"No digits were found\\en\");\n"
4225 "        exit(EXIT_FAILURE);\n"
4226 "    }\n"
4227
4228 #. type: Plain text
4229 #: build/C/man3/mbstowcs.3:160
4230 #, no-wrap
4231 msgid ""
4232 "    /* Calculate the length required to hold argv[2] converted to\n"
4233 "       a wide character string */\n"
4234 msgstr ""
4235
4236 #. type: Plain text
4237 #: build/C/man3/mbstowcs.3:166
4238 #, fuzzy, no-wrap
4239 #| msgid ""
4240 #| "    i = atexit(bye);\n"
4241 #| "    if (i != 0) {\n"
4242 #| "        fprintf(stderr, \"cannot set exit function\\en\");\n"
4243 #| "        exit(EXIT_FAILURE);\n"
4244 #| "    }\n"
4245 msgid ""
4246 "    mbslen = mbstowcs(NULL, argv[2], 0);\n"
4247 "    if (mbslen == (size_t) -1) {\n"
4248 "        perror(\"mbstowcs\");\n"
4249 "        exit(EXIT_FAILURE);\n"
4250 "    }\n"
4251 msgstr ""
4252 "    i = atexit(bye);\n"
4253 "    if (i != 0) {\n"
4254 "        fprintf(stderr, \"cannot set exit function\\en\");\n"
4255 "        exit(EXIT_FAILURE);\n"
4256 "    }\n"
4257
4258 #. type: Plain text
4259 #: build/C/man3/mbstowcs.3:168
4260 #, no-wrap
4261 msgid "    /* Describe the source string to the user */\n"
4262 msgstr ""
4263
4264 #. type: Plain text
4265 #: build/C/man3/mbstowcs.3:172
4266 #, no-wrap
4267 msgid ""
4268 "    printf(\"Length of source string (excluding terminator):\\en\");\n"
4269 "    printf(\"    %zu bytes\\en\", strlen(argv[2]));\n"
4270 "    printf(\"    %zu multibyte characters\\en\\en\", mbslen);\n"
4271 msgstr ""
4272
4273 #. type: Plain text
4274 #: build/C/man3/mbstowcs.3:175
4275 #, no-wrap
4276 msgid ""
4277 "    /* Allocate wide character string of the desired size.  Add 1\n"
4278 "       to allow for terminating null wide character (L\\(aq\\e0\\(aq). */\n"
4279 msgstr ""
4280
4281 #. type: Plain text
4282 #: build/C/man3/mbstowcs.3:181
4283 #, fuzzy, no-wrap
4284 #| msgid ""
4285 #| "    i = atexit(bye);\n"
4286 #| "    if (i != 0) {\n"
4287 #| "        fprintf(stderr, \"cannot set exit function\\en\");\n"
4288 #| "        exit(EXIT_FAILURE);\n"
4289 #| "    }\n"
4290 msgid ""
4291 "    wcs = calloc(mbslen + 1, sizeof(wchar_t));\n"
4292 "    if (wcs == NULL) {\n"
4293 "        perror(\"calloc\");\n"
4294 "        exit(EXIT_FAILURE);\n"
4295 "    }\n"
4296 msgstr ""
4297 "    i = atexit(bye);\n"
4298 "    if (i != 0) {\n"
4299 "        fprintf(stderr, \"cannot set exit function\\en\");\n"
4300 "        exit(EXIT_FAILURE);\n"
4301 "    }\n"
4302
4303 #. type: Plain text
4304 #: build/C/man3/mbstowcs.3:184
4305 #, fuzzy, no-wrap
4306 #| msgid "mbstowcs - convert a multibyte string to a wide-character string"
4307 msgid ""
4308 "    /* Convert the multibyte character string in argv[2] to a\n"
4309 "       wide character string */\n"
4310 msgstr "mbstowcs - マルチバイト文字列をワイド文字列に変換する"
4311
4312 #. type: Plain text
4313 #: build/C/man3/mbstowcs.3:189
4314 #, fuzzy, no-wrap
4315 #| msgid ""
4316 #| "    if (endptr == str) {\n"
4317 #| "        fprintf(stderr, \"No digits were found\\en\");\n"
4318 #| "        exit(EXIT_FAILURE);\n"
4319 #| "    }\n"
4320 msgid ""
4321 "    if (mbstowcs(wcs, argv[2], mbslen + 1) == (size_t) -1) {\n"
4322 "        perror(\"mbstowcs\");\n"
4323 "        exit(EXIT_FAILURE);\n"
4324 "    }\n"
4325 msgstr ""
4326 "    if (endptr == str) {\n"
4327 "        fprintf(stderr, \"No digits were found\\en\");\n"
4328 "        exit(EXIT_FAILURE);\n"
4329 "    }\n"
4330
4331 #. type: Plain text
4332 #: build/C/man3/mbstowcs.3:192
4333 #, no-wrap
4334 msgid ""
4335 "    printf(\"Wide character string is: %ls (%zu characters)\\en\",\n"
4336 "            wcs, mbslen);\n"
4337 msgstr ""
4338
4339 #. type: Plain text
4340 #: build/C/man3/mbstowcs.3:195
4341 #, no-wrap
4342 msgid ""
4343 "    /* Now do some inspection of the classes of the characters in\n"
4344 "       the wide character string */\n"
4345 msgstr ""
4346
4347 #. type: Plain text
4348 #: build/C/man3/mbstowcs.3:198
4349 #, no-wrap
4350 msgid ""
4351 "    for (wp = wcs; *wp != 0; wp++) {\n"
4352 "        printf(\"    %lc \", (wint_t) *wp);\n"
4353 msgstr ""
4354
4355 #. type: Plain text
4356 #: build/C/man3/mbstowcs.3:202
4357 #, no-wrap
4358 msgid ""
4359 "        if (!iswalpha(*wp))\n"
4360 "            printf(\"!\");\n"
4361 "        printf(\"alpha \");\n"
4362 msgstr ""
4363
4364 #. type: Plain text
4365 #: build/C/man3/mbstowcs.3:206
4366 #, no-wrap
4367 msgid ""
4368 "        if (iswalpha(*wp)) {\n"
4369 "            if (iswupper(*wp))\n"
4370 "                printf(\"upper \");\n"
4371 msgstr ""
4372
4373 #. type: Plain text
4374 #: build/C/man3/mbstowcs.3:210
4375 #, fuzzy, no-wrap
4376 #| msgid ""
4377 #| "            case RW_OPT:\n"
4378 #| "                readwrite = 1;\n"
4379 #| "                break;\n"
4380 msgid ""
4381 "            if (iswlower(*wp))\n"
4382 "                printf(\"lower \");\n"
4383 "        }\n"
4384 msgstr ""
4385 "            case RW_OPT:\n"
4386 "                readwrite = 1;\n"
4387 "                break;\n"
4388
4389 #. type: Plain text
4390 #: build/C/man3/mbstowcs.3:213
4391 #, no-wrap
4392 msgid ""
4393 "        putchar(\\(aq\\en\\(aq);\n"
4394 "    }\n"
4395 msgstr ""
4396
4397 #. type: Plain text
4398 #: build/C/man3/mbstowcs.3:223
4399 #, fuzzy
4400 #| msgid ""
4401 #| "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>"
4402 #| "(3), B<wctomb>(3)"
4403 msgid ""
4404 "B<mblen>(3), B<mbsrtowcs>(3), B<mbtowc>(3), B<wctomb>(3), B<wcstombs>(3)"
4405 msgstr ""
4406 "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>(3), "
4407 "B<wctomb>(3)"
4408
4409 #. type: TH
4410 #: build/C/man3/mbtowc.3:16
4411 #, no-wrap
4412 msgid "MBTOWC"
4413 msgstr "MBTOWC"
4414
4415 #. type: Plain text
4416 #: build/C/man3/mbtowc.3:19
4417 msgid "mbtowc - convert a multibyte sequence to a wide character"
4418 msgstr "mbtowc - マルチバイト列をワイド文字に変換する"
4419
4420 #. type: Plain text
4421 #: build/C/man3/mbtowc.3:24
4422 #, no-wrap
4423 msgid "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
4424 msgstr "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
4425
4426 #. type: Plain text
4427 #: build/C/man3/mbtowc.3:50
4428 msgid ""
4429 "The main case for this function is when I<s> is not NULL and I<pwc> is not "
4430 "NULL.  In this case, the B<mbtowc>()  function inspects at most I<n> bytes "
4431 "of the multibyte string starting at I<s>, extracts the next complete "
4432 "multibyte character, converts it to a wide character and stores it at "
4433 "I<*pwc>.  It updates an internal shift state known only to the B<mbtowc>()  "
4434 "function.  If I<s> does not point to a null byte (\\(aq\\e0\\(aq), it "
4435 "returns the number of bytes that were consumed from I<s>, otherwise it "
4436 "returns 0."
4437 msgstr ""
4438 "この関数が用いられる場合、通常 I<s> が NULL でなく I<pwc> も NULL でない。こ"
4439 "の場合は B<mbtowc>()  関数は I<s> から始まる 最大 I<n> バイトのマルチバイト文"
4440 "字列を検査して、次の完全なマルチバイト 文字を取り出し、それをワイド文字に変換"
4441 "して I<*pwc> に格納する。 同時に mbtowc 関数のみが使用する内部状態を更新す"
4442 "る。I<s> が NULL バイト (\\(aq\\e0\\(aq) 以外を指している場合は、I<s> から消"
4443 "費するバイト数を返す。 I<s> が NULL バイトを指している場合には 0 を返す。"
4444
4445 #. type: Plain text
4446 #: build/C/man3/mbtowc.3:64
4447 msgid ""
4448 "If the I<n> bytes starting at I<s> do not contain a complete multibyte "
4449 "character, or if they contain an invalid multibyte sequence, B<mbtowc>()  "
4450 "returns -1.  This can happen even if I<n> E<gt>= I<MB_CUR_MAX>, if the "
4451 "multibyte string contains redundant shift sequences."
4452 msgstr ""
4453 "I<s> から始まる I<n> バイトが完全なマルチバイト文字を含んで いない場合や不正"
4454 "なマルチバイト列を含んでいる場合には B<mbtowc>()  は -1 を返す。マルチバイト"
4455 "文字列に冗長なシフトシーケンスが 含まれていると I<n> E<gt>= I<MB_CUR_MAX> の"
4456 "場合もこのようなことが 起こりえる。"
4457
4458 #. type: Plain text
4459 #: build/C/man3/mbtowc.3:75
4460 msgid ""
4461 "A different case is when I<s> is not NULL but I<pwc> is NULL.  In this case "
4462 "the B<mbtowc>()  function behaves as above, except that it does not store "
4463 "the converted wide character in memory."
4464 msgstr ""
4465 "I<s> が NULL でなく I<pwc> が NULL の場合は B<mbtowc>()  関数は 上記と同様に"
4466 "動作するが、変換したワイド文字はメモリには書き込まれない。"
4467
4468 #.  The Dinkumware doc and the Single UNIX specification say this, but
4469 #.  glibc doesn't implement this.
4470 #. type: Plain text
4471 #: build/C/man3/mbtowc.3:94
4472 msgid ""
4473 "A third case is when I<s> is NULL.  In this case, I<pwc> and I<n> are "
4474 "ignored.  The B<mbtowc>()  function resets the shift state, only known to "
4475 "this function, to the initial state, and returns nonzero if the encoding has "
4476 "nontrivial shift state, or zero if the encoding is stateless."
4477 msgstr ""
4478 "三番目の場合として I<s> が NULL の場合は I<pwc> と I<n> は 無視される。 "
4479 "B<mbtowc>()  関数のみが使用するシフト状態は初期状態に 戻される。そして文字符"
4480 "号がシフト状態に依存するならばゼロ以外を、文字符号が 状態によらないならばゼロ"
4481 "を返す。"
4482
4483 #. type: Plain text
4484 #: build/C/man3/mbtowc.3:106
4485 msgid ""
4486 "If I<s> is not NULL, the B<mbtowc>()  function returns the number of "
4487 "consumed bytes starting at I<s>, or 0 if I<s> points to a null byte, or -1 "
4488 "upon failure."
4489 msgstr ""
4490 "I<s> が NULL でなければ B<mbtowc>()  関数は I<s> から消費した バイト数を、"
4491 "I<s> がナル文字を指している場合はゼロを、 変換に失敗した場合は -1 を返す。"
4492
4493 #. type: Plain text
4494 #: build/C/man3/mbtowc.3:114
4495 msgid ""
4496 "If I<s> is NULL, the B<mbtowc>()  function returns nonzero if the encoding "
4497 "has nontrivial shift state, or zero if the encoding is stateless."
4498 msgstr ""
4499 "I<s> が NULL ならば B<mbtowc>()  関数は文字符号がシフト状態に依存 していれば"
4500 "ゼロ以外を、状態によらなければゼロを返す。"
4501
4502 #. type: Plain text
4503 #: build/C/man3/mbtowc.3:123
4504 msgid ""
4505 "The behavior of B<mbtowc>()  depends on the B<LC_CTYPE> category of the "
4506 "current locale."
4507 msgstr ""
4508 "B<mbtowc>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
4509
4510 #. type: Plain text
4511 #: build/C/man3/mbtowc.3:129
4512 msgid ""
4513 "This function is not multithread safe.  The function B<mbrtowc>(3)  provides "
4514 "a better interface to the same functionality."
4515 msgstr ""
4516 "この関数はマルチスレッドでは安全ではない。 B<mbrtowc>(3)  関数は 同じ機能のよ"
4517 "り良いインターフェースを提供する。"
4518
4519 #. type: Plain text
4520 #: build/C/man3/mbtowc.3:136
4521 #, fuzzy
4522 #| msgid ""
4523 #| "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>"
4524 #| "(3), B<wctomb>(3)"
4525 msgid ""
4526 "B<MB_CUR_MAX>(3), B<mblen>(3), B<mbrtowc>(3), B<mbstowcs>(3), B<wctomb>(3), "
4527 "B<wcstombs>(3)"
4528 msgstr ""
4529 "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>(3), "
4530 "B<wctomb>(3)"
4531
4532 #. type: TH
4533 #: build/C/man3/mkdtemp.3:26
4534 #, no-wrap
4535 msgid "MKDTEMP"
4536 msgstr "MKDTEMP"
4537
4538 #. type: Plain text
4539 #: build/C/man3/mkdtemp.3:29
4540 msgid "mkdtemp - create a unique temporary directory"
4541 msgstr "mkdtemp - 他と重ならない一時的なディレクトリを作成する"
4542
4543 #. type: Plain text
4544 #: build/C/man3/mkdtemp.3:34
4545 #, no-wrap
4546 msgid "B<char *mkdtemp(char *>I<template>B<);>\n"
4547 msgstr "B<char *mkdtemp(char *>I<template>B<);>\n"
4548
4549 #. type: Plain text
4550 #: build/C/man3/mkdtemp.3:42
4551 msgid "B<mkdtemp>():"
4552 msgstr "B<mkdtemp>():"
4553
4554 #. type: Plain text
4555 #: build/C/man3/mkdtemp.3:47
4556 msgid "_BSD_SOURCE"
4557 msgstr "_BSD_SOURCE"
4558
4559 #. type: Plain text
4560 #: build/C/man3/mkdtemp.3:49
4561 msgid "|| /* Since glibc 2.10: */"
4562 msgstr "|| /* Since glibc 2.10: */"
4563
4564 #. type: Plain text
4565 #: build/C/man3/mkdtemp.3:51
4566 msgid "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"
4567 msgstr "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"
4568
4569 #. type: Plain text
4570 #: build/C/man3/mkdtemp.3:68
4571 msgid ""
4572 "The B<mkdtemp>()  function generates a uniquely named temporary directory "
4573 "from I<template>.  The last six characters of I<template> must be XXXXXX and "
4574 "these are replaced with a string that makes the directory name unique.  The "
4575 "directory is then created with permissions 0700.  Since it will be modified, "
4576 "I<template> must not be a string constant, but should be declared as a "
4577 "character array."
4578 msgstr ""
4579 "B<mkdtemp>()  関数は、他と重ならない名前の一時的なディレクトリを I<template> "
4580 "から作成する。 I<template> の後から 6 文字は XXXXXX でなければならない。 この"
4581 "部分はディレクトリ名を他と重ならなくするための 文字列で置き換えられる。 ディ"
4582 "レクトリは許可属性を 0700 として作成される。 I<template> は変更されるので、文"
4583 "字列定数にしてはならず、文字配列にすべきである。"
4584
4585 #. type: Plain text
4586 #: build/C/man3/mkdtemp.3:75
4587 msgid ""
4588 "The B<mkdtemp>()  function returns a pointer to the modified template string "
4589 "on success, and NULL on failure, in which case I<errno> is set appropriately."
4590 msgstr ""
4591 "成功した場合、 B<mkdtemp>()  関数は 変更された template 文字列へのポインタを"
4592 "返す。 失敗した場合は、NULL を返して、 I<errno> を適切に設定する。"
4593
4594 #. type: TP
4595 #: build/C/man3/mkdtemp.3:76 build/C/man3/mkstemp.3:166
4596 #: build/C/man3/mktemp.3:92 build/C/man3/random.3:141
4597 #: build/C/man3/random.3:148 build/C/man3/random_r.3:106
4598 #: build/C/man3/random_r.3:110 build/C/man3/random_r.3:119
4599 #: build/C/man3/setenv.3:120 build/C/man3/strtol.3:145
4600 #: build/C/man3/strtoul.3:149
4601 #, no-wrap
4602 msgid "B<EINVAL>"
4603 msgstr "B<EINVAL>"
4604
4605 #. type: Plain text
4606 #: build/C/man3/mkdtemp.3:80
4607 msgid ""
4608 "The last six characters of I<template> were not XXXXXX.  Now I<template> is "
4609 "unchanged."
4610 msgstr ""
4611 "I<template> の最後の 6 文字が XXXXXX でない。この場合、I<template> は変更され"
4612 "ない。"
4613
4614 #. type: Plain text
4615 #: build/C/man3/mkdtemp.3:84
4616 msgid "Also see B<mkdir>(2)  for other possible values for I<errno>."
4617 msgstr "I<errno> に設定される他の値については、 B<mkdir>(2)  を参照すること。"
4618
4619 #. type: Plain text
4620 #: build/C/man3/mkdtemp.3:86
4621 msgid "Available since glibc 2.1.91."
4622 msgstr "OpenBSD 2.2 で導入された。"
4623
4624 #.  As at 2006, this function is being considered for a revision of POSIX.1
4625 #.  Also in NetBSD 1.4.
4626 #. type: Plain text
4627 #: build/C/man3/mkdtemp.3:91
4628 msgid "POSIX.1-2008.  This function is present on the BSDs."
4629 msgstr "POSIX.1-2008.  この関数は BSD に存在する。"
4630
4631 #. type: Plain text
4632 #: build/C/man3/mkdtemp.3:98
4633 msgid ""
4634 "B<mkdir>(2), B<mkstemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), "
4635 "B<tmpnam>(3)"
4636 msgstr ""
4637 "B<mkdir>(2), B<mkstemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), "
4638 "B<tmpnam>(3)"
4639
4640 #. type: TH
4641 #: build/C/man3/mkstemp.3:35
4642 #, no-wrap
4643 msgid "MKSTEMP"
4644 msgstr "MKSTEMP"
4645
4646 #. type: TH
4647 #: build/C/man3/mkstemp.3:35
4648 #, fuzzy, no-wrap
4649 #| msgid "2012-12-21"
4650 msgid "2013-12-28"
4651 msgstr "2012-12-21"
4652
4653 #. type: Plain text
4654 #: build/C/man3/mkstemp.3:38
4655 msgid "mkstemp, mkostemp, mkstemps, mkostemps - create a unique temporary file"
4656 msgstr ""
4657 "mkstemp, mkostemp, mkstemps, mkostemps - 他と重ならない名前を持つ一時ファイル"
4658 "を作成する"
4659
4660 #. type: Plain text
4661 #: build/C/man3/mkstemp.3:43
4662 #, no-wrap
4663 msgid "B<int mkstemp(char *>I<template>B<);>\n"
4664 msgstr "B<int mkstemp(char *>I<template>B<);>\n"
4665
4666 #. type: Plain text
4667 #: build/C/man3/mkstemp.3:45
4668 #, no-wrap
4669 msgid "B<int mkostemp(char *>I<template>B<, int >I<flags>B<);>\n"
4670 msgstr "B<int mkostemp(char *>I<template>B<, int >I<flags>B<);>\n"
4671
4672 #. type: Plain text
4673 #: build/C/man3/mkstemp.3:47
4674 #, no-wrap
4675 msgid "B<int mkstemps(char *>I<template>B<, int >I<suffixlen>B<);>\n"
4676 msgstr "B<int mkstemps(char *>I<template>B<, int >I<suffixlen>B<);>\n"
4677
4678 #. type: Plain text
4679 #: build/C/man3/mkstemp.3:49
4680 #, no-wrap
4681 msgid "B<int mkostemps(char *>I<template>B<, int >I<suffixlen>B<, int >I<flags>B<);>\n"
4682 msgstr "B<int mkostemps(char *>I<template>B<, int >I<suffixlen>B<, int >I<flags>B<);>\n"
4683
4684 #. type: Plain text
4685 #: build/C/man3/mkstemp.3:57
4686 msgid "B<mkstemp>():"
4687 msgstr "B<mkstemp>():"
4688
4689 #. type: Plain text
4690 #: build/C/man3/mkstemp.3:62 build/C/man3/mktemp.3:63
4691 msgid ""
4692 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
4693 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
4694 msgstr ""
4695 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
4696 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
4697
4698 #. type: Plain text
4699 #: build/C/man3/mkstemp.3:64
4700 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
4701 msgstr "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
4702
4703 #. type: Plain text
4704 #: build/C/man3/mkstemp.3:70
4705 msgid "B<mkostemp>(): _GNU_SOURCE"
4706 msgstr "B<mkostemp>(): _GNU_SOURCE"
4707
4708 #. type: Plain text
4709 #: build/C/man3/mkstemp.3:73
4710 msgid "B<mkstemps>(): _BSD_SOURCE || _SVID_SOURCE"
4711 msgstr "B<mkstemps>(): _BSD_SOURCE || _SVID_SOURCE"
4712
4713 #. type: Plain text
4714 #: build/C/man3/mkstemp.3:76
4715 msgid "B<mkostemps>(): _GNU_SOURCE"
4716 msgstr "B<mkostemps>(): _GNU_SOURCE"
4717
4718 #. type: Plain text
4719 #: build/C/man3/mkstemp.3:83
4720 msgid ""
4721 "The B<mkstemp>()  function generates a unique temporary filename from "
4722 "I<template>, creates and opens the file, and returns an open file descriptor "
4723 "for the file."
4724 msgstr ""
4725 "関数 B<mkstemp>()  は引数 I<template> から他と重ならない一時ファイル名を生成"
4726 "し、 そのファイルの作成とオープンを行い、 そのファイルに対するオープン済みの"
4727 "ファイルディスクリプタを返す。"
4728
4729 #. type: Plain text
4730 #: build/C/man3/mkstemp.3:91
4731 msgid ""
4732 "The last six characters of I<template> must be \"XXXXXX\" and these are "
4733 "replaced with a string that makes the filename unique.  Since it will be "
4734 "modified, I<template> must not be a string constant, but should be declared "
4735 "as a character array."
4736 msgstr ""
4737 "引数 I<template> で指示する文字列の後ろの 6 文字は XXXXXX である必要がある。 "
4738 "この部分がファイル名を他と重ならないようにする文字で置き換えられる。 "
4739 "I<template> は書き換えられるため、文字列定数ではなく文字配列として 宣言するよ"
4740 "うにしなければならない。"
4741
4742 #. type: Plain text
4743 #: build/C/man3/mkstemp.3:99
4744 msgid ""
4745 "The file is created with permissions 0600, that is, read plus write for "
4746 "owner only.  The returned file descriptor provides both read and write "
4747 "access to the file.  The file is opened with the B<open>(2)  B<O_EXCL> flag, "
4748 "guaranteeing that the caller is the process that creates the file."
4749 msgstr ""
4750 "ファイルは許可モード 0600 で作成され、所有者のみが読み書き可能である。返され"
4751 "るファイルディスクリプタで、このファイルへの読み書き両方のアクセスが 可能であ"
4752 "る。 呼び出し者がそのファイルを作成するプロセスであることを保証するために、 "
4753 "ファイルは B<open>(2)  の B<O_EXCL> フラグ付きでオープンされる。"
4754
4755 #.  Reportedly, FreeBSD
4756 #. type: Plain text
4757 #: build/C/man3/mkstemp.3:130
4758 msgid ""
4759 "The B<mkostemp>()  function is like B<mkstemp>(), with the difference that "
4760 "the following bits\\(emwith the same meaning as for B<open>(2)\\(emmay be "
4761 "specified in I<flags>: B<O_APPEND>, B<O_CLOEXEC>, and B<O_SYNC>.  Note that "
4762 "when creating the file, B<mkostemp>()  includes the values B<O_RDWR>, "
4763 "B<O_CREAT>, and B<O_EXCL> in the I<flags> argument given to B<open>(2); "
4764 "including these values in the I<flags> argument given to B<mkostemp>()  is "
4765 "unnecessary, and produces errors on some systems."
4766 msgstr ""
4767
4768 #. type: Plain text
4769 #: build/C/man3/mkstemp.3:146
4770 msgid ""
4771 "The B<mkstemps>()  function is like B<mkstemp>(), except that the string in "
4772 "I<template> contains a suffix of I<suffixlen> characters.  Thus, I<template> "
4773 "is of the form I<prefixXXXXXXsuffix>, and the string XXXXXX is modified as "
4774 "for B<mkstemp>()."
4775 msgstr ""
4776 "B<mkstemps>() 関数は B<mkstemp>() と同様だが、 I<template> 内の文字列に長さ\n"
4777 "が I<suffixlen> 文字の接尾辞 (suffix) が含まれる点が異なる。\n"
4778 "したがって、 I<template> は I<prefixXXXXXXsuffix> の形式となる。\n"
4779 "文字列 XXXXXX の部分は B<mkstemp>() により更新される。"
4780
4781 #. type: Plain text
4782 #: build/C/man3/mkstemp.3:155
4783 msgid ""
4784 "The B<mkostemps>()  function is to B<mkstemps>()  as B<mkostemp>()  is to "
4785 "B<mkstemp>()."
4786 msgstr ""
4787 "B<mkostemps>() と B<mkstemps>() の関係は、\n"
4788 "B<mkostemp>() と B<mkstemp>() の関係と同じである。"
4789
4790 #. type: Plain text
4791 #: build/C/man3/mkstemp.3:161
4792 msgid ""
4793 "On success, these functions return the file descriptor of the temporary "
4794 "file.  On error, -1 is returned, and I<errno> is set appropriately."
4795 msgstr ""
4796 "成功すると、これらの関数は一時ファイルのファイルディスクリプタを返す。 エラー"
4797 "の場合は、-1 を返し、 I<errno> を適切に設定する。"
4798
4799 #. type: TP
4800 #: build/C/man3/mkstemp.3:162
4801 #, no-wrap
4802 msgid "B<EEXIST>"
4803 msgstr "B<EEXIST>"
4804
4805 #. type: Plain text
4806 #: build/C/man3/mkstemp.3:166
4807 msgid ""
4808 "Could not create a unique temporary filename.  Now the contents of "
4809 "I<template> are undefined."
4810 msgstr ""
4811 "すでに同じ名前を持つファイルが存在した。 I<template> の内容は不定である。"
4812
4813 #. type: Plain text
4814 #: build/C/man3/mkstemp.3:174
4815 msgid ""
4816 "For B<mkstemp>()  and B<mkostemp>(): The last six characters of I<template> "
4817 "were not XXXXXX; now I<template> is unchanged."
4818 msgstr ""
4819 "B<mkstemp>() と B<mkostemp>() の場合:\n"
4820 "I<template> の最後の 6 文字が XXXXXX でなかった。\n"
4821 "この場合、I<template> は変更されない。"
4822
4823 #. type: Plain text
4824 #: build/C/man3/mkstemp.3:185
4825 msgid ""
4826 "For B<mkstemps>()  and B<mkostemps>(): I<template> is less than I<(6 + "
4827 "suffixlen)> characters long, or the last 6 characters before the suffix in "
4828 "I<template> were not XXXXXX."
4829 msgstr ""
4830 "B<mkstemps>() と B<mkostemps>() の場合:\n"
4831 "I<template> の長さが I<(6 + suffixlen)> 文字より短い、または\n"
4832 "I<template> の接尾辞の直前の 6 文字が XXXXXX ではなかった。"
4833
4834 #. type: Plain text
4835 #: build/C/man3/mkstemp.3:188
4836 msgid ""
4837 "These functions may also fail with any of the errors described for B<open>"
4838 "(2)."
4839 msgstr ""
4840 "これらの関数は B<open>(2) に書かれているエラーのいずれかで失敗することもあ"
4841 "る。"
4842
4843 #. type: Plain text
4844 #: build/C/man3/mkstemp.3:195
4845 msgid ""
4846 "B<mkostemp>()  is available since glibc 2.7.  B<mkstemps>()  and B<mkostemps>"
4847 "()  are available since glibc 2.11."
4848 msgstr ""
4849 "B<mkostemp>() は glibc 2.7 以降で利用できる。\n"
4850 "B<mkstemps>() と B<mkostemps>() は glibc 2.11 以降で利用できる。"
4851
4852 #. type: Plain text
4853 #: build/C/man3/mkstemp.3:198
4854 msgid "B<mkstemp>(): 4.3BSD, POSIX.1-2001."
4855 msgstr "B<mkstemp>(): 4.3BSD, POSIX.1-2001."
4856
4857 #.  mkstemps() appears to be at least on the BSDs, Mac OS X, Solaris,
4858 #.  and Tru64.
4859 #. type: Plain text
4860 #: build/C/man3/mkstemp.3:203
4861 msgid "B<mkstemps>(): unstandardized, but appears on several other systems."
4862 msgstr ""
4863 "B<mkstemps>(): 標準化されていないが、他のいくつかのシステムにも存在する。"
4864
4865 #. type: Plain text
4866 #: build/C/man3/mkstemp.3:208
4867 msgid "B<mkostemp>()  and B<mkostemps>(): are glibc extensions."
4868 msgstr "B<mkostemp>() と B<mkostemps>(): glibc による拡張。"
4869
4870 #. type: Plain text
4871 #: build/C/man3/mkstemp.3:215
4872 msgid ""
4873 "In glibc versions 2.06 and earlier, the file is created with permissions "
4874 "0666, that is, read and write for all users.  This old behavior may be a "
4875 "security risk, especially since other UNIX flavors use 0600, and somebody "
4876 "might overlook this detail when porting programs.  POSIX.1-2008 adds a "
4877 "requirement that the file be created with mode 0600."
4878 msgstr ""
4879 "glibc バージョン 2.06 以前では、ファイルは許可モード 0666 で作成され、全ての"
4880 "ユーザが読み書き可能であった。この古い動作は、 セキュリティ上のリスクになり得"
4881 "る。特に、他の UNIX では許可モードとして 0600 を使うため、プログラムを移植す"
4882 "る際、この細かな違いを見落とす可能性があるからだ。 POSIX.1-2008 では、ファイ"
4883 "ルを許可モード 0600 で作成することが必須要件として追加された。"
4884
4885 #. type: Plain text
4886 #: build/C/man3/mkstemp.3:226
4887 msgid ""
4888 "More generally, the POSIX specification of B<mkstemp>()  does not say "
4889 "anything about file modes, so the application should make sure its file mode "
4890 "creation mask (see B<umask>(2))  is set appropriately before calling "
4891 "B<mkstemp>()  (and B<mkostemp>())."
4892 msgstr ""
4893 "より一般的には、 B<mkstemp>()  の POSIX 規定ではファイルモードについて何も述"
4894 "べていない。 従って、アプリケーションは B<mkstemp>()  (や B<mkostemp>())  を"
4895 "呼び出す前にファイルモード生成マスク (B<umask>(2)  参照) が適切に設定されてい"
4896 "るか確認するべきである。"
4897
4898 #. type: Plain text
4899 #: build/C/man3/mkstemp.3:233
4900 msgid ""
4901 "The prototype for B<mktemp>()  is in I<E<lt>unistd.hE<gt>> for libc4, libc5, "
4902 "glibc1; glibc2 follows POSIX.1 and has the prototype in I<E<lt>stdlib."
4903 "hE<gt>>."
4904 msgstr ""
4905 "B<mktemp>()  のプロトタイプ宣言は、libc4, libc5, glibc1 では I<E<lt>unistd."
4906 "hE<gt>> に含まれる; glibc2 では POSIX.1 に準拠し I<E<lt>stdlib.hE<gt>> に含ま"
4907 "れている。"
4908
4909 #. type: Plain text
4910 #: build/C/man3/mkstemp.3:239
4911 msgid "B<mkdtemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
4912 msgstr ""
4913 "B<mkdtemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
4914
4915 #. type: TH
4916 #: build/C/man3/mktemp.3:34
4917 #, no-wrap
4918 msgid "MKTEMP"
4919 msgstr "MKTEMP"
4920
4921 #. type: TH
4922 #: build/C/man3/mktemp.3:34
4923 #, fuzzy, no-wrap
4924 #| msgid "2013-02-14"
4925 msgid "2014-02-27"
4926 msgstr "2013-02-14"
4927
4928 #. type: Plain text
4929 #: build/C/man3/mktemp.3:37
4930 msgid "mktemp - make a unique temporary filename"
4931 msgstr "mktemp - 他と重ならないテンポラリファイル名を作成する"
4932
4933 #. type: Plain text
4934 #: build/C/man3/mktemp.3:42
4935 #, no-wrap
4936 msgid "B<char *mktemp(char *>I<template>B<);>\n"
4937 msgstr "B<char *mktemp(char *>I<template>B<);>\n"
4938
4939 #. type: Plain text
4940 #: build/C/man3/mktemp.3:50
4941 msgid "B<mktemp>():"
4942 msgstr "B<mktemp>():"
4943
4944 #. type: Plain text
4945 #: build/C/man3/mktemp.3:59
4946 #, no-wrap
4947 msgid ""
4948 "_BSD_SOURCE || _SVID_SOURCE ||\n"
4949 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
4950 "         _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
4951 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
4952 msgstr ""
4953 "_BSD_SOURCE || _SVID_SOURCE ||\n"
4954 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
4955 "         _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
4956 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
4957
4958 #. type: Plain text
4959 #: build/C/man3/mktemp.3:69
4960 msgid "I<Never use this function>; see NOTES."
4961 msgstr ""
4962
4963 #. type: Plain text
4964 #: build/C/man3/mktemp.3:80
4965 msgid ""
4966 "The B<mktemp>()  function generates a unique temporary filename from "
4967 "I<template>.  The last six characters of I<template> must be XXXXXX and "
4968 "these are replaced with a string that makes the filename unique.  Since it "
4969 "will be modified, I<template> must not be a string constant, but should be "
4970 "declared as a character array."
4971 msgstr ""
4972 "関数 B<mktemp>()  は引数 I<template> から他と重ならない テンポラリファイル名"
4973 "を作成する。引数 I<template> で指示する文字配列 の後6文字は XXXXXX である必要"
4974 "がある。この部分がファイル名を他と 重ならないにするような文字で置き換えられ"
4975 "る。 I<template> は書き換えられるため、文字列定数ではなく文字配列として宣言す"
4976 "るように しなければならない。"
4977
4978 #. type: Plain text
4979 #: build/C/man3/mktemp.3:91
4980 msgid ""
4981 "The B<mktemp>()  function always returns I<template>.  If a unique name was "
4982 "created, the last six bytes of I<template> will have been modified in such a "
4983 "way that the resulting name is unique (i.e., does not exist already)  If a "
4984 "unique name could not be created, I<template> is made an empty string, and "
4985 "I<errno> is set to indicate the error."
4986 msgstr ""
4987 "関数 B<mktemp>()  は常に I<template> を戻す。 一意な名前が作成された場合、 "
4988 "I<template> の最後の 6 バイトに 他と重ならない名前 (それまでに出ていない名"
4989 "前) になるような値が格納される。 一意な名前が作成できなかった場合には、 "
4990 "I<template> には空文字列がセットされ、 I<errno> にエラーを示す値がセットされ"
4991 "る。"
4992
4993 #. type: Plain text
4994 #: build/C/man3/mktemp.3:95
4995 msgid "The last six characters of I<template> were not XXXXXX."
4996 msgstr "引数 I<template> で指示された文字列の後6文字が XXXXXX でない。"
4997
4998 #. type: Plain text
4999 #: build/C/man3/mktemp.3:99
5000 msgid ""
5001 "4.3BSD, POSIX.1-2001.  POSIX.1-2008 removes the specification of B<mktemp>()."
5002 msgstr ""
5003 "4.3BSD, POSIX.1-2001.  POSIX.1-2008 では B<mktemp>()  の仕様が削除されてい"
5004 "る。"
5005
5006 #. type: Plain text
5007 #: build/C/man3/mktemp.3:105
5008 msgid ""
5009 "The prototype is in I<E<lt>unistd.hE<gt>> for libc4, libc5, glibc1; glibc2 "
5010 "follows the Single UNIX Specification and has the prototype in I<E<lt>stdlib."
5011 "hE<gt>>."
5012 msgstr ""
5013 "libc4, libc5, glibc1 でのプロトタイプ宣言は I<E<lt>unistd.hE<gt>> に含まれ"
5014 "る; glibc2 では Single UNIX Specification に従って I<E<lt>stdlib.hE<gt>> に含"
5015 "まれている。"
5016
5017 #. type: SH
5018 #: build/C/man3/mktemp.3:105 build/C/man3/random.3:180
5019 #: build/C/man3/rpmatch.3:104 build/C/man3/setenv.3:144
5020 #, no-wrap
5021 msgid "BUGS"
5022 msgstr "バグ"
5023
5024 #. type: Plain text
5025 #: build/C/man3/mktemp.3:118
5026 msgid ""
5027 "Never use B<mktemp>().  Some implementations follow 4.3BSD and replace "
5028 "XXXXXX by the current process ID and a single letter, so that at most 26 "
5029 "different names can be returned.  Since on the one hand the names are easy "
5030 "to guess, and on the other hand there is a race between testing whether the "
5031 "name exists and opening the file, every use of B<mktemp>()  is a security "
5032 "risk.  The race is avoided by B<mkstemp>(3)."
5033 msgstr ""
5034 "B<mktemp>()  を決して使わないこと。4.3BSD 系の実装や XXXXXX を プロセス ID と"
5035 "1文字により置き換える方式ではせいぜい26の名前を返す ことができるにすぎない。 "
5036 "この名前は簡単に推測できることや、その名前がすでに存在しているかどうか テスト"
5037 "して、そのファイルをオープンする間に競合がある事から、 B<mktemp>()  を使うの"
5038 "は毎回セキュリティリスクをおかすことになる。 この競合は B<mkstemp>(3)  を使う"
5039 "ことで避けられる。"
5040
5041 #. type: Plain text
5042 #: build/C/man3/mktemp.3:123
5043 msgid "B<mkstemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
5044 msgstr "B<mkstemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
5045
5046 #. type: TH
5047 #: build/C/man3/on_exit.3:31
5048 #, no-wrap
5049 msgid "ON_EXIT"
5050 msgstr "ON_EXIT"
5051
5052 #. type: Plain text
5053 #: build/C/man3/on_exit.3:34
5054 msgid ""
5055 "on_exit - register a function to be called at normal process termination"
5056 msgstr "on_exit - プロセスが正常に終了した際に呼ばれる関数を登録する"
5057
5058 #. type: Plain text
5059 #: build/C/man3/on_exit.3:39
5060 #, no-wrap
5061 msgid "B<int on_exit(void (*>I<function>B<)(int , void *), void *>I<arg>B<);>\n"
5062 msgstr "B<int on_exit(void (*>I<function>B<)(int , void *), void *>I<arg>B<);>\n"
5063
5064 #. type: Plain text
5065 #: build/C/man3/on_exit.3:48
5066 msgid "B<on_exit>(): _BSD_SOURCE || _SVID_SOURCE"
5067 msgstr "B<on_exit>(): _BSD_SOURCE || _SVID_SOURCE"
5068
5069 #. type: Plain text
5070 #: build/C/man3/on_exit.3:66
5071 msgid ""
5072 "The B<on_exit>()  function registers the given I<function> to be called at "
5073 "normal process termination, whether via B<exit>(3)  or via return from the "
5074 "program's I<main>().  The I<function> is passed the status argument given to "
5075 "the last call to B<exit>(3)  and the I<arg> argument from B<on_exit>()."
5076 msgstr ""
5077 "B<on_exit>()  関数は、指定された関数 I<function> を、プロセスが 正常に終了し"
5078 "た際に呼ばれる関数として登録する。正常な終了とは、 B<exit>(3)  またはプログラ"
5079 "ムの I<main>()  関数の中の return 命令による終了である。 関数 I<function> に"
5080 "は、直近の B<exit>(3)  の呼び出しで渡された status 引数と B<on_exit>()  の "
5081 "I<arg> 引数が渡される。"
5082
5083 #. type: Plain text
5084 #: build/C/man3/on_exit.3:81
5085 msgid ""
5086 "The B<on_exit>()  function returns the value 0 if successful; otherwise it "
5087 "returns a nonzero value."
5088 msgstr "B<on_exit>()  関数は、成功したら 0 を、そうでなければ 0 以外を返す。"
5089
5090 #. type: Plain text
5091 #: build/C/man3/on_exit.3:88
5092 msgid ""
5093 "This function comes from SunOS 4, but is also present in libc4, libc5 and "
5094 "glibc.  It no longer occurs in Solaris (SunOS 5).  Avoid this function, and "
5095 "use the standard B<atexit>(3)  instead."
5096 msgstr ""
5097 "この関数は SunOS 4 由来であるが、libc4, libc5, glibc にも存在する。 Solaris "
5098 "(SunOS 5) にはもはや存在しない。 この関数の使用は避け、代わりに標準の "
5099 "B<atexit>(3)  を使うこと。"
5100
5101 #. type: Plain text
5102 #: build/C/man3/on_exit.3:92
5103 msgid "B<_exit>(2), B<atexit>(3), B<exit>(3)"
5104 msgstr "B<_exit>(2), B<atexit>(3), B<exit>(3)"
5105
5106 #. type: TH
5107 #: build/C/man3/putenv.3:36
5108 #, no-wrap
5109 msgid "PUTENV"
5110 msgstr "PUTENV"
5111
5112 #. type: TH
5113 #: build/C/man3/putenv.3:36 build/C/man3/random.3:33
5114 #: build/C/man3/random_r.3:26
5115 #, no-wrap
5116 msgid "2013-04-19"
5117 msgstr "2013-04-19"
5118
5119 #. type: Plain text
5120 #: build/C/man3/putenv.3:39
5121 msgid "putenv - change or add an environment variable"
5122 msgstr "putenv - 環境変数の変更または追加"
5123
5124 #.  Not: const char *
5125 #. type: Plain text
5126 #: build/C/man3/putenv.3:45
5127 #, no-wrap
5128 msgid "B<int putenv(char *>I<string>B<);>\n"
5129 msgstr "B<int putenv(char *>I<string>B<);>\n"
5130
5131 #. type: Plain text
5132 #: build/C/man3/putenv.3:54
5133 msgid "B<putenv>(): _SVID_SOURCE || _XOPEN_SOURCE"
5134 msgstr "B<putenv>(): _SVID_SOURCE || _XOPEN_SOURCE"
5135
5136 #. type: Plain text
5137 #: build/C/man3/putenv.3:67
5138 msgid ""
5139 "The B<putenv>()  function adds or changes the value of environment "
5140 "variables.  The argument I<string> is of the form I<name>=I<value>.  If "
5141 "I<name> does not already exist in the environment, then I<string> is added "
5142 "to the environment.  If I<name> does exist, then the value of I<name> in the "
5143 "environment is changed to I<value>.  The string pointed to by I<string> "
5144 "becomes part of the environment, so altering the string changes the "
5145 "environment."
5146 msgstr ""
5147 "B<putenv>()  関数は、環境変数の追加または値の変更を行う。 引数 I<string> は "
5148 "I<name>=I<value> という形式を取る。 I<name> が環境に存在しない場合は "
5149 "I<string> が環境に追加される。 I<name> が環境に存在する場合は I<name> の値は "
5150 "I<value> に変更される。 I<string> が指している文字列は環境の一部となるので、 "
5151 "文字列を変更すると環境も変更される。"
5152
5153 #. type: Plain text
5154 #: build/C/man3/putenv.3:75
5155 msgid ""
5156 "The B<putenv>()  function returns zero on success, or nonzero if an error "
5157 "occurs.  In the event of an error, I<errno> is set to indicate the cause."
5158 msgstr ""
5159 "B<putenv>() 関数は、成功すると 0 を返し、エラーの場合は 0 以外の値を返す。エ"
5160 "ラーが発生した場合、 I<errno> に原因を示す値が設定される。"
5161
5162 #. type: TP
5163 #: build/C/man3/putenv.3:76 build/C/man3/setenv.3:125
5164 #, no-wrap
5165 msgid "B<ENOMEM>"
5166 msgstr "B<ENOMEM>"
5167
5168 #. type: Plain text
5169 #: build/C/man3/putenv.3:79
5170 msgid "Insufficient space to allocate new environment."
5171 msgstr "新しい環境を割り当てるのに十分な空きがない。"
5172
5173 #. type: Plain text
5174 #: build/C/man3/putenv.3:81
5175 msgid "SVr4, POSIX.1-2001, 4.3BSD."
5176 msgstr "SVr4, POSIX.1-2001, 4.3BSD."
5177
5178 #. type: Plain text
5179 #: build/C/man3/putenv.3:86
5180 msgid ""
5181 "The B<putenv>()  function is not required to be reentrant, and the one in "
5182 "libc4, libc5 and glibc 2.0 is not, but the glibc 2.1 version is."
5183 msgstr ""
5184 "B<putenv>()  はリエントラントであることを求められていない。 libc4, libc5, "
5185 "glibc 2.0 ではリエントラントではない。 glibc 2.1 ではリエントラントである。"
5186
5187 #. type: Plain text
5188 #: build/C/man3/putenv.3:99
5189 msgid ""
5190 "Description for libc4, libc5, glibc: If the argument I<string> is of the "
5191 "form I<name>, and does not contain an \\(aq=\\(aq character, then the "
5192 "variable I<name> is removed from the environment.  If B<putenv>()  has to "
5193 "allocate a new array I<environ>, and the previous array was also allocated "
5194 "by B<putenv>(), then it will be freed.  In no case will the old storage "
5195 "associated to the environment variable itself be freed."
5196 msgstr ""
5197 "libc4, libc5, glibc に関する説明: もし引数 I<string> が I<name> 単独で、 "
5198 "\\(aq=\\(aq 文字を含んでいない場合、環境変数 I<name> は環境から除去される。 "
5199 "もし B<putenv>()  が新しい I<environ> 配列を確保しなければならない時、 以前"
5200 "の I<environ> 配列も B<putenv>()  によって確保されたものならば、 それは解放さ"
5201 "れる。 環境変数そのものに割り当てられた古い記憶領域が解放されることはない。"
5202
5203 #. type: Plain text
5204 #: build/C/man3/putenv.3:115
5205 msgid ""
5206 "The libc4 and libc5 and glibc 2.1.2 versions conform to SUSv2: the pointer "
5207 "I<string> given to B<putenv>()  is used.  In particular, this string becomes "
5208 "part of the environment; changing it later will change the environment.  "
5209 "(Thus, it is an error is to call B<putenv>()  with an automatic variable as "
5210 "the argument, then return from the calling function while I<string> is still "
5211 "part of the environment.)  However, glibc 2.0-2.1.1 differs: a copy of the "
5212 "string is used.  On the one hand this causes a memory leak, and on the other "
5213 "hand it violates SUSv2.  This has been fixed in glibc 2.1.2."
5214 msgstr ""
5215 "libc4 と libc5 と glibc 2.1.2 では SUSv2 に準拠している。 B<putenv>()  で与え"
5216 "られたポインタ I<string> が使われる。 この文字列は環境の一部となり、後で変更"
5217 "すると環境も変わる。 (従って、 B<putenv>()  を自動変数を引数として呼び出し、 "
5218 "I<string>が環境の一部のままで呼び出した関数から return するとエラーになる)  "
5219 "しかし、glibc 2.0-2.1.1 では異なり、文字列のコピーが使われる。 これはメモリ"
5220 "リークを引き起こすだけでなく、 SUSv2 に違反している。 これは glibc2.1.2 で修"
5221 "正された。"
5222
5223 #. type: Plain text
5224 #: build/C/man3/putenv.3:117
5225 msgid "The 4.4BSD version, like glibc 2.0, uses a copy."
5226 msgstr "4.4BSD バージョンでは、glibc 2.0 と同様にコピーを使う。"
5227
5228 #. type: Plain text
5229 #: build/C/man3/putenv.3:119
5230 msgid "SUSv2 removes the I<const> from the prototype, and so does glibc 2.1.3."
5231 msgstr ""
5232 "SUSv2 ではプロトタイプから I<const> が取り除かれており、 glibc 2.1.3 もそのよ"
5233 "うになっている。"
5234
5235 #. type: Plain text
5236 #: build/C/man3/putenv.3:125
5237 msgid ""
5238 "B<clearenv>(3), B<getenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
5239 msgstr ""
5240 "B<clearenv>(3), B<getenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
5241
5242 #. type: TH
5243 #: build/C/man3/qecvt.3:28
5244 #, no-wrap
5245 msgid "QECVT"
5246 msgstr "QECVT"
5247
5248 #. type: TH
5249 #: build/C/man3/qecvt.3:28
5250 #, fuzzy, no-wrap
5251 #| msgid "2003-11-28"
5252 msgid "2014-03-11"
5253 msgstr "2003-11-28"
5254
5255 #. type: Plain text
5256 #: build/C/man3/qecvt.3:31
5257 msgid "qecvt, qfcvt, qgcvt - convert a floating-point number to a string"
5258 msgstr "qecvt, qfcvt, qgcvt - 浮動小数点数の文字列への変換"
5259
5260 #. type: Plain text
5261 #: build/C/man3/qecvt.3:36
5262 msgid ""
5263 "B<char *qecvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
5264 "> B<int *>I<sign>B<);>"
5265 msgstr ""
5266 "B<char *qecvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
5267 "> B<int *>I<sign>B<);>"
5268
5269 #. type: Plain text
5270 #: build/C/man3/qecvt.3:39
5271 msgid ""
5272 "B<char *qfcvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
5273 "> B<int *>I<sign>B<);>"
5274 msgstr ""
5275 "B<char *qfcvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
5276 "> B<int *>I<sign>B<);>"
5277
5278 #. type: Plain text
5279 #: build/C/man3/qecvt.3:41
5280 msgid ""
5281 "B<char *qgcvt(long double >I<number>B<, int >I<ndigit>B<, char *>I<buf>B<);>"
5282 msgstr ""
5283 "B<char *qgcvt(long double >I<number>B<, int >I<ndigit>B<, char *>I<buf>B<);>"
5284
5285 #. type: Plain text
5286 #: build/C/man3/qecvt.3:52
5287 msgid "B<qecvt>(), B<qfcvt>(), B<qgcvt>(): _SVID_SOURCE"
5288 msgstr "B<qecvt>(), B<qfcvt>(), B<qgcvt>(): _SVID_SOURCE"
5289
5290 #. type: Plain text
5291 #: build/C/man3/qecvt.3:85
5292 msgid ""
5293 "The functions B<qecvt>(), B<qfcvt>()  and B<qgcvt>()  are identical to "
5294 "B<ecvt>(3), B<fcvt>(3)  and B<gcvt>(3)  respectively, except that they use a "
5295 "I<long double> argument I<number>.  See B<ecvt>(3)  and B<gcvt>(3)."
5296 msgstr ""
5297 "関数 B<qecvt>(), B<qfcvt>(), B<qgcvt>()  は、それぞれ B<ecvt>(3), B<fcvt>"
5298 "(3), B<gcvt>(3)  と同じである。 引き数 I<number> が I<long double> 型である点"
5299 "だけが異なる。"
5300
5301 #. type: Plain text
5302 #: build/C/man3/qecvt.3:92
5303 msgid "The B<qecvt>()  and B<qfcvt>()  functions are not thread-safe."
5304 msgstr "関数 B<qecvt>() と B<qfcvt>() はスレッドセーフではない。"
5305
5306 #. type: Plain text
5307 #: build/C/man3/qecvt.3:96
5308 msgid "The B<qgcvt>()  function is thread-safe."
5309 msgstr "関数 B<qgcvt>() はスレッドセーフである。"
5310
5311 #. type: Plain text
5312 #: build/C/man3/qecvt.3:102
5313 msgid ""
5314 "SVr4.  Not seen in most common UNIX implementations, but occurs in SunOS.  "
5315 "Not supported by libc4 and libc5.  Supported by glibc."
5316 msgstr ""
5317 "SVr4.  多くの一般的な UNIX には実装されていないが、SunOS には実装されてい"
5318 "る。 libc4 と libc5 ではサポートされていないが、 glibc ではサポートされてい"
5319 "る。"
5320
5321 #. type: Plain text
5322 #: build/C/man3/qecvt.3:107
5323 #, fuzzy
5324 #| msgid ""
5325 #| "These functions are obsolete.  Instead, B<sprintf>(3)  is recommended."
5326 msgid "These functions are obsolete.  Instead, B<snprintf>(3)  is recommended."
5327 msgstr "これらの関数は廃止された。代わりに B<sprintf>(3)  の使用を推奨する。"
5328
5329 #. type: Plain text
5330 #: build/C/man3/qecvt.3:112
5331 msgid "B<ecvt>(3), B<ecvt_r>(3), B<gcvt>(3), B<sprintf>(3)"
5332 msgstr "B<ecvt>(3), B<ecvt_r>(3), B<gcvt>(3), B<sprintf>(3)"
5333
5334 #. type: TH
5335 #: build/C/man3/rand.3:41
5336 #, no-wrap
5337 msgid "RAND"
5338 msgstr "RAND"
5339
5340 #. type: TH
5341 #: build/C/man3/rand.3:41
5342 #, no-wrap
5343 msgid "2014-01-18"
5344 msgstr ""
5345
5346 #. type: Plain text
5347 #: build/C/man3/rand.3:44
5348 msgid "rand, rand_r, srand - pseudo-random number generator"
5349 msgstr "rand, srand - 乱数を生成する関数"
5350
5351 #. type: Plain text
5352 #: build/C/man3/rand.3:49
5353 #, no-wrap
5354 msgid "B<int rand(void);>\n"
5355 msgstr "B<int rand(void);>\n"
5356
5357 #. type: Plain text
5358 #: build/C/man3/rand.3:51
5359 #, no-wrap
5360 msgid "B<int rand_r(unsigned int *>I<seedp>B<);>\n"
5361 msgstr "B<int rand_r(unsigned int *>I<seedp>B<);>\n"
5362
5363 #. type: Plain text
5364 #: build/C/man3/rand.3:53
5365 #, no-wrap
5366 msgid "B<void srand(unsigned int >I<seed>B<);>\n"
5367 msgstr "B<void srand(unsigned int >I<seed>B<);>\n"
5368
5369 #. type: Plain text
5370 #: build/C/man3/rand.3:62
5371 msgid ""
5372 "B<rand_r>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
5373 msgstr ""
5374 "B<rand_r>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
5375
5376 #. type: Plain text
5377 #: build/C/man3/rand.3:68
5378 msgid ""
5379 "The B<rand>()  function returns a pseudo-random integer in the range 0 to "
5380 "B<RAND_MAX> inclusive (i.e., the mathematical range [0,\\ B<RAND_MAX>])."
5381 msgstr ""
5382 "B<rand>() 関数は 0 以上 B<RAND_MAX> 以下\n"
5383 "(数学的に書くと [0,\\ B<RAND_MAX>]) の範囲の疑似乱数整数を返す。"
5384
5385 #. type: Plain text
5386 #: build/C/man3/rand.3:77
5387 msgid ""
5388 "The B<srand>()  function sets its argument as the seed for a new sequence of "
5389 "pseudo-random integers to be returned by B<rand>().  These sequences are "
5390 "repeatable by calling B<srand>()  with the same seed value."
5391 msgstr ""
5392 "B<srand>()  関数は、 B<rand>()  関数で作られる疑似乱数整数系列の新しい種とし"
5393 "て、 その引き数の値を使用する。 これらの関数を使用して作られた疑似乱数系列"
5394 "は、 同じ値を引き数として B<srand>()  を呼ぶことで、 再現することが可能であ"
5395 "る。"
5396
5397 #. type: Plain text
5398 #: build/C/man3/rand.3:81
5399 msgid ""
5400 "If no seed value is provided, the B<rand>()  function is automatically "
5401 "seeded with a value of 1."
5402 msgstr ""
5403 "種の値が与えられない場合には、 B<rand>()  関数は 自動的に 1 を種とする。"
5404
5405 #. type: Plain text
5406 #: build/C/man3/rand.3:92
5407 msgid ""
5408 "The function B<rand>()  is not reentrant or thread-safe, since it uses "
5409 "hidden state that is modified on each call.  This might just be the seed "
5410 "value to be used by the next call, or it might be something more elaborate.  "
5411 "In order to get reproducible behavior in a threaded application, this state "
5412 "must be made explicit; this can be done using the reentrant function "
5413 "B<rand_r>()."
5414 msgstr ""
5415 "B<rand>() 関数は再入可能 (reentrant) ではない、つまりスレッド・セーフではな"
5416 "い。\n"
5417 "この関数には隠し状態があり、呼び出される度にこの隠し状態が変更されるからであ"
5418 "る。\n"
5419 "ちょうどこの隠し状態が次の呼び出し時の乱数の種として使われるようなものであ"
5420 "る。\n"
5421 "実際にはもう少し複雑かもしれないが。\n"
5422 "スレッドを使用するアプリケーションで再現可能な動作をさせたい場合には、\n"
5423 "この状態を明示的に指定できなければならない。これを行うには、\n"
5424 "再入可能な B<rand_r>() 関数を使用する。"
5425
5426 #. type: Plain text
5427 #: build/C/man3/rand.3:108
5428 msgid ""
5429 "Like B<rand>(), B<rand_r>()  returns a pseudo-random integer in the range [0,"
5430 "\\ B<RAND_MAX>].  The I<seedp> argument is a pointer to an I<unsigned int> "
5431 "that is used to store state between calls.  If B<rand_r>()  is called with "
5432 "the same initial value for the integer pointed to by I<seedp>, and that "
5433 "value is not modified between calls, then the same pseudo-random sequence "
5434 "will result."
5435 msgstr ""
5436 "B<rand>() と同様、 B<rand_r>() は [0,\\ B<RAND_MAX>] の範囲の疑似乱数整数を返"
5437 "す。\n"
5438 "I<seedp> 引き数は、B<rand_r>() の呼び出し間で状態を保持するために使用される\n"
5439 "I<unsigned int> へのポインタである。\n"
5440 "I<seedp> が指す整数に同じ初期値を B<rand_r>() を呼び出し、\n"
5441 "呼び出し間でその値が変更されなければ、同じ疑似乱数系列が得られる。"
5442
5443 #. type: Plain text
5444 #: build/C/man3/rand.3:118
5445 msgid ""
5446 "The value pointed to by the I<seedp> argument of B<rand_r>()  provides only "
5447 "a very small amount of state, so this function will be a weak pseudo-random "
5448 "generator.  Try B<drand48_r>(3)  instead."
5449 msgstr ""
5450 "B<rand_r>() の I<seedp> 引き数が指す値により提供される状態は非常に小さな空"
5451 "間\n"
5452 "なので、この関数は弱い疑似乱数生成器になってしまう。\n"
5453 "代わりに B<drand48_r>(3) を使ってみるとよい。"
5454
5455 #. type: Plain text
5456 #: build/C/man3/rand.3:129
5457 msgid ""
5458 "The B<rand>()  and B<rand_r>()  functions return a value between 0 and "
5459 "B<RAND_MAX> (inclusive).  The B<srand>()  function returns no value."
5460 msgstr ""
5461 "関数 B<rand>() と B<rand_r>() は 0 以上 B<RAND_MAX> 以下の数を返す。\n"
5462 "関数 B<srand>() は値を返さない。"
5463
5464 #. type: Plain text
5465 #: build/C/man3/rand.3:141
5466 msgid ""
5467 "The functions B<rand>()  and B<srand>()  conform to SVr4, 4.3BSD, C89, C99, "
5468 "POSIX.1-2001.  The function B<rand_r>()  is from POSIX.1-2001.  POSIX.1-2008 "
5469 "marks B<rand_r>()  as obsolete."
5470 msgstr ""
5471 "関数 B<rand>()  と B<srand>()  は SVr4, 4.3BSD, C89, C99, POSIX.1-2001 に準拠"
5472 "している。 関数 B<rand_r>()  は POSIX.1-2001 に由来する。 POSIX.1-2008 は、 "
5473 "B<rand_r>()  を廃止予定としている。"
5474
5475 #. type: Plain text
5476 #: build/C/man3/rand.3:160
5477 msgid ""
5478 "The versions of B<rand>()  and B<srand>()  in the Linux C Library use the "
5479 "same random number generator as B<random>(3)  and B<srandom>(3), so the "
5480 "lower-order bits should be as random as the higher-order bits.  However, on "
5481 "older B<rand>()  implementations, and on current implementations on "
5482 "different systems, the lower-order bits are much less random than the higher-"
5483 "order bits.  Do not use this function in applications intended to be "
5484 "portable when good randomness is needed.  (Use B<random>(3)  instead.)"
5485 msgstr ""
5486 "B<rand>()  と B<srand>()  の Linux C Library 版は、 B<random>(3)  と "
5487 "B<srandom>(3)  の両関数と同じ乱数生成 アルゴリズムを使用している。そのため、"
5488 "下位のビットは上位のビットと 同じくらいにランダムである。 しかし、旧版の "
5489 "B<rand>()  の実装や、他のシステムの現在の実装では、下位のビットが上位のビット"
5490 "ほど ランダムになっていない。移植性を高める場合でも、精度の高い乱数が必要な "
5491 "アプリケーションではこの関数は使用してはいけない (代わりに B<random>(3)  を使"
5492 "うこと)。"
5493
5494 #. type: Plain text
5495 #: build/C/man3/rand.3:166
5496 msgid ""
5497 "POSIX.1-2001 gives the following example of an implementation of B<rand>()  "
5498 "and B<srand>(), possibly useful when one needs the same sequence on two "
5499 "different machines."
5500 msgstr ""
5501 "POSIX 1003.1-2003 では、 B<rand>()  と B<srand>()  の実装例として以下を挙げて"
5502 "いる。これは、異なる2つのマシンで同じ乱数系列が 必要な場合には便利であろう。"
5503
5504 #. type: Plain text
5505 #: build/C/man3/rand.3:170
5506 #, no-wrap
5507 msgid "static unsigned long next = 1;\n"
5508 msgstr "static unsigned long next = 1;\n"
5509
5510 #. type: Plain text
5511 #: build/C/man3/rand.3:176
5512 #, no-wrap
5513 msgid ""
5514 "/* RAND_MAX assumed to be 32767 */\n"
5515 "int myrand(void) {\n"
5516 "    next = next * 1103515245 + 12345;\n"
5517 "    return((unsigned)(next/65536) % 32768);\n"
5518 "}\n"
5519 msgstr ""
5520 "/* RAND_MAX を 32767 と仮定 */\n"
5521 "int myrand(void) {\n"
5522 "    next = next * 1103515245 + 12345;\n"
5523 "    return((unsigned)(next/65536) % 32768);\n"
5524 "}\n"
5525
5526 #. type: Plain text
5527 #: build/C/man3/rand.3:180
5528 #, fuzzy, no-wrap
5529 #| msgid ""
5530 #| "void mysrand(unsigned seed) {\n"
5531 #| "    next = seed;\n"
5532 #| "}\n"
5533 msgid ""
5534 "void mysrand(unsigned int seed) {\n"
5535 "    next = seed;\n"
5536 "}\n"
5537 msgstr ""
5538 "void mysrand(unsigned seed) {\n"
5539 "    next = seed;\n"
5540 "}\n"
5541
5542 #. type: Plain text
5543 #: build/C/man3/rand.3:187
5544 msgid ""
5545 "The following program can be used to display the pseudo-random sequence "
5546 "produced by B<rand>()  when given a particular seed."
5547 msgstr ""
5548 "以下のプログラムを使うと、特定の乱数の種が与えられた場合に\n"
5549 "B<rand>() が生成する疑似乱数系列を表示することができる。"
5550
5551 #. type: Plain text
5552 #: build/C/man3/rand.3:192
5553 #, no-wrap
5554 msgid ""
5555 "#include E<lt>stdlib.hE<gt>\n"
5556 "#include E<lt>stdio.hE<gt>\n"
5557 msgstr ""
5558 "#include E<lt>stdlib.hE<gt>\n"
5559 "#include E<lt>stdio.hE<gt>\n"
5560
5561 #. type: Plain text
5562 #: build/C/man3/rand.3:198
5563 #, no-wrap
5564 msgid ""
5565 "int\n"
5566 "main(int argc, char *argv[])\n"
5567 "{\n"
5568 "    int j, r, nloops;\n"
5569 "    unsigned int seed;\n"
5570 msgstr ""
5571 "int\n"
5572 "main(int argc, char *argv[])\n"
5573 "{\n"
5574 "    int j, r, nloops;\n"
5575 "    unsigned int seed;\n"
5576
5577 #. type: Plain text
5578 #: build/C/man3/rand.3:203
5579 #, no-wrap
5580 msgid ""
5581 "    if (argc != 3) {\n"
5582 "        fprintf(stderr, \"Usage: %s E<lt>seedE<gt> E<lt>nloopsE<gt>\\en\", argv[0]);\n"
5583 "        exit(EXIT_FAILURE);\n"
5584 "    }\n"
5585 msgstr ""
5586 "    if (argc != 3) {\n"
5587 "        fprintf(stderr, \"Usage: %s E<lt>seedE<gt> E<lt>nloopsE<gt>\\en\", argv[0]);\n"
5588 "        exit(EXIT_FAILURE);\n"
5589 "    }\n"
5590
5591 #. type: Plain text
5592 #: build/C/man3/rand.3:206
5593 #, no-wrap
5594 msgid ""
5595 "    seed = atoi(argv[1]);\n"
5596 "    nloops = atoi(argv[2]);\n"
5597 msgstr ""
5598 "    seed = atoi(argv[1]);\n"
5599 "    nloops = atoi(argv[2]);\n"
5600
5601 #. type: Plain text
5602 #: build/C/man3/rand.3:212
5603 #, no-wrap
5604 msgid ""
5605 "    srand(seed);\n"
5606 "    for (j = 0; j E<lt> nloops; j++) {\n"
5607 "        r =  rand();\n"
5608 "        printf(\"%d\\en\", r);\n"
5609 "    }\n"
5610 msgstr ""
5611 "    srand(seed);\n"
5612 "    for (j = 0; j E<lt> nloops; j++) {\n"
5613 "        r =  rand();\n"
5614 "        printf(\"%d\\en\", r);\n"
5615 "    }\n"
5616
5617 #. type: Plain text
5618 #: build/C/man3/rand.3:220
5619 msgid "B<drand48>(3), B<random>(3)"
5620 msgstr "B<drand48>(3), B<random>(3)"
5621
5622 #. type: TH
5623 #: build/C/man3/random.3:33
5624 #, no-wrap
5625 msgid "RANDOM"
5626 msgstr "RANDOM"
5627
5628 #. type: Plain text
5629 #: build/C/man3/random.3:36
5630 msgid "random, srandom, initstate, setstate - random number generator"
5631 msgstr "random, srandom, initstate, setstate - 乱数を生成する関数"
5632
5633 #. type: Plain text
5634 #: build/C/man3/random.3:41
5635 #, no-wrap
5636 msgid "B<long int random(void);>\n"
5637 msgstr "B<long int random(void);>\n"
5638
5639 #. type: Plain text
5640 #: build/C/man3/random.3:43
5641 #, no-wrap
5642 msgid "B<void srandom(unsigned int >I<seed>B<);>\n"
5643 msgstr "B<void srandom(unsigned int >I<seed>B<);>\n"
5644
5645 #. type: Plain text
5646 #: build/C/man3/random.3:45
5647 #, no-wrap
5648 msgid "B<char *initstate(unsigned int >I<seed>B<, char *>I<state>B<, size_t >I<n>B<);>\n"
5649 msgstr "B<char *initstate(unsigned int >I<seed>B<, char *>I<state>B<, size_t >I<n>B<);>\n"
5650
5651 #. type: Plain text
5652 #: build/C/man3/random.3:47
5653 #, no-wrap
5654 msgid "B<char *setstate(char *>I<state>B<);>\n"
5655 msgstr "B<char *setstate(char *>I<state>B<);>\n"
5656
5657 #. type: Plain text
5658 #: build/C/man3/random.3:59
5659 msgid "B<random>(), B<srandom>(), B<initstate>(), B<setstate>():"
5660 msgstr "B<random>(), B<srandom>(), B<initstate>(), B<setstate>():"
5661
5662 #. type: Plain text
5663 #: build/C/man3/random.3:62
5664 msgid ""
5665 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
5666 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
5667 msgstr ""
5668 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
5669 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
5670
5671 #. type: Plain text
5672 #: build/C/man3/random.3:73
5673 msgid ""
5674 "The B<random>()  function uses a nonlinear additive feedback random number "
5675 "generator employing a default table of size 31 long integers to return "
5676 "successive pseudo-random numbers in the range from 0 to B<RAND_MAX>.  The "
5677 "period of this random number generator is very large, approximately I<16\\ *"
5678 "\\ ((2^31)\\ -\\ 1)>."
5679 msgstr ""
5680 "B<random>()  関数は、非線形加法フィードバックを用いた乱数生成関数である。 こ"
5681 "の関数は、0 から B<RAND_MAX> までの疑似乱数を返す。 そのために 31 個のロング"
5682 "整数からなるデフォルトの表を使用する。 この乱数を生成する関数の周期はとても長"
5683 "く、およそ I<16\\ *\\ ((2^31)\\ -\\ 1)> である。"
5684
5685 #. type: Plain text
5686 #: build/C/man3/random.3:87
5687 msgid ""
5688 "The B<srandom>()  function sets its argument as the seed for a new sequence "
5689 "of pseudo-random integers to be returned by B<random>().  These sequences "
5690 "are repeatable by calling B<srandom>()  with the same seed value.  If no "
5691 "seed value is provided, the B<random>()  function is automatically seeded "
5692 "with a value of 1."
5693 msgstr ""
5694 "B<srandom>()  関数は、 B<random>()  で返される疑似乱数整数系列の種を設定す"
5695 "る。 そのためには新しい種を引数にして B<srandom>()  を呼べばよい。 B<random>"
5696 "()  で生成される系列は、 引数に同じ種の値を用いて B<srandom>()  を呼ぶことで"
5697 "再現可能である。 種の値が与えられない場合には B<random>()  関数は、自動的に "
5698 "1 を種に設定する。"
5699
5700 #. type: Plain text
5701 #: build/C/man3/random.3:102
5702 msgid ""
5703 "The B<initstate>()  function allows a state array I<state> to be initialized "
5704 "for use by B<random>().  The size of the state array I<n> is used by "
5705 "B<initstate>()  to decide how sophisticated a random number generator it "
5706 "should use\\(emthe larger the state array, the better the random numbers "
5707 "will be.  I<seed> is the seed for the initialization, which specifies a "
5708 "starting point for the random number sequence, and provides for restarting "
5709 "at the same point."
5710 msgstr ""
5711 "B<initstate>()  関数は、 B<random>()  で使用される状態配列 I<state> を初期化"
5712 "する。 B<initstate>()  では、状態配列の大きさ I<n> は 使用する関数の乱数生成"
5713 "の性能の程度を決定するために使用される \\(em 状態配列が大きい程、乱数の性能は"
5714 "よくなる。 I<seed> は初期化のための種である。 これは乱数系列の開始位置を決定"
5715 "するものであり、 この値を指定することで同一の開始位置から乱数の生成を 再開す"
5716 "ることができる。"
5717
5718 #. type: Plain text
5719 #: build/C/man3/random.3:118
5720 msgid ""
5721 "The B<setstate>()  function changes the state array used by the B<random>()  "
5722 "function.  The state array I<state> is used for random number generation "
5723 "until the next call to B<initstate>()  or B<setstate>().  I<state> must "
5724 "first have been initialized using B<initstate>()  or be the result of a "
5725 "previous call of B<setstate>()."
5726 msgstr ""
5727 "B<setstate>()  関数は、 B<random>()  で使用される状態配列を変更する。 状態配"
5728 "列 I<state> は、 B<initstate>()  または B<setstate>()  が 次に呼び出されるま"
5729 "で、乱数の生成に使用される。 I<state> は B<initstate>()  を用いて最初に初期化"
5730 "されているか、 以前に呼び出した B<setstate>()  の結果でなければならない。"
5731
5732 #. type: Plain text
5733 #: build/C/man3/random.3:126
5734 msgid ""
5735 "The B<random>()  function returns a value between 0 and B<RAND_MAX>.  The "
5736 "B<srandom>()  function returns no value."
5737 msgstr ""
5738 "関数 B<random>() と B<rand_r>() は 0 以上 B<RAND_MAX> 以下の数を返す。\n"
5739 "関数 B<srandom>() は値を返さない。"
5740
5741 #. type: Plain text
5742 #: build/C/man3/random.3:133
5743 msgid ""
5744 "The B<initstate>()  function returns a pointer to the previous state array.  "
5745 "On error, I<errno> is set to indicate the cause."
5746 msgstr ""
5747 "関数 B<initstate>() は、変更前の状態配列へのポインタを返す。エラーの場合、 "
5748 "I<errno> に原因を示す値が設定される。"
5749
5750 #. type: Plain text
5751 #: build/C/man3/random.3:140
5752 msgid ""
5753 "On success, B<setstate>()  returns a pointer to the previous state array.  "
5754 "On error, it returns NULL, with I<errno> set to indicate the cause of the "
5755 "error."
5756 msgstr ""
5757 "関数 B<setstate>() は、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
5758 "I<errno> にエラーの原因を示す値が設定される。"
5759
5760 #. type: Plain text
5761 #: build/C/man3/random.3:148
5762 msgid "The I<state> argument given to B<setstate>()  was NULL."
5763 msgstr "B<setstate>() の引き数 I<state> が NULL であった。"
5764
5765 #. type: Plain text
5766 #: build/C/man3/random.3:152
5767 msgid "A state array of less than 8 bytes was specified to B<initstate>()."
5768 msgstr "B<initstate>()  で8バイトよりも小さい状態配列を指定した。"
5769
5770 #. type: Plain text
5771 #: build/C/man3/random.3:154 build/C/man3/setenv.3:130
5772 msgid "4.3BSD, POSIX.1-2001."
5773 msgstr "4.3BSD, POSIX.1-2001."
5774
5775 #. type: Plain text
5776 #: build/C/man3/random.3:160
5777 msgid ""
5778 "Current \"optimal\" values for the size of the state array I<n> are 8, 32, "
5779 "64, 128, and 256 bytes; other amounts will be rounded down to the nearest "
5780 "known amount.  Using less than 8 bytes will cause an error."
5781 msgstr ""
5782 "状態配列 I<n> の大きさの現在の「最適」値は 8、32、64、128、256 バイトであ"
5783 "る。 その他の量を指定した場合には、指定した量を越えない上述の値に 最も近い値"
5784 "になる。 8 バイト未満の量を指定した場合にはエラーの原因となる。"
5785
5786 #. type: Plain text
5787 #: build/C/man3/random.3:167
5788 msgid ""
5789 "This function should not be used in cases where multiple threads use "
5790 "B<random>()  and the behavior should be reproducible.  Use B<random_r>(3)  "
5791 "for that purpose."
5792 msgstr ""
5793 "複数のスレッドが B<random>()  を使うような状況では、この関数を使用すべきでは"
5794 "ない。 その場合には B<random_r>(3)  を使うこと。"
5795
5796 #. type: Plain text
5797 #: build/C/man3/random.3:174
5798 msgid ""
5799 "Random-number generation is a complex topic.  I<Numerical Recipes in C: The "
5800 "Art of Scientific Computing> (William H. Press, Brian P. Flannery, Saul A. "
5801 "Teukolsky, William T. Vetterling; New York: Cambridge University Press, "
5802 "2007, 3rd ed.)  provides an excellent discussion of practical random-number "
5803 "generation issues in Chapter 7 (Random Numbers)."
5804 msgstr ""
5805 "乱数の生成は複雑な話題である。 I<Numerical Recipes in C: The Art of "
5806 "Scientific Computing> (William H. Press, Brian P. Flannery, Saul A. "
5807 "Teukolsky, William T. Vetterling; New York: Cambridge University Press, "
5808 "2007, 3rd ed.)  では実用的な乱数生成を論点とした優れた議論が第 7 章 (乱数) で"
5809 "展開されている。"
5810
5811 #. type: Plain text
5812 #: build/C/man3/random.3:180
5813 msgid ""
5814 "For a more theoretical discussion which also covers many practical issues in "
5815 "depth, see Chapter 3 (Random Numbers) in Donald E. Knuth's I<The Art of "
5816 "Computer Programming>, volume 2 (Seminumerical Algorithms), 2nd ed.; "
5817 "Reading, Massachusetts: Addison-Wesley Publishing Company, 1981."
5818 msgstr ""
5819 "より理論的な議論については Donald E. Knuth の I<The Art of Computer "
5820 "Programming>, volume 2 (Seminumerical Algorithms), 2nd ed.; Reading, "
5821 "Massachusetts: Addison-Wesley Publishing Company, 1981 の第 3 章 (乱数) を見"
5822 "よ。ここでは、 たくさんの実用的な話題についても深く網羅されている。"
5823
5824 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=15380
5825 #. type: Plain text
5826 #: build/C/man3/random.3:188
5827 msgid ""
5828 "According to POSIX, B<initstate>()  should return NULL on error.  In the "
5829 "glibc implementation, I<errno> is (as specified) set on error, but the "
5830 "function does not return NULL."
5831 msgstr ""
5832 "POSIX では、エラー時に B<initstate>() は NULL を返すべきとされている。 glibc "
5833 "の実装では、エラー時に I<errno> は仕様通りに設定されるが、関数の返り値は "
5834 "NULL ではない。"
5835
5836 #. type: Plain text
5837 #: build/C/man3/random.3:193
5838 msgid "B<drand48>(3), B<rand>(3), B<random_r>(3), B<srand>(3)"
5839 msgstr "B<drand48>(3), B<rand>(3), B<random_r>(3), B<srand>(3)"
5840
5841 #. type: TH
5842 #: build/C/man3/random_r.3:26
5843 #, no-wrap
5844 msgid "RANDOM_R"
5845 msgstr "RANDOM_R"
5846
5847 #. type: Plain text
5848 #: build/C/man3/random_r.3:30
5849 msgid ""
5850 "random_r, srandom_r, initstate_r, setstate_r - reentrant random number "
5851 "generator"
5852 msgstr ""
5853 "random_r, srandom_r, initstate_r, setstate_r - リエントラントな 乱数生成器"
5854
5855 #. type: Plain text
5856 #: build/C/man3/random_r.3:35
5857 #, no-wrap
5858 msgid "B<int random_r(struct random_data *>I<buf>B<, int32_t *>I<result>B<);>\n"
5859 msgstr "B<int random_r(struct random_data *>I<buf>B<, int32_t *>I<result>B<);>\n"
5860
5861 #. type: Plain text
5862 #: build/C/man3/random_r.3:37
5863 #, no-wrap
5864 msgid "B<int srandom_r(unsigned int >I<seed>B<, struct random_data *>I<buf>B<);>\n"
5865 msgstr "B<int srandom_r(unsigned int >I<seed>B<, struct random_data *>I<buf>B<);>\n"
5866
5867 #. type: Plain text
5868 #: build/C/man3/random_r.3:40
5869 #, no-wrap
5870 msgid ""
5871 "B<int initstate_r(unsigned int >I<seed>B<, char *>I<statebuf>B<,>\n"
5872 "B<                size_t >I<statelen>B<, struct random_data *>I<buf>B<);>\n"
5873 msgstr ""
5874 "B<int initstate_r(unsigned int >I<seed>B<, char *>I<statebuf>B<,>\n"
5875 "B<                size_t >I<statelen>B<, struct random_data *>I<buf>B<);>\n"
5876
5877 #. type: Plain text
5878 #: build/C/man3/random_r.3:42
5879 #, no-wrap
5880 msgid "B<int setstate_r(char *>I<statebuf>B<, struct random_data *>I<buf>B<);>\n"
5881 msgstr "B<int setstate_r(char *>I<statebuf>B<, struct random_data *>I<buf>B<);>\n"
5882
5883 #. type: Plain text
5884 #: build/C/man3/random_r.3:54
5885 msgid "B<random_r>(), B<srandom_r>(), B<initstate_r>(), B<setstate_r>():"
5886 msgstr "B<random_r>(), B<srandom_r>(), B<initstate_r>(), B<setstate_r>():"
5887
5888 #. type: Plain text
5889 #: build/C/man3/random_r.3:56
5890 msgid "_SVID_SOURCE || _BSD_SOURCE"
5891 msgstr "_SVID_SOURCE || _BSD_SOURCE"
5892
5893 #. type: Plain text
5894 #: build/C/man3/random_r.3:64
5895 msgid ""
5896 "These functions are the reentrant equivalents of the functions described in "
5897 "B<random>(3).  They are suitable for use in multithreaded programs where "
5898 "each thread needs to obtain an independent, reproducible sequence of random "
5899 "numbers."
5900 msgstr ""
5901 "これらの関数は、 B<random>(3)  で説明されている関数のリエントラント版で、等価"
5902 "な機能を持つ。 これらは、独立した再現可能な乱数列を各スレッドが得る必要がある"
5903 "ような マルチスレッド・プログラムでの使用に適している。"
5904
5905 #. type: Plain text
5906 #: build/C/man3/random_r.3:75
5907 msgid ""
5908 "The B<random_r>()  function is like B<random>(3), except that instead of "
5909 "using state information maintained in a global variable, it uses the state "
5910 "information in the argument pointed to by I<buf>.  The generated random "
5911 "number is returned in the argument I<result>."
5912 msgstr ""
5913 "B<random_r>()  関数は B<random>(3)  と同様だが、 大域変数 (global variable) "
5914 "で管理される状態情報を使うのではなく、 I<buf> が指す引き数に格納された状態情"
5915 "報を使う。 生成された乱数は引き数 I<result> に格納されて返される。"
5916
5917 #. type: Plain text
5918 #: build/C/man3/random_r.3:84
5919 msgid ""
5920 "The B<srandom_r>()  function is like B<srandom>(3), except that it "
5921 "initializes the seed for the random number generator whose state is "
5922 "maintained in the object pointed to by I<buf>, instead of the seed "
5923 "associated with the global state variable."
5924 msgstr ""
5925 "B<srandom_r>()  関数は B<srandom>(3)  と同様だが、 大域変数で管理される状態に"
5926 "対応する乱数生成器の種ではなく、 I<buf> が指すオブジェクトで管理される状態に"
5927 "対応する乱数生成器の種を 初期化する。"
5928
5929 #. type: Plain text
5930 #: build/C/man3/random_r.3:92
5931 msgid ""
5932 "The B<initstate_r>()  function is like B<initstate>(3)  except that it "
5933 "initializes the state in the object pointed to by I<buf>, rather than "
5934 "initializing the global state variable."
5935 msgstr ""
5936 "B<initstate_r>()  関数は B<initstate>(3)  と同様だが、大域変数で管理される状"
5937 "態を初期化するのではなく、 I<buf> が指すオブジェクト内の状態を初期化する。"
5938
5939 #. type: Plain text
5940 #: build/C/man3/random_r.3:100
5941 msgid ""
5942 "The B<setstate_r>()  function is like B<setstate>(3)  except that it "
5943 "modifies the state in the object pointer to by I<buf>, rather than modifying "
5944 "the global state variable."
5945 msgstr ""
5946 "B<setstate_r>()  関数は B<setstate>(3)  と同様だが、大域変数で管理される状態"
5947 "を変更するのではなく、 I<buf> が指すオブジェクト内の状態を変更する。"
5948
5949 #. type: Plain text
5950 #: build/C/man3/random_r.3:105
5951 msgid ""
5952 "All of these functions return 0 on success.  On error, -1 is returned, with "
5953 "I<errno> set to indicate the cause of the error."
5954 msgstr ""
5955 "これらの関数はすべて、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
5956 "I<errno> にエラーの原因を示す値がセットされる。"
5957
5958 #. type: Plain text
5959 #: build/C/man3/random_r.3:110
5960 msgid "A state array of less than 8 bytes was specified to B<initstate_r>()."
5961 msgstr "8 バイトより小さい状態配列が B<initstate_r>()  に指定された。"
5962
5963 #. type: Plain text
5964 #: build/C/man3/random_r.3:119
5965 msgid "The I<statebuf> or I<buf> argument to B<setstate_r>()  was NULL."
5966 msgstr "B<setstate_r>()  の引き数 I<statebuf> か I<buf> が NULL であった。"
5967
5968 #. type: Plain text
5969 #: build/C/man3/random_r.3:128
5970 msgid "The I<buf> or I<result> argument to B<random_r>()  was NULL."
5971 msgstr "B<random_r>()  の引き数 I<buf> か I<result> が NULL であった。"
5972
5973 #.  These functions appear to be on Tru64, but don't seem to be on
5974 #.  Solaris, HP-UX, or FreeBSD.
5975 #. type: Plain text
5976 #: build/C/man3/random_r.3:132
5977 msgid "These functions are nonstandard glibc extensions."
5978 msgstr "これらの関数は非標準で glibc による拡張である。"
5979
5980 #. type: TH
5981 #: build/C/man3/rpmatch.3:29
5982 #, no-wrap
5983 msgid "RPMATCH"
5984 msgstr "RPMATCH"
5985
5986 #. type: Plain text
5987 #: build/C/man3/rpmatch.3:32
5988 msgid ""
5989 "rpmatch - determine if the answer to a question is affirmative or negative"
5990 msgstr "rpmatch - 質問への応答が肯定か否定かを判定する"
5991
5992 #. type: Plain text
5993 #: build/C/man3/rpmatch.3:37
5994 #, no-wrap
5995 msgid "B<int rpmatch(const char *>I<response>B<);>\n"
5996 msgstr "B<int rpmatch(const char *>I<response>B<);>\n"
5997
5998 #. type: Plain text
5999 #: build/C/man3/rpmatch.3:46
6000 msgid "B<rpmatch>(): _SVID_SOURCE"
6001 msgstr "B<rpmatch>(): _SVID_SOURCE"
6002
6003 #. type: Plain text
6004 #: build/C/man3/rpmatch.3:50
6005 msgid ""
6006 "B<rpmatch>()  handles a user response to yes or no questions, with support "
6007 "for internationalization."
6008 msgstr ""
6009 "B<rpmatch>()  は yes/no の質問に対するユーザからの応答を処理する。 国際化 "
6010 "(I18N) に対応している。"
6011
6012 #. type: Plain text
6013 #: build/C/man3/rpmatch.3:57
6014 msgid ""
6015 "I<response> should be a null-terminated string containing a user-supplied "
6016 "response, perhaps obtained with B<fgets>(3)  or B<getline>(3)."
6017 msgstr ""
6018 "I<response> にはユーザからの応答を格納した NULL 終端文字列が入っている必要が"
6019 "ある。 たいていは、 B<fgets>(3)  や B<getline>(3)  で取り込んだものであろう。"
6020
6021 #. type: Plain text
6022 #: build/C/man3/rpmatch.3:67
6023 msgid ""
6024 "The user's language preference is taken into account per the environment "
6025 "variables B<LANG>, B<LC_MESSAGES>, and B<LC_ALL>, if the program has called "
6026 "B<setlocale>(3)  to effect their changes."
6027 msgstr ""
6028 "プログラムが B<setlocale>(3)  を呼び出して環境変数の変更を有効にした場合、 環"
6029 "境変数 B<LANG>, B<LC_MESSAGES>, B<LC_ALL> が ユーザの言語設定として考慮され"
6030 "る。"
6031
6032 #. type: Plain text
6033 #: build/C/man3/rpmatch.3:73
6034 msgid ""
6035 "Regardless of the locale, responses matching B<^[Yy]> are always accepted as "
6036 "affirmative, and those matching B<^[Nn]> are always accepted as negative."
6037 msgstr ""
6038 "ロケールに関わらず、B<^[Yy]> にマッチする応答は常に肯定だと解釈され、 B<^[Nn]"
6039 "> にマッチする応答は常に否定だと解釈される。"
6040
6041 #. type: Plain text
6042 #: build/C/man3/rpmatch.3:82
6043 msgid ""
6044 "After examining I<response>, B<rpmatch>()  returns 0 for a recognized "
6045 "negative response (\"no\"), 1 for a recognized positive response (\"yes\"), "
6046 "and -1 when the value of I<response> is unrecognized."
6047 msgstr ""
6048 "I<response> を検査した後、 B<rpmatch>()  は否定的な応答 (\"no\") と認識した場"
6049 "合は 0 を返し、 肯定的な応答 (\"yes\") と認識した場合は 1 を返す。 "
6050 "I<response> の値を解釈できなかった場合は -1 を返す。"
6051
6052 #. type: Plain text
6053 #: build/C/man3/rpmatch.3:86
6054 msgid ""
6055 "A return value of -1 may indicate either an invalid input, or some other "
6056 "error.  It is incorrect to only test if the return value is nonzero."
6057 msgstr ""
6058 "返り値 -1 が返った場合、入力が不正であったか、他の何らかのエラーが あったこと"
6059 "を意味する。返り値が 0 以外かどうかを確認するだけでは 十分ではない。"
6060
6061 #. type: Plain text
6062 #: build/C/man3/rpmatch.3:99
6063 msgid ""
6064 "B<rpmatch>()  can fail for any of the reasons that B<regcomp>(3)  or "
6065 "B<regexec>(3)  can fail; the cause of the error is not available from "
6066 "I<errno> or anywhere else, but indicates a failure of the regex engine (but "
6067 "this case is indistinguishable from that of an unrecognized value of "
6068 "I<response>)."
6069 msgstr ""
6070 "B<rpmatch>()  は、 B<regcomp>(3)  や B<regexec>(3)  が失敗する理由のどれかで"
6071 "失敗することがある。 エラーの原因を I<errno> や他の何かで知ることはできない"
6072 "が、 I<errno> は正規表現エンジンの失敗の原因を示している (但し、このケースと "
6073 "I<response> の値を認識できずに失敗した場合を区別することはできない)。"
6074
6075 #.  It is available on at least AIX 5.1 and FreeBSD 6.0.
6076 #. type: Plain text
6077 #: build/C/man3/rpmatch.3:104
6078 msgid ""
6079 "B<rpmatch>()  is not required by any standard, but is available on a few "
6080 "other systems."
6081 msgstr ""
6082 "B<rpmatch>()  はどの標準でも必須となっていないが、 Linux 以外にも利用できるシ"
6083 "ステムもいくつかは存在する。"
6084
6085 #. type: Plain text
6086 #: build/C/man3/rpmatch.3:119
6087 msgid ""
6088 "The B<rpmatch>()  implementation looks at only the first character of "
6089 "I<response>.  As a consequence, \"nyes\" returns 0, and \"ynever; not in a "
6090 "million years\" returns 1.  It would be preferable to accept input strings "
6091 "much more strictly, for example (using the extended regular expression "
6092 "notation described in B<regex>(7)): B<^([yY]|yes|YES)$> and B<^([nN]|no|"
6093 "NO)$>."
6094 msgstr ""
6095 "B<rpmatch>()  の実装は I<response> の最初の 1 文字だけを見ているようである。"
6096 "その結果、 \"nyes\" は 0 を返し、 \"ynever; not in a million years\" は 1 を"
6097 "返すことになる。 入力文字列をもっと厳密に解釈した方がよいだろう。 例えば、 "
6098 "(B<regex>(7)  で説明されている拡張正規表現を使って)  B<^([yY]|yes|YES)$> や "
6099 "B<^([nN]|no|NO)$> で解釈するなど。"
6100
6101 #. type: Plain text
6102 #: build/C/man3/rpmatch.3:123
6103 msgid ""
6104 "The following program displays the results when B<rpmatch>()  is applied to "
6105 "the string given in the program's command-line argument."
6106 msgstr ""
6107 "以下のプログラムは、コマンドライン引き数で 指定された文字列を B<rpmatch>()  "
6108 "に渡した場合の結果を表示する。"
6109
6110 #. type: Plain text
6111 #: build/C/man3/rpmatch.3:130
6112 #, no-wrap
6113 msgid ""
6114 "#define _SVID_SOURCE\n"
6115 "#include E<lt>locale.hE<gt>\n"
6116 "#include E<lt>stdlib.hE<gt>\n"
6117 "#include E<lt>string.hE<gt>\n"
6118 "#include E<lt>stdio.hE<gt>\n"
6119 msgstr ""
6120 "#define _SVID_SOURCE\n"
6121 "#include E<lt>locale.hE<gt>\n"
6122 "#include E<lt>stdlib.hE<gt>\n"
6123 "#include E<lt>string.hE<gt>\n"
6124 "#include E<lt>stdio.hE<gt>\n"
6125
6126 #. type: Plain text
6127 #: build/C/man3/rpmatch.3:138
6128 #, no-wrap
6129 msgid ""
6130 "int\n"
6131 "main(int argc, char *argv[])\n"
6132 "{\n"
6133 "    if (argc != 2 || strcmp(argv[1], \"--help\") == 0) {\n"
6134 "        fprintf(stderr, \"%s response\\en\", argv[0]);\n"
6135 "        exit(EXIT_FAILURE);\n"
6136 "    }\n"
6137 msgstr ""
6138 "int\n"
6139 "main(int argc, char *argv[])\n"
6140 "{\n"
6141 "    if (argc != 2 || strcmp(argv[1], \"--help\") == 0) {\n"
6142 "        fprintf(stderr, \"%s response\\en\", argv[0]);\n"
6143 "        exit(EXIT_FAILURE);\n"
6144 "    }\n"
6145
6146 #. type: Plain text
6147 #: build/C/man3/rpmatch.3:143
6148 #, no-wrap
6149 msgid ""
6150 "    setlocale(LC_ALL, \"\");\n"
6151 "    printf(\"rpmatch() returns: %d\\en\", rpmatch(argv[1]));\n"
6152 "    exit(EXIT_SUCCESS);\n"
6153 "}\n"
6154 msgstr ""
6155 "    setlocale(LC_ALL, \"\");\n"
6156 "    printf(\"rpmatch() returns: %d\\en\", rpmatch(argv[1]));\n"
6157 "    exit(EXIT_SUCCESS);\n"
6158 "}\n"
6159
6160 #. type: Plain text
6161 #: build/C/man3/rpmatch.3:150
6162 msgid ""
6163 "B<fgets>(3), B<getline>(3), B<nl_langinfo>(3), B<regcomp>(3), B<setlocale>(3)"
6164 msgstr ""
6165 "B<fgets>(3), B<getline>(3), B<nl_langinfo>(3), B<regcomp>(3), B<setlocale>(3)"
6166
6167 #. type: TH
6168 #: build/C/man3/setenv.3:37
6169 #, no-wrap
6170 msgid "SETENV"
6171 msgstr "SETENV"
6172
6173 #. type: TH
6174 #: build/C/man3/setenv.3:37
6175 #, fuzzy, no-wrap
6176 #| msgid "2013-05-11"
6177 msgid "2013-10-11"
6178 msgstr "2013-05-11"
6179
6180 #. type: Plain text
6181 #: build/C/man3/setenv.3:40
6182 msgid "setenv - change or add an environment variable"
6183 msgstr "setenv - 環境変数を変更または追加する"
6184
6185 #. type: Plain text
6186 #: build/C/man3/setenv.3:45
6187 #, no-wrap
6188 msgid "B<int setenv(const char *>I<name>B<, const char *>I<value>B<, int >I<overwrite>B<);>\n"
6189 msgstr "B<int setenv(const char *>I<name>B<, const char *>I<value>B<, int >I<overwrite>B<);>\n"
6190
6191 #. type: Plain text
6192 #: build/C/man3/setenv.3:47
6193 #, no-wrap
6194 msgid "B<int unsetenv(const char *>I<name>B<);>\n"
6195 msgstr "B<int unsetenv(const char *>I<name>B<);>\n"
6196
6197 #. type: Plain text
6198 #: build/C/man3/setenv.3:57
6199 msgid "B<setenv>(), B<unsetenv>():"
6200 msgstr "B<setenv>(), B<unsetenv>():"
6201
6202 #. type: Plain text
6203 #: build/C/man3/setenv.3:59
6204 msgid ""
6205 "_BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>="
6206 "\\ 600"
6207 msgstr ""
6208 "_BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>="
6209 "\\ 600"
6210
6211 #. type: Plain text
6212 #: build/C/man3/setenv.3:94
6213 #, fuzzy
6214 #| msgid ""
6215 #| "The B<setenv>()  function adds the variable I<name> to the environment "
6216 #| "with the value I<value>, if I<name> does not already exist.  If I<name> "
6217 #| "does exist in the environment, then its value is changed to I<value> if "
6218 #| "I<overwrite> is nonzero; if I<overwrite> is zero, then the value of "
6219 #| "I<name> is not changed.  This function makes copies of the strings "
6220 #| "pointed to by I<name> and I<value> (by contrast with B<putenv>(3))."
6221 msgid ""
6222 "The B<setenv>()  function adds the variable I<name> to the environment with "
6223 "the value I<value>, if I<name> does not already exist.  If I<name> does "
6224 "exist in the environment, then its value is changed to I<value> if "
6225 "I<overwrite> is nonzero; if I<overwrite> is zero, then the value of I<name> "
6226 "is not changed (and B<setenv>()  returns a success status).  This function "
6227 "makes copies of the strings pointed to by I<name> and I<value> (by contrast "
6228 "with B<putenv>(3))."
6229 msgstr ""
6230 "B<setenv>()  関数は、I<name> が存在しない場合 環境変数 I<name> に値 I<value> "
6231 "を設定し、環境に追加する。 I<name> が環境に存在する場合、I<overwrite> が 0 以"
6232 "外ならば その値を I<value> に変更し、I<overwrite> が 0 ならば I<name> の値を"
6233 "変更しない。 この関数は、 (B<putenv>(3)  と違い)  I<name> と I<value> により"
6234 "参照される文字列のコピーを行う。"
6235
6236 #. type: Plain text
6237 #: build/C/man3/setenv.3:105
6238 msgid ""
6239 "The B<unsetenv>()  function deletes the variable I<name> from the "
6240 "environment.  If I<name> does not exist in the environment, then the "
6241 "function succeeds, and the environment is unchanged."
6242 msgstr ""
6243 "B<unsetenv>()  関数は、変数 I<name> を環境から削除する。 I<name> が環境にない"
6244 "場合、この関数は成功し、環境は変更されない。"
6245
6246 #. type: Plain text
6247 #: build/C/man3/setenv.3:112
6248 msgid ""
6249 "The B<setenv>()  function returns zero on success, or -1 on error, with "
6250 "I<errno> set to indicate the cause of the error."
6251 msgstr ""
6252 "B<setenv>()  関数は、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
6253 "I<errno> にエラーの原因を示す値がセットされる。"
6254
6255 #. type: Plain text
6256 #: build/C/man3/setenv.3:119
6257 msgid ""
6258 "The B<unsetenv>()  function returns zero on success, or -1 on error, with "
6259 "I<errno> set to indicate the cause of the error."
6260 msgstr ""
6261 "B<unsetenv>()  関数は、成功すると 0 を返す。 エラーの場合は -1 を返し、 "
6262 "I<errno> を設定してエラーの原因を示す。"
6263
6264 #. type: Plain text
6265 #: build/C/man3/setenv.3:125
6266 msgid ""
6267 "I<name> is NULL, points to a string of length 0, or contains an \\(aq=\\(aq "
6268 "character."
6269 msgstr ""
6270 "I<name> が NULL であるか、長さが 0 の文字列を指しているか、 \\(aq=\\(aq 文字"
6271 "が含まれている。"
6272
6273 #. type: Plain text
6274 #: build/C/man3/setenv.3:128
6275 msgid "Insufficient memory to add a new variable to the environment."
6276 msgstr "環境に新しい変数を追加するのに十分なメモリがない。"
6277
6278 #. type: Plain text
6279 #: build/C/man3/setenv.3:136
6280 msgid ""
6281 "POSIX.1-2001 does not require B<setenv>()  or B<unsetenv>()  to be reentrant."
6282 msgstr ""
6283 "POSIX.1-2001 は、 B<setenv>()  や B<unsetenv>()  がリエントラント (再入可能) "
6284 "であることを要求していない。"
6285
6286 #. type: Plain text
6287 #: build/C/man3/setenv.3:144
6288 msgid ""
6289 "Prior to glibc 2.2.2, B<unsetenv>()  was prototyped as returning I<void>; "
6290 "more recent glibc versions follow the POSIX.1-2001-compliant prototype shown "
6291 "in the SYNOPSIS."
6292 msgstr ""
6293 "glibc 2.2.2 以前では、 B<unsetenv>()  は 返り値が I<void> のプロトタイプで"
6294 "あった。 もっと最近の glibc 版は、「書式」セクションで示しているように "
6295 "POSIX.1-2001 互換のプロトタイプである。"
6296
6297 #. type: Plain text
6298 #: build/C/man3/setenv.3:153
6299 msgid ""
6300 "POSIX.1-2001 specifies that if I<name> contains an \\(aq=\\(aq character, "
6301 "then B<setenv>()  should fail with the error B<EINVAL>; however, versions of "
6302 "glibc before 2.3.4 allowed an \\(aq=\\(aq sign in I<name>."
6303 msgstr ""
6304 "POSIX.1-2001 では 「I<name> に \\(aq=\\(aq 文字が含まれる場合、 B<setenv>()  "
6305 "はエラー B<EINVAL> で失敗すべきである」と述べられている。 しかし 2.3.4 より前"
6306 "のバージョンの glibc では、 I<name> に \\(aq=\\(aq 文字が含まれるのを許してい"
6307 "る。"
6308
6309 #. type: Plain text
6310 #: build/C/man3/setenv.3:158
6311 msgid "B<clearenv>(3), B<getenv>(3), B<putenv>(3), B<environ>(7)"
6312 msgstr "B<clearenv>(3), B<getenv>(3), B<putenv>(3), B<environ>(7)"
6313
6314 #. type: TH
6315 #: build/C/man3/strtod.3:45
6316 #, no-wrap
6317 msgid "STRTOD"
6318 msgstr "STRTOD"
6319
6320 #. type: Plain text
6321 #: build/C/man3/strtod.3:48
6322 msgid "strtod, strtof, strtold - convert ASCII string to floating-point number"
6323 msgstr "strtod, strtof, strtold - ASCII 文字列を浮動小数点実数に変換する"
6324
6325 #. type: Plain text
6326 #: build/C/man3/strtod.3:52
6327 msgid "B<double strtod(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6328 msgstr "B<double strtod(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6329
6330 #. type: Plain text
6331 #: build/C/man3/strtod.3:54
6332 msgid "B<float strtof(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6333 msgstr "B<float strtof(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6334
6335 #. type: Plain text
6336 #: build/C/man3/strtod.3:56
6337 msgid "B<long double strtold(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6338 msgstr "B<long double strtold(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6339
6340 #. type: Plain text
6341 #: build/C/man3/strtod.3:65
6342 msgid "B<strtof>(), B<strtold>():"
6343 msgstr "B<strtof>(), B<strtold>():"
6344
6345 #. type: Plain text
6346 #: build/C/man3/strtod.3:87
6347 msgid ""
6348 "The B<strtod>(), B<strtof>(), and B<strtold>()  functions convert the "
6349 "initial portion of the string pointed to by I<nptr> to I<double>, I<float>, "
6350 "and I<long double> representation, respectively."
6351 msgstr ""
6352 "B<strtod>(), B<strtof>(), B<strtold>()  関数は、 I<nptr> が指し示す文字列のは"
6353 "じめの部分を I<double>, I<float>, I<long double> 型の値にそれぞれ変換する。"
6354
6355 #. type: Plain text
6356 #: build/C/man3/strtod.3:94
6357 msgid ""
6358 "The expected form of the (initial portion of the) string is optional leading "
6359 "white space as recognized by B<isspace>(3), an optional plus (\\(aq+\\(aq) "
6360 "or minus sign (\\(aq-\\(aq) and then either (i) a decimal number, or (ii) a "
6361 "hexadecimal number, or (iii) an infinity, or (iv) a NAN (not-a-number)."
6362 msgstr ""
6363 "入力する文字列 (の先頭部分) は以下の形式が期待されている。 先頭にホワイトス"
6364 "ペース、 次にプラス (\\(aq+\\(aq) またはマイナス (\\(aq-\\(aq) の記号、 その"
6365 "後に (i) 10 進数、(ii) 16 進数、(iii) 無限、 (iv) NAN (計算できない数、not-a-"
6366 "number) のいずれかがある (ホワイトスペース、符号は省略可能。 ホワイトスペース"
6367 "は B<isspace>(3)  で識別される)。"
6368
6369 #. type: Plain text
6370 #: build/C/man3/strtod.3:103
6371 msgid ""
6372 "A I<decimal number> consists of a nonempty sequence of decimal digits "
6373 "possibly containing a radix character (decimal point, locale-dependent, "
6374 "usually \\(aq.\\(aq), optionally followed by a decimal exponent.  A decimal "
6375 "exponent consists of an \\(aqE\\(aq or \\(aqe\\(aq, followed by an optional "
6376 "plus or minus sign, followed by a nonempty sequence of decimal digits, and "
6377 "indicates multiplication by a power of 10."
6378 msgstr ""
6379 "I<10 進数> は 1 文字以上の 10 進の数字の列からなり、 基を表す文字 (radix "
6380 "charater)  (小数点。ロケールに依存するが、通常は \\(aq.\\(aq) が含まれること"
6381 "もある。 この後に 10 進の指数部が続いても良い。 10 進の指数部は \\(aqE\\(aq "
6382 "または \\(aqe\\(aq と、その後に置かれる正負記号 (省略可)、 およびその後に続"
6383 "く 1 文字以上の 10 進の数字の列からなり、 10 の何乗であるかを表す。"
6384
6385 #. type: Plain text
6386 #: build/C/man3/strtod.3:114
6387 msgid ""
6388 "A I<hexadecimal number> consists of a \"0x\" or \"0X\" followed by a "
6389 "nonempty sequence of hexadecimal digits possibly containing a radix "
6390 "character, optionally followed by a binary exponent.  A binary exponent "
6391 "consists of a \\(aqP\\(aq or \\(aqp\\(aq, followed by an optional plus or "
6392 "minus sign, followed by a nonempty sequence of decimal digits, and indicates "
6393 "multiplication by a power of 2.  At least one of radix character and binary "
6394 "exponent must be present."
6395 msgstr ""
6396 "I<16 進数> は、\"0x\" または \"0X\" とその後に続く 1 文字以上の 16 進の数字の"
6397 "列からなり、 基を表す文字が含まれることもある。 この後に 2 進の指数部が続いて"
6398 "も良い。 2 進の指数部は \\(aqP\\(aq または \\(aqp\\(aq と、その後に置かれる正"
6399 "負記号 (省略可)、 およびその後に続く 1 文字以上の 10 進の数字の列から構成さ"
6400 "れ、 2 の何乗であるかを表す。 基を表す文字と 2 進の指数部は、どちらか一方しか"
6401 "存在してはならない。"
6402
6403 #. type: Plain text
6404 #: build/C/man3/strtod.3:118
6405 msgid "An I<infinity> is either \"INF\" or \"INFINITY\", disregarding case."
6406 msgstr ""
6407 "I<無限> は \"INF\" または \"INFINITY\" で表され、大文字小文字は区別されない。"
6408
6409 #.  From glibc 2.8's stdlib/strtod_l.c:
6410 #.      We expect it to be a number which is put in the
6411 #.      mantissa of the number.
6412 #. type: Plain text
6413 #: build/C/man3/strtod.3:128
6414 msgid ""
6415 "A I<NAN> is \"NAN\" (disregarding case) optionally followed by \\(aq(\\(aq, "
6416 "a sequence of characters, followed by \\(aq)\\(aq.  The character string "
6417 "specifies in an implementation-dependent way the type of NAN."
6418 msgstr ""
6419 "I<NAN> は \"NAN\" (大文字小文字は区別されない) で表され、 その後に \\(aq"
6420 "(\\(aq 文字列 \\(aq)\\(aq が続く場合もある。 この文字列は実装に依存する NAN "
6421 "を指定する。"
6422
6423 #. type: Plain text
6424 #: build/C/man3/strtod.3:130
6425 msgid "These functions return the converted value, if any."
6426 msgstr "これらの関数は、変換された値があれば、それを返す。"
6427
6428 #. type: Plain text
6429 #: build/C/man3/strtod.3:137
6430 msgid ""
6431 "If I<endptr> is not NULL, a pointer to the character after the last "
6432 "character used in the conversion is stored in the location referenced by "
6433 "I<endptr>."
6434 msgstr ""
6435 "I<endptr> が NULL でないときは、変換に使われた最終文字の次の文字へのポイン"
6436 "ターが I<endptr> で参照される場所へ保存される。"
6437
6438 #. type: Plain text
6439 #: build/C/man3/strtod.3:142
6440 msgid ""
6441 "If no conversion is performed, zero is returned and the value of I<nptr> is "
6442 "stored in the location referenced by I<endptr>."
6443 msgstr ""
6444 "変換が行われなかったときには 0 が返る。そして I<endptr> が参照している場所に "
6445 "I<nptr> の値 (変換対象である文字列の開始アドレス) が保存される。"
6446
6447 #. type: Plain text
6448 #: build/C/man3/strtod.3:156
6449 msgid ""
6450 "If the correct value would cause overflow, plus or minus B<HUGE_VAL> "
6451 "(B<HUGE_VALF>, B<HUGE_VALL>)  is returned (according to the sign of the "
6452 "value), and B<ERANGE> is stored in I<errno>.  If the correct value would "
6453 "cause underflow, zero is returned and B<ERANGE> is stored in I<errno>."
6454 msgstr ""
6455 "正しい形式の数値文字列であるが、変換結果がオーバーフローを起こした場合 には、"
6456 "プラスまたはマイナスの B<HUGE_VAL> (B<HUGE_VALF>, B<HUGE_VALL>)  が返り (値の"
6457 "符号による)、 B<ERANGE> が I<errno> に代入される。変換結果がアンダーフローを"
6458 "起こした場合には 0 が返り、 B<ERANGE> が I<errno> に代入される。"
6459
6460 #. type: TP
6461 #: build/C/man3/strtod.3:157 build/C/man3/strtol.3:151
6462 #: build/C/man3/strtoul.3:155
6463 #, no-wrap
6464 msgid "B<ERANGE>"
6465 msgstr "B<ERANGE>"
6466
6467 #. type: Plain text
6468 #: build/C/man3/strtod.3:160
6469 msgid "Overflow or underflow occurred."
6470 msgstr "オーバーフローまたはアンダーフローが起こった。"
6471
6472 #. type: Plain text
6473 #: build/C/man3/strtod.3:172
6474 msgid ""
6475 "The B<strtod>(), B<strtof>(), and B<strtold>()  functions are thread-safe "
6476 "with exceptions.  These functions can be safely used in multithreaded "
6477 "applications, as long as B<setlocale>(3)  is not called to change the locale "
6478 "during their execution."
6479 msgstr ""
6480
6481 #. type: Plain text
6482 #: build/C/man3/strtod.3:177
6483 msgid "C89 describes B<strtod>(), C99 describes the other two functions."
6484 msgstr "C89 では B<strtod>()  が、C99 では残りの 2 つの関数が記述されている。"
6485
6486 #. type: Plain text
6487 #: build/C/man3/strtod.3:186
6488 msgid ""
6489 "Since 0 can legitimately be returned on both success and failure, the "
6490 "calling program should set I<errno> to 0 before the call, and then determine "
6491 "if an error occurred by checking whether I<errno> has a nonzero value after "
6492 "the call."
6493 msgstr ""
6494 "成功、失敗どちらの場合でも 0 を返す可能性があるので、 プログラムは呼び出す前"
6495 "に I<errno> を 0 に設定し、呼び出し後に I<errno> が 0 以外の値かどうかを確認"
6496 "しエラーが発生したかどうかを判断する 必要がある。"
6497
6498 #. type: Plain text
6499 #: build/C/man3/strtod.3:191 build/C/man3/strtoul.3:225
6500 msgid ""
6501 "See the example on the B<strtol>(3)  manual page; the use of the functions "
6502 "described in this manual page is similar."
6503 msgstr ""
6504 "B<strtol>(3)  のマニュアルページの例を参照。 このページで説明した関数の使用方"
6505 "法も同様である。"
6506
6507 #. type: Plain text
6508 #: build/C/man3/strtod.3:197
6509 msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtol>(3), B<strtoul>(3)"
6510 msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtol>(3), B<strtoul>(3)"
6511
6512 #. type: TH
6513 #: build/C/man3/strtoimax.3:24
6514 #, no-wrap
6515 msgid "STRTOIMAX"
6516 msgstr "STRTOIMAX"
6517
6518 #. type: Plain text
6519 #: build/C/man3/strtoimax.3:27
6520 msgid "strtoimax, strtoumax - convert string to integer"
6521 msgstr "strtoimax, strtoumax - 文字列を整数に変換する"
6522
6523 #. type: Plain text
6524 #: build/C/man3/strtoimax.3:30
6525 #, no-wrap
6526 msgid "B<#include E<lt>inttypes.hE<gt>>\n"
6527 msgstr "B<#include E<lt>inttypes.hE<gt>>\n"
6528
6529 #. type: Plain text
6530 #: build/C/man3/strtoimax.3:32
6531 #, no-wrap
6532 msgid "B<intmax_t strtoimax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6533 msgstr "B<intmax_t strtoimax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6534
6535 #. type: Plain text
6536 #: build/C/man3/strtoimax.3:34
6537 #, no-wrap
6538 msgid "B<uintmax_t strtoumax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6539 msgstr "B<uintmax_t strtoumax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6540
6541 #. type: Plain text
6542 #: build/C/man3/strtoimax.3:45
6543 msgid ""
6544 "These functions are just like B<strtol>(3)  and B<strtoul>(3), except that "
6545 "they return a value of type I<intmax_t> and I<uintmax_t>, respectively."
6546 msgstr ""
6547 "これらの関数はちょうど B<strtol>(3)  と B<strtoul>(3)  に似ているが、それぞ"
6548 "れ I<intmax_t> と I<uintmax_t> 型の値を返す。"
6549
6550 #. type: Plain text
6551 #: build/C/man3/strtoimax.3:58
6552 msgid ""
6553 "On success, the converted value is returned.  If nothing was found to "
6554 "convert, zero is returned.  On overflow or underflow B<INTMAX_MAX> or "
6555 "B<INTMAX_MIN> or B<UINTMAX_MAX> is returned, and I<errno> is set to "
6556 "B<ERANGE>."
6557 msgstr ""
6558 "成功した場合、変換された値が返される。 変換するものが見つからなかった場合、0 "
6559 "が返される。 オーバーフローまたはアンダーフローの場合、 B<INTMAX_MAX> または "
6560 "B<INTMAX_MIN> または B<UINTMAX_MAX> が返され、 I<errno> が B<ERANGE> に設定さ"
6561 "れる。"
6562
6563 #. type: Plain text
6564 #: build/C/man3/strtoimax.3:69
6565 msgid ""
6566 "The B<strtoimax>()  and B<strtoumax>()  functions are thread-safe with "
6567 "exceptions.  These functions can be safely used in multithreaded "
6568 "applications, as long as B<setlocale>(3)  is not called to change the locale "
6569 "during their execution."
6570 msgstr ""
6571
6572 #. type: Plain text
6573 #: build/C/man3/strtoimax.3:77
6574 msgid ""
6575 "B<imaxabs>(3), B<imaxdiv>(3), B<strtol>(3), B<strtoul>(3), B<wcstoimax>(3)"
6576 msgstr ""
6577 "B<imaxabs>(3), B<imaxdiv>(3), B<strtol>(3), B<strtoul>(3), B<wcstoimax>(3)"
6578
6579 #. type: TH
6580 #: build/C/man3/strtol.3:31
6581 #, no-wrap
6582 msgid "STRTOL"
6583 msgstr "STRTOL"
6584
6585 #. type: Plain text
6586 #: build/C/man3/strtol.3:34
6587 msgid "strtol, strtoll, strtoq - convert a string to a long integer"
6588 msgstr "strtol, strtoll, strtoq - 文字列を long int に変換する"
6589
6590 #. type: Plain text
6591 #: build/C/man3/strtol.3:39
6592 #, no-wrap
6593 msgid "B<long int strtol(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6594 msgstr "B<long int strtol(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6595
6596 #. type: Plain text
6597 #: build/C/man3/strtol.3:42
6598 #, no-wrap
6599 msgid "B<long long int strtoll(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6600 msgstr "B<long long int strtoll(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6601
6602 #. type: Plain text
6603 #: build/C/man3/strtol.3:51
6604 msgid "B<strtoll>():"
6605 msgstr "B<strtoll>():"
6606
6607 #. type: Plain text
6608 #: build/C/man3/strtol.3:54 build/C/man3/strtoul.3:57
6609 msgid ""
6610 "XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE "
6611 "|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
6612 msgstr ""
6613 "XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE "
6614 "|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
6615
6616 #. type: Plain text
6617 #: build/C/man3/strtol.3:68
6618 msgid ""
6619 "The B<strtol>()  function converts the initial part of the string in I<nptr> "
6620 "to a long integer value according to the given I<base>, which must be "
6621 "between 2 and 36 inclusive, or be the special value 0."
6622 msgstr ""
6623 "B<strtol>()  関数は、 I<nptr> の文字列の最初の部分を、 I<base> を基数として "
6624 "long int に変換する。 この I<base> は 2 から 36 までの値 あるいは特別な意味を"
6625 "持つ値 0 でなければならない。"
6626
6627 #. type: Plain text
6628 #: build/C/man3/strtol.3:81 build/C/man3/strtoul.3:89
6629 msgid ""
6630 "The string may begin with an arbitrary amount of white space (as determined "
6631 "by B<isspace>(3))  followed by a single optional \\(aq+\\(aq or \\(aq-\\(aq "
6632 "sign.  If I<base> is zero or 16, the string may then include a \"0x\" "
6633 "prefix, and the number will be read in base 16; otherwise, a zero I<base> is "
6634 "taken as 10 (decimal) unless the next character is \\(aq0\\(aq, in which "
6635 "case it is taken as 8 (octal)."
6636 msgstr ""
6637 "文字列の先頭には、任意の数の空白があってもよく (空白は B<isspace>(3) で判定さ"
6638 "れる)、また数字の直前には \\(aq+\\(aq か \\(aq-\\(aq の 符号があってもよい。 "
6639 "I<base> が 0 または 16 の場合には、文字列の先頭に \"0x\" を置くことが でき、"
6640 "その場合には文字列は 16進数として扱われる。 これ以外の文字列で I<base> が 0 "
6641 "の場合は、 文字列が \\(aq0\\(aq で始まるときは 8進数として、 それ以外のとき"
6642 "は 10進数として扱われる。"
6643
6644 #. type: Plain text
6645 #: build/C/man3/strtol.3:90
6646 #, fuzzy
6647 #| msgid ""
6648 #| "The remainder of the string is converted to a I<long int> value in the "
6649 #| "obvious manner, stopping at the first character which is not a valid "
6650 #| "digit in the given base.  (In bases above 10, the letter \\(aqA\\(aq in "
6651 #| "either upper or lower case represents 10, \\(aqB\\(aq represents 11, and "
6652 #| "so forth, with \\(aqZ\\(aq representing 35.)"
6653 msgid ""
6654 "The remainder of the string is converted to a I<long int> value in the "
6655 "obvious manner, stopping at the first character which is not a valid digit "
6656 "in the given base.  (In bases above 10, the letter \\(aqA\\(aq in either "
6657 "uppercase or lowercase represents 10, \\(aqB\\(aq represents 11, and so "
6658 "forth, with \\(aqZ\\(aq representing 35.)"
6659 msgstr ""
6660 "数字を表す文字列は I<long int> に変換されるが、基数に対して 有効でない数字が"
6661 "現れた時点で変換は終了する。(11進数以上では \\(aqA\\(aq は 大文字・小文字に関"
6662 "わらず 10 を表し、 \\(aqB\\(aq は 11 を表現し、 以下同様に、 \\(aqZ\\(aq は "
6663 "35 を表す。)"
6664
6665 #. type: Plain text
6666 #: build/C/man3/strtol.3:111
6667 msgid ""
6668 "If I<endptr> is not NULL, B<strtol>()  stores the address of the first "
6669 "invalid character in I<*endptr>.  If there were no digits at all, B<strtol>"
6670 "()  stores the original value of I<nptr> in I<*endptr> (and returns 0).  In "
6671 "particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is \\(aq"
6672 "\\e0\\(aq on return, the entire string is valid."
6673 msgstr ""
6674 "I<endptr> がヌル値 (NULL) でない場合は、最初に現れた不正な文字が B<strtol>"
6675 "()  によって I<*endptr> に保存されている。 文字列に有効な数字がひとつもなけれ"
6676 "ば、 B<strtol>()  は I<nptr> の元の値を I<*endptr> に代入する (そして 0 を返"
6677 "す)。 特に、I<*nptr> が \\(aq\\e0\\(aq 以外で、返された I<**endptr> が \\(aq"
6678 "\\e0\\(aq ならば、文字列全体が有効だったことになる。"
6679
6680 #. type: Plain text
6681 #: build/C/man3/strtol.3:117
6682 msgid ""
6683 "The B<strtoll>()  function works just like the B<strtol>()  function but "
6684 "returns a long long integer value."
6685 msgstr ""
6686 "B<strtoll>()  関数は B<strtol>()  と同様だが、long long int 型の値を返す。"
6687
6688 #. type: Plain text
6689 #: build/C/man3/strtol.3:144
6690 msgid ""
6691 "The B<strtol>()  function returns the result of the conversion, unless the "
6692 "value would underflow or overflow.  If an underflow occurs, B<strtol>()  "
6693 "returns B<LONG_MIN>.  If an overflow occurs, B<strtol>()  returns "
6694 "B<LONG_MAX>.  In both cases, I<errno> is set to B<ERANGE>.  Precisely the "
6695 "same holds for B<strtoll>()  (with B<LLONG_MIN> and B<LLONG_MAX> instead of "
6696 "B<LONG_MIN> and B<LONG_MAX>)."
6697 msgstr ""
6698 "アンダーフローもオーバーフローも起きなかった場合、 B<strtol>()  関数は 変換さ"
6699 "れた値を返す。オーバーフローした場合には B<LONG_MAX> が返り、 アンダーフロー"
6700 "した場合には B<LONG_MIN> が返る。オーバーフロー、 アンダーフローのいずれの場"
6701 "合にも 大域変数 I<errno> には B<ERANGE> が設定される。 B<strtoll>()  も同様で"
6702 "あるが、 B<LONG_MIN> と B<LONG_MAX> の代わりに B<LLONG_MIN> と B<LLONG_MAX> "
6703 "が返される。"
6704
6705 #. type: Plain text
6706 #: build/C/man3/strtol.3:151 build/C/man3/strtoul.3:155
6707 msgid "(not in C99)  The given I<base> contains an unsupported value."
6708 msgstr "(C99 にはない) 指定された I<base> がサポートされていない値である。"
6709
6710 #. type: Plain text
6711 #: build/C/man3/strtol.3:154 build/C/man3/strtoul.3:158
6712 msgid "The resulting value was out of range."
6713 msgstr "結果の値が範囲外である。"
6714
6715 #. type: Plain text
6716 #: build/C/man3/strtol.3:161 build/C/man3/strtoul.3:165
6717 msgid ""
6718 "The implementation may also set I<errno> to B<EINVAL> in case no conversion "
6719 "was performed (no digits seen, and 0 returned)."
6720 msgstr ""
6721 "実装によっては、変換が行われなかった場合 (数字がなく、0 を返した場合)、 "
6722 "I<errno> に B<EINVAL> が設定される場合がある。"
6723
6724 #. type: Plain text
6725 #: build/C/man3/strtol.3:173
6726 msgid ""
6727 "The B<strtol>(), B<strtoll>(), and B<strtoq>()  functions are thread-safe "
6728 "with exceptions.  These functions can be safely used in multithreaded "
6729 "applications, as long as B<setlocale>(3)  is not called to change the locale "
6730 "during their execution."
6731 msgstr ""
6732
6733 #. type: Plain text
6734 #: build/C/man3/strtol.3:178
6735 #, fuzzy
6736 #| msgid ""
6737 #| "B<strtol>()  conforms to SVr4, 4.3BSD, C89, C99 and POSIX.1-2001, and "
6738 #| "B<strtoll>()  to C99 and POSIX.1-2001."
6739 msgid ""
6740 "B<strtol>()  conforms to SVr4, 4.3BSD, C89, C99, and POSIX.1-2001, and "
6741 "B<strtoll>()  to C99 and POSIX.1-2001."
6742 msgstr ""
6743 "B<strtol>()  は SVr4, 4.3BSD, C89, C99 と POSIX.1-2001 に準拠している。 "
6744 "B<strtoll>()  は C99 と POSIX.1-2001 に準拠している。"
6745
6746 #. type: Plain text
6747 #: build/C/man3/strtol.3:196
6748 msgid ""
6749 "Since B<strtol>()  can legitimately return 0, B<LONG_MAX>, or B<LONG_MIN> "
6750 "(B<LLONG_MAX> or B<LLONG_MIN> for B<strtoll>())  on both success and "
6751 "failure, the calling program should set I<errno> to 0 before the call, and "
6752 "then determine if an error occurred by checking whether I<errno> has a "
6753 "nonzero value after the call."
6754 msgstr ""
6755 "B<strtol ()> からは成功、失敗どちらの場合でも 0, B<LONG_MAX>, B<LONG_MIN> "
6756 "(B<strtoll>()  では B<LLONG_MAX>, B<LLONG_MIN>)  が返る可能性があるので、 プ"
6757 "ログラムは関数を呼び出す前に I<errno> を 0 に設定し、呼び出し後に I<errno> "
6758 "が 0 以外の値かどうかを確認しエラーが発生したかどうかを判断する 必要がある。"
6759
6760 #. type: Plain text
6761 #: build/C/man3/strtol.3:201
6762 msgid ""
6763 "According to POSIX.1-2001, in locales other than the \"C\" and \"POSIX\", "
6764 "these functions may accept other, implementation-defined numeric strings."
6765 msgstr ""
6766 "POSIX.1-2001 では、 \"C\" と \"POSIX\" 以外のロケールでは、これらの関数は、他"
6767 "の実装時に定義される数字を示す文字列を受け付けるとされている。"
6768
6769 #. type: Plain text
6770 #: build/C/man3/strtol.3:203 build/C/man3/strtoul.3:202
6771 msgid "BSD also has"
6772 msgstr "BSD には、"
6773
6774 #. type: Plain text
6775 #: build/C/man3/strtol.3:207
6776 #, no-wrap
6777 msgid "B<quad_t strtoq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6778 msgstr "B<quad_t strtoq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6779
6780 #. type: Plain text
6781 #: build/C/man3/strtol.3:216
6782 msgid ""
6783 "with completely analogous definition.  Depending on the wordsize of the "
6784 "current architecture, this may be equivalent to B<strtoll>()  or to B<strtol>"
6785 "()."
6786 msgstr ""
6787 "という完全に同様の定義を持つ関数がある。 使用中のアーキテクチャのワード長次第"
6788 "であるが、この関数は B<strtoll>()  か B<strtol>()  と等価となることもある。"
6789
6790 #. type: Plain text
6791 #: build/C/man3/strtol.3:230
6792 msgid ""
6793 "The program shown below demonstrates the use of B<strtol>().  The first "
6794 "command-line argument specifies a string from which B<strtol>()  should "
6795 "parse a number.  The second (optional) argument specifies the base to be "
6796 "used for the conversion.  (This argument is converted to numeric form using "
6797 "B<atoi>(3), a function that performs no error checking and has a simpler "
6798 "interface than B<strtol>().)  Some examples of the results produced by this "
6799 "program are the following:"
6800 msgstr ""
6801 "以下のプログラムは B<strtol>()  の使用例である。 最初のコマンドライン引き数に"
6802 "は B<strtol>()  が数字として解釈する文字列を指定する。 (省略可能な) 二番目の"
6803 "引き数には 変換に使用される基数を指定する (この引き数は B<atoi>(3)  を使って"
6804 "数値に変換される。 B<atoi>(3)  は B<strtol>()  よりも簡単なインタフェースを持"
6805 "つ関数で、 その中ではエラーチェックは行われない)。 このプログラムの実行例をい"
6806 "くつか以下に示す:"
6807
6808 #. type: Plain text
6809 #: build/C/man3/strtol.3:246
6810 #, no-wrap
6811 msgid ""
6812 "$B< ./a.out 123>\n"
6813 "strtol() returned 123\n"
6814 "$B< ./a.out \\(aq    123\\(aq>\n"
6815 "strtol() returned 123\n"
6816 "$B< ./a.out 123abc>\n"
6817 "strtol() returned 123\n"
6818 "Further characters after number: abc\n"
6819 "$B< ./a.out 123abc 55>\n"
6820 "strtol: Invalid argument\n"
6821 "$B< ./a.out \\(aq\\(aq>\n"
6822 "No digits were found\n"
6823 "$B< ./a.out 4000000000>\n"
6824 "strtol: Numerical result out of range\n"
6825 msgstr ""
6826 "$B< ./a.out 123>\n"
6827 "strtol() returned 123\n"
6828 "$B< ./a.out \\(aq    123\\(aq>\n"
6829 "strtol() returned 123\n"
6830 "$B< ./a.out 123abc>\n"
6831 "strtol() returned 123\n"
6832 "Further characters after number: abc\n"
6833 "$B< ./a.out 123abc 55>\n"
6834 "strtol: Invalid argument\n"
6835 "$B< ./a.out \\(aq\\(aq>\n"
6836 "No digits were found\n"
6837 "$B< ./a.out 4000000000>\n"
6838 "strtol: Numerical result out of range\n"
6839
6840 #. type: Plain text
6841 #: build/C/man3/strtol.3:255
6842 #, no-wrap
6843 msgid ""
6844 "#include E<lt>stdlib.hE<gt>\n"
6845 "#include E<lt>limits.hE<gt>\n"
6846 "#include E<lt>stdio.hE<gt>\n"
6847 "#include E<lt>errno.hE<gt>\n"
6848 msgstr ""
6849 "#include E<lt>stdlib.hE<gt>\n"
6850 "#include E<lt>limits.hE<gt>\n"
6851 "#include E<lt>stdio.hE<gt>\n"
6852 "#include E<lt>errno.hE<gt>\n"
6853
6854 #. type: Plain text
6855 #: build/C/man3/strtol.3:262
6856 #, no-wrap
6857 msgid ""
6858 "int\n"
6859 "main(int argc, char *argv[])\n"
6860 "{\n"
6861 "    int base;\n"
6862 "    char *endptr, *str;\n"
6863 "    long val;\n"
6864 msgstr ""
6865 "int\n"
6866 "main(int argc, char *argv[])\n"
6867 "{\n"
6868 "    int base;\n"
6869 "    char *endptr, *str;\n"
6870 "    long val;\n"
6871
6872 #. type: Plain text
6873 #: build/C/man3/strtol.3:267
6874 #, no-wrap
6875 msgid ""
6876 "    if (argc E<lt> 2) {\n"
6877 "        fprintf(stderr, \"Usage: %s str [base]\\en\", argv[0]);\n"
6878 "        exit(EXIT_FAILURE);\n"
6879 "    }\n"
6880 msgstr ""
6881 "    if (argc E<lt> 2) {\n"
6882 "        fprintf(stderr, \"Usage: %s str [base]\\en\", argv[0]);\n"
6883 "        exit(EXIT_FAILURE);\n"
6884 "    }\n"
6885
6886 #. type: Plain text
6887 #: build/C/man3/strtol.3:270
6888 #, no-wrap
6889 msgid ""
6890 "    str = argv[1];\n"
6891 "    base = (argc E<gt> 2) ? atoi(argv[2]) : 10;\n"
6892 msgstr ""
6893 "    str = argv[1];\n"
6894 "    base = (argc E<gt> 2) ? atoi(argv[2]) : 10;\n"
6895
6896 #. type: Plain text
6897 #: build/C/man3/strtol.3:273
6898 #, no-wrap
6899 msgid ""
6900 "    errno = 0;    /* To distinguish success/failure after call */\n"
6901 "    val = strtol(str, &endptr, base);\n"
6902 msgstr ""
6903 "    errno = 0;    /* To distinguish success/failure after call */\n"
6904 "    val = strtol(str, &endptr, base);\n"
6905
6906 #. type: Plain text
6907 #: build/C/man3/strtol.3:275
6908 #, no-wrap
6909 msgid "    /* Check for various possible errors */\n"
6910 msgstr "    /* Check for various possible errors */\n"
6911
6912 #. type: Plain text
6913 #: build/C/man3/strtol.3:281
6914 #, no-wrap
6915 msgid ""
6916 "    if ((errno == ERANGE && (val == LONG_MAX || val == LONG_MIN))\n"
6917 "            || (errno != 0 && val == 0)) {\n"
6918 "        perror(\"strtol\");\n"
6919 "        exit(EXIT_FAILURE);\n"
6920 "    }\n"
6921 msgstr ""
6922 "    if ((errno == ERANGE && (val == LONG_MAX || val == LONG_MIN))\n"
6923 "            || (errno != 0 && val == 0)) {\n"
6924 "        perror(\"strtol\");\n"
6925 "        exit(EXIT_FAILURE);\n"
6926 "    }\n"
6927
6928 #. type: Plain text
6929 #: build/C/man3/strtol.3:286
6930 #, no-wrap
6931 msgid ""
6932 "    if (endptr == str) {\n"
6933 "        fprintf(stderr, \"No digits were found\\en\");\n"
6934 "        exit(EXIT_FAILURE);\n"
6935 "    }\n"
6936 msgstr ""
6937 "    if (endptr == str) {\n"
6938 "        fprintf(stderr, \"No digits were found\\en\");\n"
6939 "        exit(EXIT_FAILURE);\n"
6940 "    }\n"
6941
6942 #. type: Plain text
6943 #: build/C/man3/strtol.3:288
6944 #, no-wrap
6945 msgid "    /* If we got here, strtol() successfully parsed a number */\n"
6946 msgstr "    /* If we got here, strtol() successfully parsed a number */\n"
6947
6948 #. type: Plain text
6949 #: build/C/man3/strtol.3:290
6950 #, no-wrap
6951 msgid "    printf(\"strtol() returned %ld\\en\", val);\n"
6952 msgstr "    printf(\"strtol() returned %ld\\en\", val);\n"
6953
6954 #. type: Plain text
6955 #: build/C/man3/strtol.3:293
6956 #, no-wrap
6957 msgid ""
6958 "    if (*endptr != \\(aq\\e0\\(aq)        /* Not necessarily an error... */\n"
6959 "        printf(\"Further characters after number: %s\\en\", endptr);\n"
6960 msgstr ""
6961 "    if (*endptr != \\(aq\\e0\\(aq)        /* Not necessarily an error... */\n"
6962 "        printf(\"Further characters after number: %s\\en\", endptr);\n"
6963
6964 #. type: Plain text
6965 #: build/C/man3/strtol.3:303
6966 msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtoul>(3)"
6967 msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtoul>(3)"
6968
6969 #. type: TH
6970 #: build/C/man3/strtoul.3:33
6971 #, no-wrap
6972 msgid "STRTOUL"
6973 msgstr "STRTOUL"
6974
6975 #. type: Plain text
6976 #: build/C/man3/strtoul.3:36
6977 msgid ""
6978 "strtoul, strtoull, strtouq - convert a string to an unsigned long integer"
6979 msgstr "strtoul, strtoull, strtouq - 文字列を unsigned long int に変換する"
6980
6981 #. type: Plain text
6982 #: build/C/man3/strtoul.3:42
6983 #, no-wrap
6984 msgid "B<unsigned long int strtoul(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6985 msgstr "B<unsigned long int strtoul(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6986
6987 #. type: Plain text
6988 #: build/C/man3/strtoul.3:45
6989 #, no-wrap
6990 msgid ""
6991 "B<unsigned long long int strtoull(const char *>I<nptr>B<, char **>I<endptr>B<,>\n"
6992 "B<                                int >I<base>B<);>\n"
6993 msgstr ""
6994 "B<unsigned long long int strtoull(const char *>I<nptr>B<, char **>I<endptr>B<,>\n"
6995 "B<                                int >I<base>B<);>\n"
6996
6997 #. type: Plain text
6998 #: build/C/man3/strtoul.3:54
6999 msgid "B<strtoull>():"
7000 msgstr "B<strtoull>():"
7001
7002 #. type: Plain text
7003 #: build/C/man3/strtoul.3:75
7004 msgid ""
7005 "The B<strtoul>()  function converts the initial part of the string in "
7006 "I<nptr> to an I<unsigned long int> value according to the given I<base>, "
7007 "which must be between 2 and 36 inclusive, or be the special value 0."
7008 msgstr ""
7009 "B<strtoul>()  関数は、 I<nptr> の文字列の最初の部分を、 I<base> を基数として "
7010 "I<unsigned long int> に変換する。 この I<base> は 2 から 36 までの値 あるいは"
7011 "特別な意味を持つ値 0 でなければならない。"
7012
7013 #. type: Plain text
7014 #: build/C/man3/strtoul.3:98
7015 #, fuzzy
7016 #| msgid ""
7017 #| "The remainder of the string is converted to an I<unsigned long int> value "
7018 #| "in the obvious manner, stopping at the first character which is not a "
7019 #| "valid digit in the given base.  (In bases above 10, the letter \\(aqA"
7020 #| "\\(aq in either upper or lower case represents 10, \\(aqB\\(aq represents "
7021 #| "11, and so forth, with \\(aqZ\\(aq representing 35.)"
7022 msgid ""
7023 "The remainder of the string is converted to an I<unsigned long int> value in "
7024 "the obvious manner, stopping at the first character which is not a valid "
7025 "digit in the given base.  (In bases above 10, the letter \\(aqA\\(aq in "
7026 "either uppercase or lowercase represents 10, \\(aqB\\(aq represents 11, and "
7027 "so forth, with \\(aqZ\\(aq representing 35.)"
7028 msgstr ""
7029 "文字列の残りの部分は I<unsigned long int> に変換されるが、基数に対して 有効で"
7030 "ない数字が現れた時点で変換は終了する。(11進数以上では \\(aqA\\(aq は 大文字・"
7031 "小文字に関わらず 10 を表し、 \\(aqB\\(aq は 11 を表現し, 以下同様に、 \\(aqZ"
7032 "\\(aq は 35 を表す。)"
7033
7034 #. type: Plain text
7035 #: build/C/man3/strtoul.3:119
7036 msgid ""
7037 "If I<endptr> is not NULL, B<strtoul>()  stores the address of the first "
7038 "invalid character in I<*endptr>.  If there were no digits at all, B<strtoul>"
7039 "()  stores the original value of I<nptr> in I<*endptr> (and returns 0).  In "
7040 "particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is \\(aq"
7041 "\\e0\\(aq on return, the entire string is valid."
7042 msgstr ""
7043 "I<endptr> がヌル値 (NULL) でない場合、 B<strtoul>()  は最初に不正な文字が現れ"
7044 "たアドレスを I<*endptr> に格納している。 文字列に有効な数字がひとつもなけれ"
7045 "ば、 B<strtoul>()  は I<nptr> の元の値を I<*endptr> に代入する(そして 0 を返"
7046 "す)。 特に、 I<*nptr> が \\(aq\\e0\\(aq 以外で、返された I<**endptr> が \\(aq"
7047 "\\e0\\(aq ならば、文字列全体が有効だったことになる。"
7048
7049 #. type: Plain text
7050 #: build/C/man3/strtoul.3:127
7051 msgid ""
7052 "The B<strtoull>()  function works just like the B<strtoul>()  function but "
7053 "returns an I<unsigned long long int> value."
7054 msgstr ""
7055 "B<strtoull>()  関数は B<strtoul>()  関数と同様だが、 I<unsigned long long "
7056 "int> 型の値を返す。"
7057
7058 #. type: Plain text
7059 #: build/C/man3/strtoul.3:148
7060 msgid ""
7061 "The B<strtoul>()  function returns either the result of the conversion or, "
7062 "if there was a leading minus sign, the negation of the result of the "
7063 "conversion represented as an unsigned value, unless the original "
7064 "(nonnegated) value would overflow; in the latter case, B<strtoul>()  returns "
7065 "B<ULONG_MAX> and sets I<errno> to B<ERANGE>.  Precisely the same holds for "
7066 "B<strtoull>()  (with B<ULLONG_MAX> instead of B<ULONG_MAX>)."
7067 msgstr ""
7068 "B<strtoul>()  関数は変換結果を返す。文字列がマイナス符号から始まっていた場 合"
7069 "は、(符号反転前の値がオーバーフローしていなければ) 変換結果を符号反転した 値"
7070 "を unsigned 型で返す。変換でオーバーフローが発生した場合は B<ULONG_MAX> を返"
7071 "し、 I<errno> に B<ERANGE> を設定する。 (B<ULONG_MAX> を B<ULLONG_MAX> と読み"
7072 "替えれば)  B<strtoull>()  は B<strtoul>()  と全く同じである。"
7073
7074 #. type: Plain text
7075 #: build/C/man3/strtoul.3:177
7076 msgid ""
7077 "The B<strtoul>(), B<strtoull>(), and B<strtouq>()  functions are thread-safe "
7078 "with exceptions.  These functions can be safely used in multithreaded "
7079 "applications, as long as B<setlocale>(3)  is not called to change the locale "
7080 "during their execution."
7081 msgstr ""
7082
7083 #. type: Plain text
7084 #: build/C/man3/strtoul.3:182
7085 #, fuzzy
7086 #| msgid ""
7087 #| "B<strtoul>()  conforms to SVr4, C89, C99 and POSIX-2001, and B<strtoull>"
7088 #| "()  to C99 and POSIX.1-2001."
7089 msgid ""
7090 "B<strtoul>()  conforms to SVr4, C89, C99, and POSIX-2001, and B<strtoull>()  "
7091 "to C99 and POSIX.1-2001."
7092 msgstr ""
7093 "B<strtoul>()  は SVr4, C89, C99 と POSIX-2001 に準拠している。 B<strtoull>"
7094 "()  は C99 と POSIX.1-2001 に準拠している。"
7095
7096 #. type: Plain text
7097 #: build/C/man3/strtoul.3:196
7098 msgid ""
7099 "Since B<strtoul>()  can legitimately return 0 or B<ULONG_MAX> (B<ULLONG_MAX> "
7100 "for B<strtoull>())  on both success and failure, the calling program should "
7101 "set I<errno> to 0 before the call, and then determine if an error occurred "
7102 "by checking whether I<errno> has a nonzero value after the call."
7103 msgstr ""
7104 "B<strtoul ()> からは成功、失敗どちらの場合でも 0 や B<ULONG_MAX> (B<strtoull>"
7105 "()  では B<ULLONG_MAX>)  が返る可能性があるので、 プログラムは関数を呼び出す"
7106 "前に I<errno> を 0 に設定し、呼び出し後に I<errno> が 0 以外の値かどうかを確"
7107 "認しエラーが発生したかどうかを判断する 必要がある。"
7108
7109 #. type: Plain text
7110 #: build/C/man3/strtoul.3:200
7111 msgid ""
7112 "In locales other than the \"C\" locale, other strings may be accepted.  (For "
7113 "example, the thousands separator of the current locale may be supported.)"
7114 msgstr ""
7115 "\"C\" 以外のロケールの場合、その他の文字列も受け付けられるかもしれない。 (例"
7116 "えば、現在のロケールの 1000 毎の区切り文字に対応しているかもしれない。)"
7117
7118 #. type: Plain text
7119 #: build/C/man3/strtoul.3:206
7120 #, no-wrap
7121 msgid "B<u_quad_t strtouq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
7122 msgstr "B<u_quad_t strtouq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
7123
7124 #. type: Plain text
7125 #: build/C/man3/strtoul.3:215
7126 msgid ""
7127 "with completely analogous definition.  Depending on the wordsize of the "
7128 "current architecture, this may be equivalent to B<strtoull>()  or to "
7129 "B<strtoul>()."
7130 msgstr ""
7131 "という完全に同様の定義を持つ関数がある。 使用中のアーキテクチャのワード長次第"
7132 "であるが、この関数は B<strtoull>()  や B<stroul>()  と等価な場合もありえる。"
7133
7134 #. type: Plain text
7135 #: build/C/man3/strtoul.3:220
7136 msgid ""
7137 "Negative values are considered valid input and are silently converted to the "
7138 "equivalent I<unsigned long int> value."
7139 msgstr ""
7140 "負の値も正当な入力とみなされ、エラーもなく、 対応する I<unsigned long int> 型"
7141 "の値に変換される。"
7142
7143 #. type: Plain text
7144 #: build/C/man3/strtoul.3:231
7145 msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3)"
7146 msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3)"
7147
7148 #. type: TH
7149 #: build/C/man3/system.3:30
7150 #, no-wrap
7151 msgid "SYSTEM"
7152 msgstr "SYSTEM"
7153
7154 #. type: TH
7155 #: build/C/man3/system.3:30
7156 #, no-wrap
7157 msgid "2010-09-10"
7158 msgstr "2010-09-10"
7159
7160 #. type: Plain text
7161 #: build/C/man3/system.3:33
7162 msgid "system - execute a shell command"
7163 msgstr "system - シェルコマンドの実行"
7164
7165 #. type: Plain text
7166 #: build/C/man3/system.3:38
7167 #, no-wrap
7168 msgid "B<int system(const char *>I<command>B<);>\n"
7169 msgstr "B<int system(const char *>I<command>B<);>\n"
7170
7171 #. type: Plain text
7172 #: build/C/man3/system.3:54
7173 msgid ""
7174 "B<system>()  executes a command specified in I<command> by calling B</bin/sh "
7175 "-c> I<command>, and returns after the command has been completed.  During "
7176 "execution of the command, B<SIGCHLD> will be blocked, and B<SIGINT> and "
7177 "B<SIGQUIT> will be ignored."
7178 msgstr ""
7179 "B<system>()  は I<command> で指定したコマンドを B</bin/sh -c> I<command> の形"
7180 "で実行する。指定したコマンドが終了すればこの関数も終了する。 コマンド実行中"
7181 "は、 B<SIGCHLD> はブロックされ、 B<SIGINT> と B<SIGQUIT> は無視される。"
7182
7183 #. type: Plain text
7184 #: build/C/man3/system.3:69
7185 msgid ""
7186 "The value returned is -1 on error (e.g., B<fork>(2)  failed), and the return "
7187 "status of the command otherwise.  This latter return status is in the format "
7188 "specified in B<wait>(2).  Thus, the exit code of the command will be "
7189 "I<WEXITSTATUS(status)>.  In case I</bin/sh> could not be executed, the exit "
7190 "status will be that of a command that does I<exit(127)>."
7191 msgstr ""
7192 "エラーが発生した場合 (B<fork>(2)  に失敗した場合など)、-1 を返す。 そうでなけ"
7193 "れば、コマンドのステータスを返す。 後者の場合、ステータスは B<wait>(2)  で定"
7194 "義されているフォーマットで返ってくる。 従って、コマンドの終了コードは "
7195 "I<WEXITSTATUS(status)> で得ることが出来る。 I</bin/sh> が実行出来なかった場"
7196 "合、 終了ステータスはコマンドが I<exit(127)> を実行した場合と同じになる。"
7197
7198 #. type: Plain text
7199 #: build/C/man3/system.3:75
7200 msgid ""
7201 "If the value of I<command> is NULL, B<system>()  returns nonzero if the "
7202 "shell is available, and zero if not."
7203 msgstr ""
7204 "I<command> の値が NULL のときは、 B<system>()  はシェルが利用可能ならゼロ以外"
7205 "の値を返し、利用不可ならゼロを返す。"
7206
7207 #. type: Plain text
7208 #: build/C/man3/system.3:78
7209 msgid "B<system>()  does not affect the wait status of any other children."
7210 msgstr "B<system>()  は他の子プロセスのウエイトステータスには影響を与えない。"
7211
7212 #. type: Plain text
7213 #: build/C/man3/system.3:80
7214 msgid "C89, C99, POSIX.1-2001."
7215 msgstr "C89, C99, POSIX.1-2001."
7216
7217 #. type: Plain text
7218 #: build/C/man3/system.3:93
7219 msgid ""
7220 "If the B<_XOPEN_SOURCE> feature test macro is defined (before including "
7221 "I<any> header files), then the macros described in B<wait>(2)  "
7222 "(B<WEXITSTATUS>(), etc.) are made available when including I<E<lt>stdlib."
7223 "hE<gt>>."
7224 msgstr ""
7225 "(「どの」ヘッダファイルをインクルードするよりも前に)  機能検査マクロ "
7226 "B<_XOPEN_SOURCE> が定義された場合には、 B<wait>(2)  で説明されているマクロ群 "
7227 "(B<WEXITSTATUS>()  等) が I<E<lt>stdlib.hE<gt>> をインクルードすると利用可能"
7228 "になる。"
7229
7230 #. type: Plain text
7231 #: build/C/man3/system.3:104
7232 msgid ""
7233 "As mentioned, B<system>()  ignores B<SIGINT> and B<SIGQUIT>.  This may make "
7234 "programs that call it from a loop uninterruptible, unless they take care "
7235 "themselves to check the exit status of the child.  E.g."
7236 msgstr ""
7237 "既に述べたように、 B<system>()  は B<SIGINT> と B<SIGQUIT> を無視する。 よっ"
7238 "てループから B<system>()  を呼ぶプログラムは、 以下の例のように子プロセスの終"
7239 "了状態を自分でチェックしておかないと、 中断できなくなるかもしれない。"
7240
7241 #. type: Plain text
7242 #: build/C/man3/system.3:109
7243 #, no-wrap
7244 msgid ""
7245 "    while (something) {\n"
7246 "        int ret = system(\"foo\");\n"
7247 msgstr ""
7248 "    while (something) {\n"
7249 "        int ret = system(\"foo\");\n"
7250
7251 #. type: Plain text
7252 #: build/C/man3/system.3:114
7253 #, no-wrap
7254 msgid ""
7255 "        if (WIFSIGNALED(ret) &&\n"
7256 "            (WTERMSIG(ret) == SIGINT || WTERMSIG(ret) == SIGQUIT))\n"
7257 "                break;\n"
7258 "    }\n"
7259 msgstr ""
7260 "        if (WIFSIGNALED(ret) &&\n"
7261 "            (WTERMSIG(ret) == SIGINT || WTERMSIG(ret) == SIGQUIT))\n"
7262 "                break;\n"
7263 "    }\n"
7264
7265 #. type: Plain text
7266 #: build/C/man3/system.3:134
7267 msgid ""
7268 "Do not use B<system>()  from a program with set-user-ID or set-group-ID "
7269 "privileges, because strange values for some environment variables might be "
7270 "used to subvert system integrity.  Use the B<exec>(3)  family of functions "
7271 "instead, but not B<execlp>(3)  or B<execvp>(3).  B<system>()  will not, in "
7272 "fact, work properly from programs with set-user-ID or set-group-ID "
7273 "privileges on systems on which I</bin/sh> is bash version 2, since bash 2 "
7274 "drops privileges on startup.  (Debian uses a modified bash which does not do "
7275 "this when invoked as B<sh>.)"
7276 msgstr ""
7277 "set-user-ID や set-group-ID の特権をもつプログラムの中では B<system>()  を"
7278 "使ってはいけない。なぜなら、ある環境変数の未知の値によって システムの安全が損"
7279 "なわれるからである。代わりに B<exec>(3)  関連の関数群の中で B<execlp>(3)  と "
7280 "B<execvp>(3)  以外の関数を使用すべきである。 実際のところ、 B<system>()  は "
7281 "I</bin/sh> が bash バージョン 2 であるシステムでは、 set-user-ID や set-"
7282 "group-ID の特権を持つプログラムからは正しく動作しない。 なぜなら、bash バー"
7283 "ジョン 2 はスタートアップ時に特権を落とすからである。 (Debian では、sh として"
7284 "起動された時にはこのような動作を行なわないように 修正された bash を用いてい"
7285 "る)"
7286
7287 #. type: Plain text
7288 #: build/C/man3/system.3:148
7289 msgid ""
7290 "In versions of glibc before 2.1.3, the check for the availability of I</bin/"
7291 "sh> was not actually performed if I<command> was NULL; instead it was always "
7292 "assumed to be available, and B<system>()  always returned 1 in this case.  "
7293 "Since glibc 2.1.3, this check is performed because, even though POSIX.1-2001 "
7294 "requires a conforming implementation to provide a shell, that shell may not "
7295 "be available or executable if the calling program has previously called "
7296 "B<chroot>(2)  (which is not specified by POSIX.1-2001)."
7297 msgstr ""
7298 "glibc 2.1.3 より前のバージョンでは、 I<command> が NULL の場合に I</bin/sh> "
7299 "が利用可能かどうかのチェックは実際には行わず、 いつでも利用可能であるとみなし"
7300 "ていた。 B<system>()  はこの場合に常に 1 を返していた。 POSIX.1-2001 ではシェ"
7301 "ルが提供されているという標準に準拠した実装を 要求しているが、glibc 2.1.3 以降"
7302 "ではシェルのチェックを実行している。 なぜなら、呼び出し元のプログラムが "
7303 "B<system>()  を呼び出すより前に (POSIX.1-2001 では規定されていない)  "
7304 "B<chroot>(2)  を呼び出していた時には、シェルが利用可能でない場合や実行可能"
7305 "ファイル でない場合があるからである。"
7306
7307 #. type: Plain text
7308 #: build/C/man3/system.3:153
7309 msgid ""
7310 "It is possible for the shell command to return 127, so that code is not a "
7311 "sure indication that the B<execve>(2)  call failed."
7312 msgstr ""
7313 "実行したシェルコマンドが 127 (B</bin/sh> の呼び出しに失敗した時に返す値) を返"
7314 "すことも考えられる。 そのため、プログラムは (リターンコードを見るだけでは)  "
7315 "B<execve>(2)  の呼び出しが失敗したことを確実に知ることはできない。"
7316
7317 #. type: Plain text
7318 #: build/C/man3/system.3:158
7319 msgid "B<sh>(1), B<signal>(2), B<wait>(2), B<exec>(3)"
7320 msgstr "B<sh>(1), B<signal>(2), B<wait>(2), B<exec>(3)"
7321
7322 #. type: TH
7323 #: build/C/man7/vdso.7:13
7324 #, no-wrap
7325 msgid "VDSO"
7326 msgstr ""
7327
7328 #. type: TH
7329 #: build/C/man7/vdso.7:13
7330 #, fuzzy, no-wrap
7331 #| msgid "2013-02-14"
7332 msgid "2014-02-01"
7333 msgstr "2013-02-14"
7334
7335 #. type: Plain text
7336 #: build/C/man7/vdso.7:16
7337 msgid "vDSO - overview of the virtual ELF dynamic shared object"
7338 msgstr ""
7339
7340 #. type: Plain text
7341 #: build/C/man7/vdso.7:18
7342 #, fuzzy
7343 #| msgid "B<#include E<lt>sys/auxv.hE<gt>>\n"
7344 msgid "B<#include E<lt>sys/auxv.hE<gt>>"
7345 msgstr "B<#include E<lt>sys/auxv.hE<gt>>\n"
7346
7347 #. type: Plain text
7348 #: build/C/man7/vdso.7:20
7349 msgid "B<void *vdso = (uintptr_t) getauxval(AT_SYSINFO_EHDR);>"
7350 msgstr ""
7351
7352 #. type: Plain text
7353 #: build/C/man7/vdso.7:29
7354 msgid ""
7355 "The \"vDSO\" (virtual dynamic shared object) is a small shared library that "
7356 "the kernel automatically maps into the address space of all user-space "
7357 "applications.  Applications usually do not need to concern themselves with "
7358 "these details as the vDSO is most commonly called by the C library.  This "
7359 "way you can code in the normal way using standard functions and the C "
7360 "library will take care of using any functionality that is available via the "
7361 "vDSO."
7362 msgstr ""
7363
7364 #. type: Plain text
7365 #: build/C/man7/vdso.7:37
7366 msgid ""
7367 "Why does the vDSO exist at all? There are some system calls the kernel "
7368 "provides that user-space code ends up using frequently, to the point that "
7369 "such calls can dominate overall performance.  This is due both to the "
7370 "frequency of the call as well as the context-switch overhead that results "
7371 "from exiting user space and entering the kernel."
7372 msgstr ""
7373
7374 #. type: Plain text
7375 #: build/C/man7/vdso.7:42
7376 msgid ""
7377 "The rest of this documentation is geared toward the curious and/or C library "
7378 "writers rather than general developers.  If you're trying to call the vDSO "
7379 "in your own application rather than using the C library, you're most likely "
7380 "doing it wrong."
7381 msgstr ""
7382
7383 #. type: SS
7384 #: build/C/man7/vdso.7:42
7385 #, no-wrap
7386 msgid "Example background"
7387 msgstr ""
7388
7389 #. type: Plain text
7390 #: build/C/man7/vdso.7:56
7391 msgid ""
7392 "Making system calls can be slow.  In x86 32-bit systems, you can trigger a "
7393 "software interrupt (I<int $0x80>)  to tell the kernel you wish to make a "
7394 "system call.  However, this instruction is expensive: it goes through the "
7395 "full interrupt-handling paths in the processor's microcode as well as in the "
7396 "kernel.  Newer processors have faster (but backward incompatible) "
7397 "instructions to initiate system calls.  Rather than require the C library to "
7398 "figure out if this functionality is available at run time, the C library can "
7399 "use functions provided by the kernel in the vDSO."
7400 msgstr ""
7401
7402 #. type: Plain text
7403 #: build/C/man7/vdso.7:63
7404 msgid ""
7405 "Note that the terminology can be confusing.  On x86 systems, the vDSO "
7406 "function used to determine the preferred method of making a system call is "
7407 "named \"__kernel_vsyscall\", but on x86_64, the term \"vsyscall\" also "
7408 "refers to an obsolete way to ask the kernel what time it is or what CPU the "
7409 "caller is on."
7410 msgstr ""
7411
7412 #. type: Plain text
7413 #: build/C/man7/vdso.7:79
7414 msgid ""
7415 "One frequently used system call is B<gettimeofday>(2).  This system call is "
7416 "called both directly by user-space applications as well as indirectly by the "
7417 "C library.  Think timestamps or timing loops or polling\\(emall of these "
7418 "frequently need to know what time it is right now.  This information is also "
7419 "not secret\\(emany application in any privilege mode (root or any "
7420 "unprivileged user) will get the same answer.  Thus the kernel arranges for "
7421 "the information required to answer this question to be placed in memory the "
7422 "process can access.  Now a call to B<gettimeofday>(2)  changes from a system "
7423 "call to a normal function call and a few memory accesses."
7424 msgstr ""
7425
7426 #. type: SS
7427 #: build/C/man7/vdso.7:79
7428 #, no-wrap
7429 msgid "Finding the vDSO"
7430 msgstr ""
7431
7432 #. type: Plain text
7433 #: build/C/man7/vdso.7:86
7434 msgid ""
7435 "The base address of the vDSO (if one exists) is passed by the kernel to each "
7436 "program in the initial auxiliary vector (see B<getauxval>(3)), via the "
7437 "B<AT_SYSINFO_EHDR> tag."
7438 msgstr ""
7439
7440 #. type: Plain text
7441 #: build/C/man7/vdso.7:95
7442 msgid ""
7443 "You must not assume the vDSO is mapped at any particular location in the "
7444 "user's memory map.  The base address will usually be randomized at run time "
7445 "every time a new process image is created (at B<execve>(2)  time).  This is "
7446 "done for security reasons, to prevent \"return-to-libc\" attacks."
7447 msgstr ""
7448
7449 #. type: Plain text
7450 #: build/C/man7/vdso.7:104
7451 msgid ""
7452 "For some architectures, there is also an B<AT_SYSINFO> tag.  This is used "
7453 "only for locating the vsyscall entry point and is frequently omitted or set "
7454 "to 0 (meaning it's not available).  This tag is a throwback to the initial "
7455 "vDSO work (see I<History> below) and its use should be avoided."
7456 msgstr ""
7457
7458 #. type: SS
7459 #: build/C/man7/vdso.7:104
7460 #, no-wrap
7461 msgid "File format"
7462 msgstr ""
7463
7464 #. type: Plain text
7465 #: build/C/man7/vdso.7:111
7466 msgid ""
7467 "Since the vDSO is a fully formed ELF image, you can do symbol lookups on "
7468 "it.  This allows new symbols to be added with newer kernel releases, and "
7469 "allows the C library to detect available functionality at run time when "
7470 "running under different kernel versions.  Oftentimes the C library will do "
7471 "detection with the first call and then cache the result for subsequent calls."
7472 msgstr ""
7473
7474 #. type: Plain text
7475 #: build/C/man7/vdso.7:120
7476 msgid ""
7477 "All symbols are also versioned (using the GNU version format).  This allows "
7478 "the kernel to update the function signature without breaking backward "
7479 "compatibility.  This means changing the arguments that the function accepts "
7480 "as well as the return value.  Thus, when looking up a symbol in the vDSO, "
7481 "you must always include the version to match the ABI you expect."
7482 msgstr ""
7483
7484 #. type: Plain text
7485 #: build/C/man7/vdso.7:125
7486 msgid ""
7487 "Typically the vDSO follows the naming convention of prefixing all symbols "
7488 "with \"__vdso_\" or \"__kernel_\" so as to distinguish them from other "
7489 "standard symbols.  For example, the \"gettimeofday\" function is named "
7490 "\"__vdso_gettimeofday\"."
7491 msgstr ""
7492
7493 #. type: Plain text
7494 #: build/C/man7/vdso.7:129
7495 msgid ""
7496 "You use the standard C calling conventions when calling any of these "
7497 "functions.  No need to worry about weird register or stack behavior."
7498 msgstr ""
7499
7500 #. type: SS
7501 #: build/C/man7/vdso.7:130
7502 #, no-wrap
7503 msgid "Source"
7504 msgstr ""
7505
7506 #. type: Plain text
7507 #: build/C/man7/vdso.7:134
7508 msgid ""
7509 "When you compile the kernel, it will automatically compile and link the vDSO "
7510 "code for you.  You will frequently find it under the architecture-specific "
7511 "directory:"
7512 msgstr ""
7513
7514 #. type: Plain text
7515 #: build/C/man7/vdso.7:136
7516 #, no-wrap
7517 msgid "    find arch/$ARCH/ -name '*vdso*.so*' -o -name '*gate*.so*'\n"
7518 msgstr ""
7519
7520 #. type: SS
7521 #: build/C/man7/vdso.7:137
7522 #, no-wrap
7523 msgid "vDSO names"
7524 msgstr ""
7525
7526 #. type: Plain text
7527 #: build/C/man7/vdso.7:143
7528 msgid ""
7529 "The name of the vDSO varies across architectures.  It will often show up in "
7530 "things like glibc's B<ldd>(1)  output.  The exact name should not matter to "
7531 "any code, so do not hardcode it."
7532 msgstr ""
7533
7534 #. type: tbl table
7535 #: build/C/man7/vdso.7:148
7536 #, no-wrap
7537 msgid "user ABI\tvDSO name\n"
7538 msgstr ""
7539
7540 #. type: tbl table
7541 #: build/C/man7/vdso.7:149 build/C/man7/vdso.7:198 build/C/man7/vdso.7:235
7542 #: build/C/man7/vdso.7:263 build/C/man7/vdso.7:299 build/C/man7/vdso.7:333
7543 #: build/C/man7/vdso.7:359 build/C/man7/vdso.7:384 build/C/man7/vdso.7:402
7544 #: build/C/man7/vdso.7:420 build/C/man7/vdso.7:438 build/C/man7/vdso.7:458
7545 #: build/C/man7/vdso.7:477
7546 #, no-wrap
7547 msgid "_\n"
7548 msgstr ""
7549
7550 #. type: tbl table
7551 #: build/C/man7/vdso.7:150
7552 #, no-wrap
7553 msgid "aarch64\tlinux-vdso.so.1\n"
7554 msgstr ""
7555
7556 #. type: tbl table
7557 #: build/C/man7/vdso.7:151
7558 #, no-wrap
7559 msgid "ia64\tlinux-gate.so.1\n"
7560 msgstr ""
7561
7562 #. type: tbl table
7563 #: build/C/man7/vdso.7:152
7564 #, no-wrap
7565 msgid "ppc/32\tlinux-vdso32.so.1\n"
7566 msgstr ""
7567
7568 #. type: tbl table
7569 #: build/C/man7/vdso.7:153
7570 #, no-wrap
7571 msgid "ppc/64\tlinux-vdso64.so.1\n"
7572 msgstr ""
7573
7574 #. type: tbl table
7575 #: build/C/man7/vdso.7:154
7576 #, no-wrap
7577 msgid "s390\tlinux-vdso32.so.1\n"
7578 msgstr ""
7579
7580 #. type: tbl table
7581 #: build/C/man7/vdso.7:155
7582 #, no-wrap
7583 msgid "s390x\tlinux-vdso64.so.1\n"
7584 msgstr ""
7585
7586 #. type: tbl table
7587 #: build/C/man7/vdso.7:156
7588 #, no-wrap
7589 msgid "sh\tlinux-gate.so.1\n"
7590 msgstr ""
7591
7592 #. type: tbl table
7593 #: build/C/man7/vdso.7:157
7594 #, no-wrap
7595 msgid "i386\tlinux-gate.so.1\n"
7596 msgstr ""
7597
7598 #. type: tbl table
7599 #: build/C/man7/vdso.7:158
7600 #, no-wrap
7601 msgid "x86_64\tlinux-vdso.so.1\n"
7602 msgstr ""
7603
7604 #. type: tbl table
7605 #: build/C/man7/vdso.7:159
7606 #, no-wrap
7607 msgid "x86/x32\tlinux-vdso.so.1\n"
7608 msgstr ""
7609
7610 #. type: SH
7611 #: build/C/man7/vdso.7:165
7612 #, no-wrap
7613 msgid "ARCHITECTURE-SPECIFIC NOTES"
7614 msgstr ""
7615
7616 #. type: Plain text
7617 #: build/C/man7/vdso.7:168
7618 msgid "The subsections below provide architecture-specific notes on the vDSO."
7619 msgstr ""
7620
7621 #. type: Plain text
7622 #: build/C/man7/vdso.7:177
7623 msgid ""
7624 "Note that the vDSO that is used is based on the ABI of your user-space code "
7625 "and not the ABI of the kernel.  Thus, for example, when you run an i386 32-"
7626 "bit ELF binary, you'll get the same vDSO regardless of whether you run it "
7627 "under an i386 32-bit kernel or under an x86_64 64-bit kernel.  Therefore, "
7628 "the name of the user-space ABI should be used to determine which of the "
7629 "sections below is relevant."
7630 msgstr ""
7631
7632 #. type: SS
7633 #: build/C/man7/vdso.7:177
7634 #, no-wrap
7635 msgid "ARM functions"
7636 msgstr ""
7637
7638 #.  See linux/arch/arm/kernel/entry-armv.S
7639 #.  See linux/Documentation/arm/kernel_user_helpers.txt
7640 #. type: Plain text
7641 #: build/C/man7/vdso.7:184
7642 msgid ""
7643 "The ARM port has a code page full of utility functions.  Since it's just a "
7644 "raw page of code, there is no ELF information for doing symbol lookups or "
7645 "versioning.  It does provide support for different versions though."
7646 msgstr ""
7647
7648 #. type: Plain text
7649 #: build/C/man7/vdso.7:189
7650 msgid ""
7651 "For information on this code page, it's best to refer to the kernel "
7652 "documentation as it's extremely detailed and covers everything you need to "
7653 "know: I<Documentation/arm/kernel_user_helpers.txt>."
7654 msgstr ""
7655
7656 #. type: SS
7657 #: build/C/man7/vdso.7:189
7658 #, no-wrap
7659 msgid "aarch64 functions"
7660 msgstr ""
7661
7662 #.  See linux/arch/x86/vdso/vdso32.lds.S
7663 #. type: Plain text
7664 #: build/C/man7/vdso.7:192 build/C/man7/vdso.7:229 build/C/man7/vdso.7:353
7665 #: build/C/man7/vdso.7:378 build/C/man7/vdso.7:396 build/C/man7/vdso.7:414
7666 #: build/C/man7/vdso.7:432 build/C/man7/vdso.7:471
7667 msgid "The table below lists the symbols exported by the vDSO."
7668 msgstr ""
7669
7670 #. type: tbl table
7671 #: build/C/man7/vdso.7:197 build/C/man7/vdso.7:234 build/C/man7/vdso.7:332
7672 #: build/C/man7/vdso.7:358 build/C/man7/vdso.7:383 build/C/man7/vdso.7:401
7673 #: build/C/man7/vdso.7:419 build/C/man7/vdso.7:437 build/C/man7/vdso.7:457
7674 #: build/C/man7/vdso.7:476
7675 #, no-wrap
7676 msgid "symbol\tversion\n"
7677 msgstr ""
7678
7679 #. type: tbl table
7680 #: build/C/man7/vdso.7:199
7681 #, no-wrap
7682 msgid "__kernel_rt_sigreturn\tLINUX_2.6.39\n"
7683 msgstr ""
7684
7685 #. type: tbl table
7686 #: build/C/man7/vdso.7:200
7687 #, no-wrap
7688 msgid "__kernel_gettimeofday\tLINUX_2.6.39\n"
7689 msgstr ""
7690
7691 #. type: tbl table
7692 #: build/C/man7/vdso.7:201
7693 #, no-wrap
7694 msgid "__kernel_clock_gettime\tLINUX_2.6.39\n"
7695 msgstr ""
7696
7697 #. type: tbl table
7698 #: build/C/man7/vdso.7:202
7699 #, no-wrap
7700 msgid "__kernel_clock_getres\tLINUX_2.6.39\n"
7701 msgstr ""
7702
7703 #. type: SS
7704 #: build/C/man7/vdso.7:208
7705 #, no-wrap
7706 msgid "bfin (Blackfin) functions"
7707 msgstr ""
7708
7709 #.  See linux/arch/blackfin/kernel/fixed_code.S
7710 #.  See http://docs.blackfin.uclinux.org/doku.php?id=linux-kernel:fixed-code
7711 #. type: Plain text
7712 #: build/C/man7/vdso.7:220
7713 msgid ""
7714 "As this CPU lacks a memory management unit (MMU), it doesn't set up a vDSO "
7715 "in the normal sense.  Instead, it maps at boot time a few raw functions into "
7716 "a fixed location in memory.  User-space applications then call directly into "
7717 "that region.  There is no provision for backward compatibility beyond "
7718 "sniffing raw opcodes, but as this is an embedded CPU, it can get away with "
7719 "things\\(emsome of the object formats it runs aren't even ELF based (they're "
7720 "bFLT/FLAT)."
7721 msgstr ""
7722
7723 #. type: Plain text
7724 #: build/C/man7/vdso.7:223
7725 msgid ""
7726 "For information on this code page, it's best to refer to the public "
7727 "documentation:"
7728 msgstr ""
7729
7730 #. type: Plain text
7731 #: build/C/man7/vdso.7:225
7732 msgid "http://docs.blackfin.uclinux.org/doku.php?id=linux-kernel:fixed-code"
7733 msgstr ""
7734
7735 #. type: SS
7736 #: build/C/man7/vdso.7:225
7737 #, no-wrap
7738 msgid "ia64 (Itanium) functions"
7739 msgstr ""
7740
7741 #. type: tbl table
7742 #: build/C/man7/vdso.7:236
7743 #, no-wrap
7744 msgid "__kernel_sigtramp\tLINUX_2.5\n"
7745 msgstr ""
7746
7747 #. type: tbl table
7748 #: build/C/man7/vdso.7:237
7749 #, no-wrap
7750 msgid "__kernel_syscall_via_break\tLINUX_2.5\n"
7751 msgstr ""
7752
7753 #. type: tbl table
7754 #: build/C/man7/vdso.7:238
7755 #, no-wrap
7756 msgid "__kernel_syscall_via_epc\tLINUX_2.5\n"
7757 msgstr ""
7758
7759 #. type: Plain text
7760 #: build/C/man7/vdso.7:257
7761 msgid ""
7762 "The Itanium port is somewhat tricky.  In addition to the vDSO above, it also "
7763 "has \"light-weight system calls\" (also known as \"fast syscalls\" or \"fsys"
7764 "\").  You can invoke these via the I<__kernel_syscall_via_epc> vDSO helper.  "
7765 "The system calls listed here have the same semantics as if you called them "
7766 "directly via B<syscall>(2), so refer to the relevant documentation for "
7767 "each.  The table below lists the functions available via this mechanism."
7768 msgstr ""
7769
7770 #. type: tbl table
7771 #: build/C/man7/vdso.7:262
7772 #, no-wrap
7773 msgid "function\n"
7774 msgstr ""
7775
7776 #. type: tbl table
7777 #: build/C/man7/vdso.7:264
7778 #, no-wrap
7779 msgid "clock_gettime\n"
7780 msgstr ""
7781
7782 #. type: tbl table
7783 #: build/C/man7/vdso.7:265
7784 #, no-wrap
7785 msgid "getcpu\n"
7786 msgstr ""
7787
7788 #. type: tbl table
7789 #: build/C/man7/vdso.7:266
7790 #, no-wrap
7791 msgid "getpid\n"
7792 msgstr ""
7793
7794 #. type: tbl table
7795 #: build/C/man7/vdso.7:267
7796 #, no-wrap
7797 msgid "getppid\n"
7798 msgstr ""
7799
7800 #. type: tbl table
7801 #: build/C/man7/vdso.7:268
7802 #, no-wrap
7803 msgid "gettimeofday\n"
7804 msgstr ""
7805
7806 #. type: tbl table
7807 #: build/C/man7/vdso.7:269
7808 #, no-wrap
7809 msgid "set_tid_address\n"
7810 msgstr ""
7811
7812 #. type: SS
7813 #: build/C/man7/vdso.7:275
7814 #, no-wrap
7815 msgid "parisc (hppa) functions"
7816 msgstr ""
7817
7818 #.  See linux/arch/parisc/kernel/syscall.S
7819 #.  See linux/Documentation/parisc/registers
7820 #. type: Plain text
7821 #: build/C/man7/vdso.7:286
7822 msgid ""
7823 "The parisc port has a code page full of utility functions called a gateway "
7824 "page.  Rather than use the normal ELF auxiliary vector approach, it passes "
7825 "the address of the page to the process via the SR2 register.  The "
7826 "permissions on the page are such that merely executing those addresses "
7827 "automatically executes with kernel privileges and not in user space.  This "
7828 "is done to match the way HP-UX works."
7829 msgstr ""
7830
7831 #. type: Plain text
7832 #: build/C/man7/vdso.7:291
7833 msgid ""
7834 "Since it's just a raw page of code, there is no ELF information for doing "
7835 "symbol lookups or versioning.  Simply call into the appropriate offset via "
7836 "the branch instruction, for example:"
7837 msgstr ""
7838
7839 #. type: Plain text
7840 #: build/C/man7/vdso.7:293
7841 #, no-wrap
7842 msgid "    ble E<lt>offsetE<gt>(%sr2, %r0)\n"
7843 msgstr ""
7844
7845 #. type: tbl table
7846 #: build/C/man7/vdso.7:298
7847 #, no-wrap
7848 msgid "offset\tfunction\n"
7849 msgstr ""
7850
7851 #. type: tbl table
7852 #: build/C/man7/vdso.7:300
7853 #, no-wrap
7854 msgid "00b0\tlws_entry\n"
7855 msgstr ""
7856
7857 #. type: tbl table
7858 #: build/C/man7/vdso.7:301
7859 #, no-wrap
7860 msgid "00e0\tset_thread_pointer\n"
7861 msgstr ""
7862
7863 #. type: tbl table
7864 #: build/C/man7/vdso.7:302
7865 #, no-wrap
7866 msgid "0100\tlinux_gateway_entry (syscall)\n"
7867 msgstr ""
7868
7869 #. type: tbl table
7870 #: build/C/man7/vdso.7:303
7871 #, no-wrap
7872 msgid "0268\tsyscall_nosys\n"
7873 msgstr ""
7874
7875 #. type: tbl table
7876 #: build/C/man7/vdso.7:304
7877 #, no-wrap
7878 msgid "0274\ttracesys\n"
7879 msgstr ""
7880
7881 #. type: tbl table
7882 #: build/C/man7/vdso.7:305
7883 #, no-wrap
7884 msgid "0324\ttracesys_next\n"
7885 msgstr ""
7886
7887 #. type: tbl table
7888 #: build/C/man7/vdso.7:306
7889 #, no-wrap
7890 msgid "0368\ttracesys_exit\n"
7891 msgstr ""
7892
7893 #. type: tbl table
7894 #: build/C/man7/vdso.7:307
7895 #, no-wrap
7896 msgid "03a0\ttracesys_sigexit\n"
7897 msgstr ""
7898
7899 #. type: tbl table
7900 #: build/C/man7/vdso.7:308
7901 #, no-wrap
7902 msgid "03b8\tlws_start\n"
7903 msgstr ""
7904
7905 #. type: tbl table
7906 #: build/C/man7/vdso.7:309
7907 #, no-wrap
7908 msgid "03dc\tlws_exit_nosys\n"
7909 msgstr ""
7910
7911 #. type: tbl table
7912 #: build/C/man7/vdso.7:310
7913 #, no-wrap
7914 msgid "03e0\tlws_exit\n"
7915 msgstr ""
7916
7917 #. type: tbl table
7918 #: build/C/man7/vdso.7:311
7919 #, no-wrap
7920 msgid "03e4\tlws_compare_and_swap64\n"
7921 msgstr ""
7922
7923 #. type: tbl table
7924 #: build/C/man7/vdso.7:312
7925 #, no-wrap
7926 msgid "03e8\tlws_compare_and_swap\n"
7927 msgstr ""
7928
7929 #. type: tbl table
7930 #: build/C/man7/vdso.7:313
7931 #, no-wrap
7932 msgid "0404\tcas_wouldblock\n"
7933 msgstr ""
7934
7935 #. type: tbl table
7936 #: build/C/man7/vdso.7:314
7937 #, no-wrap
7938 msgid "0410\tcas_action\n"
7939 msgstr ""
7940
7941 #. type: SS
7942 #: build/C/man7/vdso.7:320
7943 #, no-wrap
7944 msgid "ppc/32 functions"
7945 msgstr ""
7946
7947 #.  See linux/arch/powerpc/kernel/vdso32/vdso32.lds.S
7948 #. type: Plain text
7949 #: build/C/man7/vdso.7:327
7950 msgid ""
7951 "The table below lists the symbols exported by the vDSO.  The functions "
7952 "marked with a I<*> are available only when the kernel is a PowerPC64 (64-"
7953 "bit) kernel."
7954 msgstr ""
7955
7956 #. type: tbl table
7957 #: build/C/man7/vdso.7:334 build/C/man7/vdso.7:360
7958 #, no-wrap
7959 msgid "__kernel_clock_getres\tLINUX_2.6.15\n"
7960 msgstr ""
7961
7962 #. type: tbl table
7963 #: build/C/man7/vdso.7:335 build/C/man7/vdso.7:361
7964 #, no-wrap
7965 msgid "__kernel_clock_gettime\tLINUX_2.6.15\n"
7966 msgstr ""
7967
7968 #. type: tbl table
7969 #: build/C/man7/vdso.7:336 build/C/man7/vdso.7:362
7970 #, no-wrap
7971 msgid "__kernel_datapage_offset\tLINUX_2.6.15\n"
7972 msgstr ""
7973
7974 #. type: tbl table
7975 #: build/C/man7/vdso.7:337 build/C/man7/vdso.7:363
7976 #, no-wrap
7977 msgid "__kernel_get_syscall_map\tLINUX_2.6.15\n"
7978 msgstr ""
7979
7980 #. type: tbl table
7981 #: build/C/man7/vdso.7:338 build/C/man7/vdso.7:364
7982 #, no-wrap
7983 msgid "__kernel_get_tbfreq\tLINUX_2.6.15\n"
7984 msgstr ""
7985
7986 #. type: tbl table
7987 #: build/C/man7/vdso.7:339
7988 #, no-wrap
7989 msgid "__kernel_getcpu I<*>\tLINUX_2.6.15\n"
7990 msgstr ""
7991
7992 #. type: tbl table
7993 #: build/C/man7/vdso.7:340 build/C/man7/vdso.7:366
7994 #, no-wrap
7995 msgid "__kernel_gettimeofday\tLINUX_2.6.15\n"
7996 msgstr ""
7997
7998 #. type: tbl table
7999 #: build/C/man7/vdso.7:341
8000 #, no-wrap
8001 msgid "__kernel_sigtramp_rt32\tLINUX_2.6.15\n"
8002 msgstr ""
8003
8004 #. type: tbl table
8005 #: build/C/man7/vdso.7:342
8006 #, no-wrap
8007 msgid "__kernel_sigtramp32\tLINUX_2.6.15\n"
8008 msgstr ""
8009
8010 #. type: tbl table
8011 #: build/C/man7/vdso.7:343 build/C/man7/vdso.7:368
8012 #, no-wrap
8013 msgid "__kernel_sync_dicache\tLINUX_2.6.15\n"
8014 msgstr ""
8015
8016 #. type: tbl table
8017 #: build/C/man7/vdso.7:344 build/C/man7/vdso.7:369
8018 #, no-wrap
8019 msgid "__kernel_sync_dicache_p5\tLINUX_2.6.15\n"
8020 msgstr ""
8021
8022 #. type: SS
8023 #: build/C/man7/vdso.7:350
8024 #, no-wrap
8025 msgid "ppc/64 functions"
8026 msgstr ""
8027
8028 #. type: tbl table
8029 #: build/C/man7/vdso.7:365
8030 #, no-wrap
8031 msgid "__kernel_getcpu\tLINUX_2.6.15\n"
8032 msgstr ""
8033
8034 #. type: tbl table
8035 #: build/C/man7/vdso.7:367
8036 #, no-wrap
8037 msgid "__kernel_sigtramp_rt64\tLINUX_2.6.15\n"
8038 msgstr ""
8039
8040 #. type: SS
8041 #: build/C/man7/vdso.7:375
8042 #, no-wrap
8043 msgid "s390 functions"
8044 msgstr ""
8045
8046 #. type: tbl table
8047 #: build/C/man7/vdso.7:385 build/C/man7/vdso.7:403
8048 #, no-wrap
8049 msgid "__kernel_clock_getres\tLINUX_2.6.29\n"
8050 msgstr ""
8051
8052 #. type: tbl table
8053 #: build/C/man7/vdso.7:386 build/C/man7/vdso.7:404
8054 #, no-wrap
8055 msgid "__kernel_clock_gettime\tLINUX_2.6.29\n"
8056 msgstr ""
8057
8058 #. type: tbl table
8059 #: build/C/man7/vdso.7:387 build/C/man7/vdso.7:405
8060 #, no-wrap
8061 msgid "__kernel_gettimeofday\tLINUX_2.6.29\n"
8062 msgstr ""
8063
8064 #. type: SS
8065 #: build/C/man7/vdso.7:393
8066 #, no-wrap
8067 msgid "s390x functions"
8068 msgstr ""
8069
8070 #. type: SS
8071 #: build/C/man7/vdso.7:411
8072 #, no-wrap
8073 msgid "sh (SuperH) functions"
8074 msgstr ""
8075
8076 #. type: tbl table
8077 #: build/C/man7/vdso.7:421
8078 #, no-wrap
8079 msgid "__kernel_rt_sigreturn\tLINUX_2.6\n"
8080 msgstr ""
8081
8082 #. type: tbl table
8083 #: build/C/man7/vdso.7:422
8084 #, no-wrap
8085 msgid "__kernel_sigreturn\tLINUX_2.6\n"
8086 msgstr ""
8087
8088 #. type: tbl table
8089 #: build/C/man7/vdso.7:423
8090 #, no-wrap
8091 msgid "__kernel_vsyscall\tLINUX_2.6\n"
8092 msgstr ""
8093
8094 #. type: SS
8095 #: build/C/man7/vdso.7:429
8096 #, no-wrap
8097 msgid "i386 functions"
8098 msgstr ""
8099
8100 #. type: tbl table
8101 #: build/C/man7/vdso.7:439
8102 #, no-wrap
8103 msgid "__kernel_sigreturn\tLINUX_2.5\n"
8104 msgstr ""
8105
8106 #. type: tbl table
8107 #: build/C/man7/vdso.7:440
8108 #, no-wrap
8109 msgid "__kernel_rt_sigreturn\tLINUX_2.5\n"
8110 msgstr ""
8111
8112 #. type: tbl table
8113 #: build/C/man7/vdso.7:441
8114 #, no-wrap
8115 msgid "__kernel_vsyscall\tLINUX_2.5\n"
8116 msgstr ""
8117
8118 #. type: SS
8119 #: build/C/man7/vdso.7:447
8120 #, no-wrap
8121 msgid "x86_64 functions"
8122 msgstr ""
8123
8124 #.  See linux/arch/x86/vdso/vdso.lds.S
8125 #. type: Plain text
8126 #: build/C/man7/vdso.7:452
8127 msgid ""
8128 "The table below lists the symbols exported by the vDSO.  All of these "
8129 "symbols are also available without the \"__vdso_\" prefix, but you should "
8130 "ignore those and stick to the names below."
8131 msgstr ""
8132
8133 #. type: tbl table
8134 #: build/C/man7/vdso.7:459 build/C/man7/vdso.7:478
8135 #, no-wrap
8136 msgid "__vdso_clock_gettime\tLINUX_2.6\n"
8137 msgstr ""
8138
8139 #. type: tbl table
8140 #: build/C/man7/vdso.7:460 build/C/man7/vdso.7:479
8141 #, no-wrap
8142 msgid "__vdso_getcpu\tLINUX_2.6\n"
8143 msgstr ""
8144
8145 #. type: tbl table
8146 #: build/C/man7/vdso.7:461 build/C/man7/vdso.7:480
8147 #, no-wrap
8148 msgid "__vdso_gettimeofday\tLINUX_2.6\n"
8149 msgstr ""
8150
8151 #. type: tbl table
8152 #: build/C/man7/vdso.7:462 build/C/man7/vdso.7:481
8153 #, no-wrap
8154 msgid "__vdso_time\tLINUX_2.6\n"
8155 msgstr ""
8156
8157 #. type: SS
8158 #: build/C/man7/vdso.7:468
8159 #, no-wrap
8160 msgid "x86/x32 functions"
8161 msgstr ""
8162
8163 #. type: SS
8164 #: build/C/man7/vdso.7:487
8165 #, no-wrap
8166 msgid "History"
8167 msgstr ""
8168
8169 #. type: Plain text
8170 #: build/C/man7/vdso.7:494
8171 msgid ""
8172 "The vDSO was originally just a single function\\(emthe vsyscall.  In older "
8173 "kernels, you might see that name in a process's memory map rather than \"vdso"
8174 "\".  Over time, people realized that this mechanism was a great way to pass "
8175 "more functionality to user space, so it was reconceived as a vDSO in the "
8176 "current format."
8177 msgstr ""
8178
8179 #. type: Plain text
8180 #: build/C/man7/vdso.7:498
8181 #, fuzzy
8182 #| msgid "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"
8183 msgid "B<syscalls>(2), B<getauxval>(3), B<proc>(5)"
8184 msgstr "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"
8185
8186 #. type: Plain text
8187 #: build/C/man7/vdso.7:500
8188 msgid "The documents, examples, and source code in the Linux source code tree:"
8189 msgstr ""
8190
8191 #. type: Plain text
8192 #: build/C/man7/vdso.7:506
8193 #, no-wrap
8194 msgid ""
8195 "Documentation/ABI/stable/vdso\n"
8196 "Documentation/ia64/fsys.txt\n"
8197 "Documentation/vDSO/* (includes examples of using the vDSO)\n"
8198 msgstr ""
8199
8200 #. type: Plain text
8201 #: build/C/man7/vdso.7:508
8202 #, no-wrap
8203 msgid "find arch/ -iname '*vdso*' -o -iname '*gate*'\n"
8204 msgstr ""
8205
8206 #. type: TH
8207 #: build/C/man3/wcstombs.3:16
8208 #, no-wrap
8209 msgid "WCSTOMBS"
8210 msgstr "WCSTOMBS"
8211
8212 #. type: Plain text
8213 #: build/C/man3/wcstombs.3:19
8214 msgid "wcstombs - convert a wide-character string to a multibyte string"
8215 msgstr "wcstombs - ワイド文字列をマルチバイト文字列に変換する"
8216
8217 #. type: Plain text
8218 #: build/C/man3/wcstombs.3:24
8219 #, no-wrap
8220 msgid "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
8221 msgstr "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
8222
8223 #. type: Plain text
8224 #: build/C/man3/wcstombs.3:42
8225 #, fuzzy
8226 #| msgid ""
8227 #| "If I<dest> is not a NULL pointer, the B<wcstombs>()  function converts "
8228 #| "the wide-character string I<src> to a multibyte string starting at "
8229 #| "I<dest>.  At most I<n> bytes are written to I<dest>.  The conversion "
8230 #| "starts in the initial state.  The conversion can stop for three reasons:"
8231 msgid ""
8232 "If I<dest> is not NULL, the B<wcstombs>()  function converts the wide-"
8233 "character string I<src> to a multibyte string starting at I<dest>.  At most "
8234 "I<n> bytes are written to I<dest>.  The conversion starts in the initial "
8235 "state.  The conversion can stop for three reasons:"
8236 msgstr ""
8237 "I<dest> が NULL ポインタでない場合、 B<wcstombs>()  関数は ワイド文字列 "
8238 "I<src> を I<dest> から始まるマルチバイト文字列に 変換する。I<dest> には最大"
8239 "で I<n> バイトが書き込まれる。 変換は初期状態で開始される。変換は以下の3つの"
8240 "理由により停止する。"
8241
8242 #. type: Plain text
8243 #: build/C/man3/wcstombs.3:48
8244 msgid ""
8245 "1. A wide character has been encountered that can not be represented as a "
8246 "multibyte sequence (according to the current locale).  In this case I<"
8247 "(size_t)\\ -1> is returned."
8248 msgstr ""
8249 "1. (現在のロケールにおける)マルチバイト列で表現できないワイド文字に 遭遇した"
8250 "場合。この場合には I<(size_t)\\ -1> が返される。"
8251
8252 #. type: Plain text
8253 #: build/C/man3/wcstombs.3:53
8254 msgid ""
8255 "2. The length limit forces a stop.  In this case the number of bytes written "
8256 "to I<dest> is returned, but the shift state at this point is lost."
8257 msgstr ""
8258 "2. 長さ制限によって強制停止させられた場合。この場合には I<dest> に 書き込まれ"
8259 "たバイト数が返される。しかしこの時点でのシフト状態は失われる。"
8260
8261 #. type: Plain text
8262 #: build/C/man3/wcstombs.3:60
8263 msgid ""
8264 "3. The wide-character string has been completely converted, including the "
8265 "terminating null wide character (L\\(aq\\e0\\(aq).  In this case the "
8266 "conversion ends in the initial state.  The number of bytes written to "
8267 "I<dest>, excluding the terminating null byte (\\(aq\\e0\\(aq), is returned."
8268 msgstr ""
8269 "3. ワイド文字列が終端の NULL ワイド文字 (L\\(aq\\e0\\(aq) を含めて完全に変換"
8270 "された場合。\n"
8271 "この場合には変換は初期状態で終了し、 I<dest> に書き込まれたバイト数を返す\n"
8272 "(終端の NULL バイト (\\(aq\\e0\\(aq) は含まれない)。"
8273
8274 #. type: Plain text
8275 #: build/C/man3/wcstombs.3:66
8276 msgid ""
8277 "The programmer must ensure that there is room for at least I<n> bytes at "
8278 "I<dest>."
8279 msgstr ""
8280 "プログラマーは I<dest> に最低でも I<n> バイトの空きがあることを 保証しなけれ"
8281 "ばならない。"
8282
8283 #. type: Plain text
8284 #: build/C/man3/wcstombs.3:74
8285 #, fuzzy
8286 #| msgid ""
8287 #| "If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as "
8288 #| "above, except that the converted bytes are not written out to memory, and "
8289 #| "that no length limit exists."
8290 msgid ""
8291 "If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
8292 "except that the converted bytes are not written out to memory, and no length "
8293 "limit exists."
8294 msgstr ""
8295 "I<dest> が NULL の場合、I<n> は無視される。上記と同様に変換が行 なわれるが変"
8296 "換結果のバイト列はメモリには書き込まれない。 また長さの上限が存在しない。"
8297
8298 #. type: Plain text
8299 #: build/C/man3/wcstombs.3:79
8300 #, fuzzy
8301 #| msgid ""
8302 #| "In order to avoid the case 2 above, the programmer should make sure I<n> "
8303 #| "is greater or equal to I<wcstombs(NULL,src,0)+1>."
8304 msgid ""
8305 "In order to avoid the case 2 above, the programmer should make sure I<n> is "
8306 "greater than or equal to I<wcstombs(NULL,src,0)+1>."
8307 msgstr ""
8308 "上記の 2. の場合を避けるために、プログラマーは I<n> が I<wcstombs(NULL,"
8309 "src,0)+1> 以上であることを保証しなければならない。"
8310
8311 #. type: Plain text
8312 #: build/C/man3/wcstombs.3:89
8313 #, fuzzy
8314 #| msgid ""
8315 #| "The B<wcstombs>()  function returns the number of bytes that make up the "
8316 #| "converted part of multibyte sequence, not including the terminating null "
8317 #| "byte.  If a wide character was encountered which could not be converted, "
8318 #| "I<(size_t)\\ -1> is returned."
8319 msgid ""
8320 "The B<wcstombs>()  function returns the number of bytes that make up the "
8321 "converted part of a multibyte sequence, not including the terminating null "
8322 "byte.  If a wide character was encountered which could not be converted, I<"
8323 "(size_t)\\ -1> is returned."
8324 msgstr ""
8325 "B<wcstombs>()  関数は生成したマルチバイト列のバイト数を返す。終端の ナル文字"
8326 "は含まない。もし変換できないワイド文字に遭遇した場合には I<(size_t)\\ -1> を"
8327 "返す。"
8328
8329 #. type: Plain text
8330 #: build/C/man3/wcstombs.3:98
8331 msgid ""
8332 "The behavior of B<wcstombs>()  depends on the B<LC_CTYPE> category of the "
8333 "current locale."
8334 msgstr ""
8335 "B<wcstombs>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
8336
8337 #. type: Plain text
8338 #: build/C/man3/wcstombs.3:103
8339 msgid ""
8340 "The function B<wcsrtombs>(3)  provides a thread safe interface to the same "
8341 "functionality."
8342 msgstr ""
8343 "B<wcsrtombs>()  関数は同じ機能のためのスレッド・セーフな インターフェースを提"
8344 "供する。"
8345
8346 #. type: Plain text
8347 #: build/C/man3/wcstombs.3:109
8348 #, fuzzy
8349 #| msgid ""
8350 #| "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>"
8351 #| "(3), B<wctomb>(3)"
8352 msgid "B<mblen>(3), B<mbtowc>(3), B<mbstowcs>(3), B<wcsrtombs>(3)  B<wctom>(3)"
8353 msgstr ""
8354 "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>(3), "
8355 "B<wctomb>(3)"
8356
8357 #. type: TH
8358 #: build/C/man3/wctomb.3:16
8359 #, no-wrap
8360 msgid "WCTOMB"
8361 msgstr "WCTOMB"
8362
8363 #. type: Plain text
8364 #: build/C/man3/wctomb.3:19
8365 msgid "wctomb - convert a wide character to a multibyte sequence"
8366 msgstr "wctomb - ワイド文字をマルチバイト列に変換する。"
8367
8368 #. type: Plain text
8369 #: build/C/man3/wctomb.3:24
8370 #, no-wrap
8371 msgid "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
8372 msgstr "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
8373
8374 #. type: Plain text
8375 #: build/C/man3/wctomb.3:45
8376 msgid ""
8377 "If I<s> is not NULL, the B<wctomb>()  function converts the wide character "
8378 "I<wc> to its multibyte representation and stores it at the beginning of the "
8379 "character array pointed to by I<s>.  It updates the shift state, which is "
8380 "stored in a static anonymous variable known only to the B<wctomb>()  "
8381 "function, and returns the length of said multibyte representation, that is, "
8382 "the number of bytes written at I<s>."
8383 msgstr ""
8384 "I<s> が NULL でなければ、 B<wctomb>()  関数はワイド文字 I<wc> を マルチバイト"
8385 "表現に変換して I<s> の指す文字配列に格納する。 同時に wctomb 関数のみが使用す"
8386 "る静的で名前のないシフト状態を更新する。 この関数はマルチバイト表現の長さ、す"
8387 "なわち I<s> に書き込まれた バイト数を返す。"
8388
8389 #. type: Plain text
8390 #: build/C/man3/wctomb.3:51
8391 msgid ""
8392 "The programmer must ensure that there is room for at least B<MB_CUR_MAX> "
8393 "bytes at I<s>."
8394 msgstr ""
8395 "プログラマーは I<s> に少なくとも B<MB_CUR_MAX> バイトの空きがあることを保証し"
8396 "なければならない。"
8397
8398 #.  The Dinkumware doc and the Single UNIX specification say this, but
8399 #.  glibc doesn't implement this.
8400 #. type: Plain text
8401 #: build/C/man3/wctomb.3:63
8402 msgid ""
8403 "If I<s> is NULL, the B<wctomb>()  function resets the shift state, known "
8404 "only to this function, to the initial state, and returns nonzero if the "
8405 "encoding has nontrivial shift state, or zero if the encoding is stateless."
8406 msgstr ""
8407 "I<s> が NULL ならば、 B<wctomb>()  関数は自分のみが使用するシフト状態を 初期"
8408 "状態に戻して、文字符号がシフト状態に依存しているならばゼロ以外を シフト状態に"
8409 "依存しない場合にはゼロを返す。"
8410
8411 #. type: Plain text
8412 #: build/C/man3/wctomb.3:77
8413 msgid ""
8414 "If I<s> is not NULL, the B<wctomb>()  function returns the number of bytes "
8415 "that have been written to the byte array at I<s>.  If I<wc> can not be "
8416 "represented as a multibyte sequence (according to the current locale), -1 is "
8417 "returned."
8418 msgstr ""
8419 "I<s> が NULL でない場合 B<wctomb>()  関数はバイト配列 I<s> に 書き込まれたバ"
8420 "イト数を返す。I<wc> が(現在のロケールにおいて)  マルチバイト列で表現できない"
8421 "場合には -1 を返す。"
8422
8423 #. type: Plain text
8424 #: build/C/man3/wctomb.3:84
8425 msgid ""
8426 "If I<s> is NULL, the B<wctomb>()  function returns nonzero if the encoding "
8427 "has nontrivial shift state, or zero if the encoding is stateless."
8428 msgstr ""
8429 "I<s> が NULL の場合 B<wctomb>()  関数は文字符号がシフト状態に 依存している場"
8430 "合にはゼロ以外、シフト状態に依存しない場合はゼロを返す。"
8431
8432 #. type: Plain text
8433 #: build/C/man3/wctomb.3:89
8434 msgid "The B<wctomb>()  function is not thread-safe."
8435 msgstr "B<wctomb>() 関数はスレッドセーフではない。"
8436
8437 #. type: Plain text
8438 #: build/C/man3/wctomb.3:98
8439 msgid ""
8440 "The behavior of B<wctomb>()  depends on the B<LC_CTYPE> category of the "
8441 "current locale."
8442 msgstr ""
8443 "B<wctomb>()  関数の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存してい"
8444 "る。"
8445
8446 #. type: Plain text
8447 #: build/C/man3/wctomb.3:103
8448 msgid ""
8449 "The function B<wcrtomb>(3)  provides a better interface to the same "
8450 "functionality."
8451 msgstr "B<wcrtomb>(3)  関数は同じ機能のより良いインタフェースを提供する。"
8452
8453 #. type: Plain text
8454 #: build/C/man3/wctomb.3:110
8455 #, fuzzy
8456 #| msgid ""
8457 #| "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>"
8458 #| "(3), B<wctomb>(3)"
8459 msgid ""
8460 "B<MB_CUR_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcrtomb>(3), "
8461 "B<wcstombs>(3)"
8462 msgstr ""
8463 "B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>(3), "
8464 "B<wctomb>(3)"
8465
8466 #~ msgid "2012-08-03"
8467 #~ msgstr "2012-08-03"
8468
8469 #~ msgid "2012-11-07"
8470 #~ msgstr "2012-11-07"
8471
8472 #~ msgid "2012-05-10"
8473 #~ msgstr "2012-05-10"
8474
8475 #~ msgid "2011-09-28"
8476 #~ msgstr "2011-09-28"
8477
8478 #~ msgid "B<mbsrtowcs>(3), B<wcstombs>(3)"
8479 #~ msgstr "B<mbsrtowcs>(3), B<wcstombs>(3)"
8480
8481 #~ msgid "B<MB_CUR_MAX>(3), B<mbrtowc>(3), B<mbstowcs>(3)"
8482 #~ msgstr "B<MB_CUR_MAX>(3), B<mbrtowc>(3), B<mbstowcs>(3)"
8483
8484 #~ msgid ""
8485 #~ "The B<mkostemp>()  function is like B<mkstemp>(), with the difference "
8486 #~ "that flags as for B<open>(2)  may be specified in I<flags> (e.g., "
8487 #~ "B<O_APPEND>, B<O_SYNC>)."
8488 #~ msgstr ""
8489 #~ "B<mkostemp>() 関数は B<mkstemp>() と同様だが、B<open>(2) に渡される\n"
8490 #~ "フラグ O_APPENDB<,> B<O_SYNC> など) を I<flags> で指定できる点が異なる"
8491
8492 #~ msgid "2013-07-22"
8493 #~ msgstr "2013-07-04"
8494
8495 #~ msgid "2010-10-01"
8496 #~ msgstr "2010-10-01"
8497
8498 #~ msgid "2009-09-20"
8499 #~ msgstr "2009-09-20"
8500
8501 #~ msgid "2013-02-10"
8502 #~ msgstr "2013-02-10"
8503
8504 #~ msgid "2011-09-15"
8505 #~ msgstr "2011-09-15"
8506
8507 #~ msgid "2011-10-16"
8508 #~ msgstr "2011-10-16"
8509
8510 #~ msgid "B<mbstowcs>(3), B<wcsrtombs>(3)"
8511 #~ msgstr "B<mbstowcs>(3), B<wcsrtombs>(3)"
8512
8513 #~ msgid "B<MB_CUR_MAX>(3), B<wcrtomb>(3), B<wcstombs>(3)"
8514 #~ msgstr "B<MB_CUR_MAX>(3), B<wcrtomb>(3), B<wcstombs>(3)"
8515
8516 #~ msgid "1999-07-25"
8517 #~ msgstr "1999-07-25"
8518
8519 #~ msgid ""
8520 #~ "This function is not multithread safe.  The function B<wcrtomb>(3)  "
8521 #~ "provides a better interface to the same functionality."
8522 #~ msgstr ""
8523 #~ "この関数はマルチスレッドでは安全ではない。 B<wcrtomb>(3)  関数は 同じ機能"
8524 #~ "のより良いインターフェースを提供する。"
8525
8526 #~ msgid ""
8527 #~ "The B<putenv>()  function returns zero on success, or nonzero if an error "
8528 #~ "occurs."
8529 #~ msgstr ""
8530 #~ "B<putenv>()  関数は、成功した場合 0 を、 エラーが発生した場合 0 以外を返"
8531 #~ "す。"
8532
8533 #~ msgid ""
8534 #~ "The B<random>()  function returns a value between 0 and B<RAND_MAX>.  The "
8535 #~ "B<srandom>()  function returns no value.  The B<initstate>()  function "
8536 #~ "returns a pointer to the previous state array.  The B<setstate>()  "
8537 #~ "function returns a pointer to the previous state array, or NULL on error."
8538 #~ msgstr ""
8539 #~ "B<random>()  関数は 0 と B<RAND_MAX> の間の値を返す。 B<srandom>()  関数は"
8540 #~ "値を返さない。 B<initstate>()  関数は直前の状態配列へのポインタを返す。 "
8541 #~ "B<setstate>()  関数は直前の状態配列へのポインタを返し、 エラーの場合は "
8542 #~ "NULL を返す。"
8543
8544 #~ msgid "2008-03-07"
8545 #~ msgstr "2008-03-07"
8546
8547 #~ msgid "All of these functions return 0 on success, or -1 on error."
8548 #~ msgstr "これらの関数は、成功すると 0 を返し、 エラーの場合は -1 を返す。"
8549
8550 #~ msgid ""
8551 #~ "In locales other than the \"C\" locale, other strings may also be "
8552 #~ "accepted.  (For example, the thousands separator of the current locale "
8553 #~ "may be supported.)"
8554 #~ msgstr ""
8555 #~ "\"C\" 以外のロケールの場合、その他の文字列も受け付けられるかもしれない。 "
8556 #~ "(例えば、現在のロケールの 1000 毎の区切り文字がサポートされているかもしれ"
8557 #~ "ない。)"
8558
8559 #~ msgid ""
8560 #~ "Recent versions of Linux libc (later than 5.4.23) and glibc (2.x)  "
8561 #~ "include a B<malloc>()  implementation which is tunable via environment "
8562 #~ "variables.  When B<MALLOC_CHECK_> is set, a special (less efficient) "
8563 #~ "implementation is used which is designed to be tolerant against simple "
8564 #~ "errors, such as double calls of B<free>()  with the same argument, or "
8565 #~ "overruns of a single byte (off-by-one bugs).  Not all such errors can be "
8566 #~ "protected against, however, and memory leaks can result.  If "
8567 #~ "B<MALLOC_CHECK_> is set to 0, any detected heap corruption is silently "
8568 #~ "ignored; if set to 1, a diagnostic message is printed on I<stderr>; if "
8569 #~ "set to 2, B<abort>(3)  is called immediately; if set to 3, a diagnostic "
8570 #~ "message is printed on I<stderr> and the program is aborted.  Using a "
8571 #~ "nonzero B<MALLOC_CHECK_> value can be useful because otherwise a crash "
8572 #~ "may happen much later, and the true cause for the problem is then very "
8573 #~ "hard to track down."
8574 #~ msgstr ""
8575 #~ "最近のバージョンの Linux libc (5.4.23 以降) と glibc (2.x) では、 "
8576 #~ "B<malloc>()  の動作を環境変数によって制御できるような実装がされている。 "
8577 #~ "B<MALLOC_CHECK_> が設定されていると、特殊な実装が用いられ、 単純なエラーに"
8578 #~ "は耐えることができるようになる (効率は悪くなる)。例えば、 B<free>()  を同"
8579 #~ "じ引き数で二度呼び出してしまう、 1 バイトだけ行きすぎてしまう (off-by-one "
8580 #~ "バグ) などがこれに当たる。 しかし、これらのエラーの全てを防ぐことができる"
8581 #~ "わけではなく、 その場合にはメモリリークが起こってしまう。 "
8582 #~ "B<MALLOC_CHECK_> が 0 にセットされていると、ヒープの破壊を黙って無視す"
8583 #~ "る。 1 にセットされていると、診断メッセージが標準エラー出力に表示される。 "
8584 #~ "2 にセットされていると、ただちに B<abort>(3)  が呼び出される。 3 にセット"
8585 #~ "されていると、診断メッセージが標準エラー出力に表示され、 プログラムは強制"
8586 #~ "終了 (abort) される。 B<MALLOC_CHECK_> に 0 以外の値をセットして役に立つ状"
8587 #~ "況としては、 実際のプロセスのクラッシュがずっと後に起こり、 本当の原因を探"
8588 #~ "し出すのが非常に困難な場合などが挙げられるだろう。"