OSDN Git Service

(split) LDP: Sync minor changes in LDP 3.65
[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-24 00:51+0900\n"
10 "PO-Revision-Date: 2014-04-24 03:28+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:33
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:34
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:36
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:39
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:45
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:132
174 #: build/C/man3/mblen.3:75 build/C/man3/mbstowcs.3:84 build/C/man3/mbtowc.3:93
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:96 build/C/man3/gcvt.3:77
204 #: build/C/man3/getauxval.3:192 build/C/man3/getenv.3:96
205 #: build/C/man3/getloadavg.3:70 build/C/man3/getsubopt.3:134
206 #: build/C/man3/malloc.3:171 build/C/man3/mblen.3:92
207 #: build/C/man3/mbstowcs.3:94 build/C/man3/mbtowc.3:113
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:161
211 #: build/C/man3/random_r.3:137 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:183 build/C/man3/gcvt.3:86
234 #: build/C/man3/getauxval.3:218 build/C/man3/getenv.3:129
235 #: build/C/man3/getloadavg.3:74 build/C/man3/getsubopt.3:232
236 #: build/C/man3/malloc.3:262 build/C/man3/mblen.3:106
237 #: build/C/man3/mbstowcs.3:216 build/C/man3/mbtowc.3:128
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:197 build/C/man3/random_r.3:141
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:190 build/C/man3/gcvt.3:90
268 #: build/C/man3/getauxval.3:222 build/C/man3/getenv.3:137
269 #: build/C/man3/getloadavg.3:77 build/C/man3/getsubopt.3:234
270 #: build/C/man3/malloc.3:286 build/C/man3/mblen.3:108
271 #: build/C/man3/mbstowcs.3:222 build/C/man3/mbtowc.3:135
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:202 build/C/man3/random_r.3:145
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:197 build/C/man3/gcvt.3:97
293 #: build/C/man3/getauxval.3:229 build/C/man3/getenv.3:144
294 #: build/C/man3/getloadavg.3:84 build/C/man3/getsubopt.3:241
295 #: build/C/man3/malloc.3:293 build/C/man3/mblen.3:115
296 #: build/C/man3/mbstowcs.3:229 build/C/man3/mbtowc.3:142
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:209 build/C/man3/random_r.3:152
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 msgid ""
307 "This page is part of release 3.65 of the Linux I<man-pages> project.  A "
308 "description of the project, and information about reporting bugs, can be "
309 "found at \\%http://www.kernel.org/doc/man-pages/."
310 msgstr ""
311 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.65 の一部\n"
312 "である。プロジェクトの説明とバグ報告に関する情報は\n"
313 "http://www.kernel.org/doc/man-pages/ に書かれている。"
314
315 #. type: TH
316 #: build/C/man3/MB_LEN_MAX.3:17
317 #, no-wrap
318 msgid "MB_LEN_MAX"
319 msgstr "MB_LEN_MAX"
320
321 #. type: Plain text
322 #: build/C/man3/MB_LEN_MAX.3:20
323 msgid "MB_LEN_MAX - maximum multibyte length of a character across all locales"
324 msgstr "MB_LEN_MAX - 全てのロケールでの1文字の最大マルチバイト長"
325
326 #. type: Plain text
327 #: build/C/man3/MB_LEN_MAX.3:23
328 #, no-wrap
329 msgid "B<#include E<lt>limits.hE<gt>>\n"
330 msgstr "B<#include E<lt>limits.hE<gt>>\n"
331
332 #. type: Plain text
333 #: build/C/man3/MB_LEN_MAX.3:29
334 msgid ""
335 "The B<MB_LEN_MAX> macro is the upper bound for the number of bytes needed to "
336 "represent a single wide character, across all locales."
337 msgstr ""
338 "B<MB_LEN_MAX> マクロは、全てのロケールで一つのワイド文字を表現するために必要"
339 "となる 最大バイト数である。"
340
341 #. type: Plain text
342 #: build/C/man3/MB_LEN_MAX.3:31
343 msgid "A constant integer greater than zero."
344 msgstr "0 より大きいの整数型の定数。"
345
346 #. type: SH
347 #: build/C/man3/MB_LEN_MAX.3:33 build/C/man2/_exit.2:86 build/C/man3/a64l.3:73
348 #: build/C/man3/atexit.3:78 build/C/man3/atoi.3:115 build/C/man3/clearenv.3:74
349 #: build/C/man3/drand48.3:262 build/C/man3/ecvt.3:129 build/C/man3/ecvt_r.3:90
350 #: build/C/man3/exit.3:98 build/C/man3/getauxval.3:194
351 #: build/C/man3/getenv.3:102 build/C/man3/getsubopt.3:136
352 #: build/C/man3/malloc.3:173 build/C/man3/mblen.3:94
353 #: build/C/man3/mbstowcs.3:96 build/C/man3/mbtowc.3:115
354 #: build/C/man3/mkstemp.3:208 build/C/man3/mktemp.3:99
355 #: build/C/man3/putenv.3:81 build/C/man3/qecvt.3:102 build/C/man3/rand.3:141
356 #: build/C/man3/random.3:163 build/C/man3/setenv.3:130
357 #: build/C/man3/strtod.3:177 build/C/man3/strtol.3:178
358 #: build/C/man3/strtoul.3:182 build/C/man3/system.3:80 build/C/man7/vdso.7:129
359 #: build/C/man3/wcstombs.3:91 build/C/man3/wctomb.3:91
360 #, no-wrap
361 msgid "NOTES"
362 msgstr "注意"
363
364 #. type: Plain text
365 #: build/C/man3/MB_LEN_MAX.3:44
366 msgid ""
367 "The entities B<MB_LEN_MAX> and I<sizeof(wchar_t)> are totally unrelated.  In "
368 "glibc, B<MB_LEN_MAX> is typically 6 while I<sizeof(wchar_t)> is 4."
369 msgstr ""
370 "B<MB_LEN_MAX> と I<sizeof(wchar_t)> の値にはなんの関係もない。 glibc では "
371 "B<MB_LEN_MAX> は通常は 6 で、 I<sizeof(wchar_t)> は 4 である。"
372
373 #. type: Plain text
374 #: build/C/man3/MB_LEN_MAX.3:46
375 msgid "B<MB_CUR_MAX>(3)"
376 msgstr "B<MB_CUR_MAX>(3)"
377
378 #. type: TH
379 #: build/C/man2/_exit.2:29
380 #, no-wrap
381 msgid "_EXIT"
382 msgstr "_EXIT"
383
384 #. type: TH
385 #: build/C/man2/_exit.2:29 build/C/man3/gcvt.3:30
386 #, no-wrap
387 msgid "2010-09-20"
388 msgstr "2010-09-20"
389
390 #. type: Plain text
391 #: build/C/man2/_exit.2:32
392 msgid "_exit, _Exit - terminate the calling process"
393 msgstr "_exit, _Exit - 呼び出し元のプロセスを終了させる"
394
395 #. type: Plain text
396 #: build/C/man2/_exit.2:34
397 msgid "B<#include E<lt>unistd.hE<gt>>"
398 msgstr "B<#include E<lt>unistd.hE<gt>>"
399
400 #. type: Plain text
401 #: build/C/man2/_exit.2:36
402 msgid "B<void _exit(int >I<status>B<);>"
403 msgstr "B<void _exit(int >I<status>B<);>"
404
405 #. type: Plain text
406 #: build/C/man2/_exit.2:38 build/C/man3/a64l.3:14
407 #: build/C/man3/canonicalize_file_name.3:33 build/C/man3/ecvt.3:37
408 #: build/C/man3/getsubopt.3:30 build/C/man3/qecvt.3:33
409 #: build/C/man3/strtod.3:50
410 msgid "B<#include E<lt>stdlib.hE<gt>>"
411 msgstr "B<#include E<lt>stdlib.hE<gt>>"
412
413 #. type: Plain text
414 #: build/C/man2/_exit.2:40
415 msgid "B<void _Exit(int >I<status>B<);>"
416 msgstr "B<void _Exit(int >I<status>B<);>"
417
418 #. type: Plain text
419 #: build/C/man2/_exit.2:44 build/C/man3/a64l.3:22 build/C/man3/atoi.3:52
420 #: build/C/man3/cfree.3:48 build/C/man3/clearenv.3:39
421 #: build/C/man3/drand48.3:60 build/C/man3/drand48_r.3:68
422 #: build/C/man3/ecvt.3:47 build/C/man3/ecvt_r.3:53 build/C/man3/gcvt.3:43
423 #: build/C/man3/getenv.3:48 build/C/man3/getsubopt.3:37
424 #: build/C/man3/mkdtemp.3:39 build/C/man3/mkstemp.3:54
425 #: build/C/man3/mktemp.3:47 build/C/man3/on_exit.3:44 build/C/man3/putenv.3:50
426 #: build/C/man3/qecvt.3:45 build/C/man3/rand.3:58 build/C/man3/random.3:52
427 #: build/C/man3/random_r.3:47 build/C/man3/rpmatch.3:42
428 #: build/C/man3/setenv.3:52 build/C/man3/strtod.3:60 build/C/man3/strtol.3:47
429 #: build/C/man3/strtoul.3:50
430 msgid ""
431 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
432 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
433
434 #. type: Plain text
435 #: build/C/man2/_exit.2:48
436 msgid "B<_Exit>():"
437 msgstr "B<_Exit>():"
438
439 #. type: Plain text
440 #: build/C/man2/_exit.2:51 build/C/man3/strtod.3:68
441 msgid ""
442 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ "
443 "200112L;"
444 msgstr ""
445 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ "
446 "200112L;"
447
448 #. type: Plain text
449 #: build/C/man2/_exit.2:54 build/C/man3/atoi.3:62 build/C/man3/strtod.3:71
450 #: build/C/man3/strtol.3:57 build/C/man3/strtoul.3:60
451 msgid "or I<cc\\ -std=c99>"
452 msgstr "または I<cc\\ -std=c99>"
453
454 #. type: Plain text
455 #: build/C/man2/_exit.2:67
456 msgid ""
457 "The function B<_exit>()  terminates the calling process \"immediately\".  "
458 "Any open file descriptors belonging to the process are closed; any children "
459 "of the process are inherited by process 1, I<init>, and the process's parent "
460 "is sent a B<SIGCHLD> signal."
461 msgstr ""
462 "B<_exit>()  は、それを呼んだプロセスを「直ちに」終了させる。 その際、このプロ"
463 "セスが所有しているディスクリプタ (descriptor) で、 オープンされているものは全"
464 "てクローズされる。 また、このプロセスが所有する子プロセスは全て、プロセス番"
465 "号 1、 つまり I<init> プロセスによって継承され、このプロセスの親プロセスに対"
466 "して B<SIGCHLD> シグナルが送出される。"
467
468 #. type: Plain text
469 #: build/C/man2/_exit.2:74
470 msgid ""
471 "The value I<status> is returned to the parent process as the process's exit "
472 "status, and can be collected using one of the B<wait>(2)  family of calls."
473 msgstr ""
474 "I<status> の値は、このプロセスの終了状態としてその親プロセスに対して返され、 "
475 "B<wait>(2)  系関数を利用することによって取得することができる。"
476
477 #. type: Plain text
478 #: build/C/man2/_exit.2:79
479 msgid "The function B<_Exit>()  is equivalent to B<_exit>()."
480 msgstr "関数 B<_Exit>()  は B<_exit>()  と等価である。"
481
482 #. type: Plain text
483 #: build/C/man2/_exit.2:81
484 msgid "These functions do not return."
485 msgstr "これらの関数は値を返さない。"
486
487 #. type: Plain text
488 #: build/C/man2/_exit.2:86
489 msgid ""
490 "SVr4, POSIX.1-2001, 4.3BSD.  The function B<_Exit>()  was introduced by C99."
491 msgstr "SVr4, POSIX.1-2001, 4.3BSD.  関数 B<_Exit>()  は C99 で導入された。"
492
493 #. type: Plain text
494 #: build/C/man2/_exit.2:90
495 msgid ""
496 "For a discussion on the effects of an exit, the transmission of exit status, "
497 "zombie processes, signals sent, and so on, see B<exit>(3)."
498 msgstr ""
499 "exit の効果、終了状態の受渡し、ゾンビプロセス、シグナル送出などに\n"
500 "ついての議論は、 B<exit>(3) を参照すること。"
501
502 #. type: Plain text
503 #: build/C/man2/_exit.2:117
504 msgid ""
505 "The function B<_exit>()  is like B<exit>(3), but does not call any functions "
506 "registered with B<atexit>(3)  or B<on_exit>(3).  Whether it flushes standard "
507 "I/O buffers and removes temporary files created with B<tmpfile>(3)  is "
508 "implementation-dependent.  On the other hand, B<_exit>()  does close open "
509 "file descriptors, and this may cause an unknown delay, waiting for pending "
510 "output to finish.  If the delay is undesired, it may be useful to call "
511 "functions like B<tcflush>(3)  before calling B<_exit>().  Whether any "
512 "pending I/O is canceled, and which pending I/O may be canceled upon B<_exit>"
513 "(), is implementation-dependent."
514 msgstr ""
515 "関数 B<_exit>()  は B<exit>(3)  に似ているが、ANSI C の B<atexit>(3)  や "
516 "B<on_exit>(3)  によって登録されたいかなる関数も呼び出さない。 標準 I/O バッ"
517 "ファのフラッシュや、 B<tmpfile>(3)  で作成されたテンポラリファイルの削除を行"
518 "うかどうかは、実装に依存する。 一方で、 B<_exit>()  はオープンされているファ"
519 "イルディスクリプタをクローズしないため、 未決定になっている出力がフラッシュさ"
520 "れるのを待つのに不確定な遅れが発生する。 この遅れを発生させたくなければ、 "
521 "B<_exit>()  の前に B<tcflush>(3)  のような関数を呼び出せばよい。 B<_exit>()  "
522 "が呼び出されたときに、 未決定になっている全ての I/O がキャンセルされるのか、 "
523 "またどの I/O がキャンセルされるのかは実装に依存する。"
524
525 #. type: Plain text
526 #: build/C/man2/_exit.2:124
527 msgid ""
528 "In glibc up to version 2.3, the B<_exit>()  wrapper function invoked the "
529 "kernel system call of the same name.  Since glibc 2.3, the wrapper function "
530 "invokes B<exit_group>(2), in order to terminate all of the threads in a "
531 "process."
532 msgstr ""
533 "バージョン 2.3 より前の glibc では、 B<_exit>()  のラッパー関数は同じ名前の"
534 "カーネル・システムコールを起動していた。 glibc 2.3 以降では、プロセス内の全て"
535 "のスレッドを終了するために、 ラッパー関数は B<exit_group>(2)  を起動する。"
536
537 #. type: Plain text
538 #: build/C/man2/_exit.2:136
539 msgid ""
540 "B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), B<wait4>"
541 "(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), B<termios>(3)"
542 msgstr ""
543 "B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), B<wait4>"
544 "(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), B<termios>(3)"
545
546 #. type: TH
547 #: build/C/man3/a64l.3:9
548 #, no-wrap
549 msgid "A64L"
550 msgstr "A64L"
551
552 #. type: TH
553 #: build/C/man3/a64l.3:9 build/C/man3/drand48.3:30 build/C/man3/mblen.3:16
554 #, no-wrap
555 msgid "2013-06-21"
556 msgstr "2013-06-21"
557
558 #. type: Plain text
559 #: build/C/man3/a64l.3:12
560 msgid "a64l, l64a - convert between long and base-64"
561 msgstr "a64l, l64a - long と base-64 を変換する"
562
563 #. type: Plain text
564 #: build/C/man3/a64l.3:16
565 msgid "B<long a64l(char *>I<str64>B<);>"
566 msgstr "B<long a64l(char *>I<str64>B<);>"
567
568 #. type: Plain text
569 #: build/C/man3/a64l.3:18
570 msgid "B<char *l64a(long >I<value>B<);>"
571 msgstr "B<char *l64a(long >I<value>B<);>"
572
573 #. type: Plain text
574 #: build/C/man3/a64l.3:26
575 msgid "B<a64l>(), B<l64a>():"
576 msgstr "B<a64l>(), B<l64a>():"
577
578 #. type: Plain text
579 #: build/C/man3/a64l.3:31 build/C/man3/ecvt.3:66
580 msgid ""
581 "_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
582 "_XOPEN_SOURCE_EXTENDED"
583 msgstr ""
584 "_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
585 "_XOPEN_SOURCE_EXTENDED"
586
587 #. type: Plain text
588 #: build/C/man3/a64l.3:48
589 msgid ""
590 "These functions provide a conversion between 32-bit long integers and little-"
591 "endian base-64 ASCII strings (of length zero to six).  If the string used as "
592 "argument for B<a64l>()  has length greater than six, only the first six "
593 "bytes are used.  If the type I<long> has more than 32 bits, then B<l64a>()  "
594 "uses only the low order 32 bits of I<value>, and B<a64l>()  sign-extends its "
595 "32-bit result."
596 msgstr ""
597 "これらの関数は 32 ビット long 整数と リトルエンディアン base-64 ASCII 文字列 "
598 "(長さ 0 〜 6) の間の変換を行う。 B<a64l>()  の引き数の文字列が 7 文字以上の場"
599 "合、 最初の 6 バイトが使われる。 I<long> 型が 32 ビットより大きい場合、 "
600 "B<l64a>()  は I<value> の下位 32 ビットのみを使い、 B<a64l>()  は 32 ビットの"
601 "結果を符号拡張 (sign-extend) する。"
602
603 #. type: Plain text
604 #: build/C/man3/a64l.3:50
605 msgid "The 64 digits in the base-64 system are:"
606 msgstr "base-64 システムで使われる 64 個の文字は以下の通りである:"
607
608 #. type: Plain text
609 #: build/C/man3/a64l.3:58
610 #, no-wrap
611 msgid ""
612 "\\&\\(aq.\\(aq\trepresents a 0\n"
613 "\\&\\(aq/\\(aq\trepresents a 1\n"
614 "0-9\trepresent  2-11\n"
615 "A-Z\trepresent 12-37\n"
616 "a-z\trepresent 38-63\n"
617 msgstr ""
618 "\\&\\(aq.\\(aq\tは 0 を表す。\n"
619 "\\&\\(aq/\\(aq\tは 1 を表す。\n"
620 "0-9\tは 2-11 を表す。\n"
621 "A-Z\tは 12-37 を表す。\n"
622 "a-z\tは 38-63 を表す。\n"
623
624 #. type: Plain text
625 #: build/C/man3/a64l.3:62
626 msgid "So 123 = 59*64^0 + 1*64^1 = \"v/\"."
627 msgstr "よって 123 = 59*64^0 + 1*64^1 = \"v/\" である。"
628
629 #. type: SH
630 #: build/C/man3/a64l.3:62 build/C/man3/atof.3:57 build/C/man3/atoi.3:93
631 #: build/C/man3/drand48.3:245 build/C/man3/drand48_r.3:98
632 #: build/C/man3/ecvt.3:110 build/C/man3/exit.3:90 build/C/man3/getauxval.3:187
633 #: build/C/man3/getloadavg.3:65 build/C/man3/getsubopt.3:129
634 #: build/C/man3/mblen.3:87 build/C/man3/qecvt.3:85 build/C/man3/random.3:152
635 #: build/C/man3/random_r.3:128 build/C/man3/strtod.3:160
636 #: build/C/man3/strtoimax.3:58 build/C/man3/strtol.3:161
637 #: build/C/man3/strtoul.3:165 build/C/man3/wctomb.3:84
638 #, no-wrap
639 msgid "ATTRIBUTES"
640 msgstr "属性"
641
642 #. type: SS
643 #: build/C/man3/a64l.3:63 build/C/man3/atof.3:58 build/C/man3/atoi.3:94
644 #: build/C/man3/drand48.3:246 build/C/man3/drand48_r.3:99
645 #: build/C/man3/ecvt.3:111 build/C/man3/exit.3:91 build/C/man3/getauxval.3:188
646 #: build/C/man3/getloadavg.3:66 build/C/man3/getsubopt.3:130
647 #: build/C/man3/mblen.3:88 build/C/man3/qecvt.3:86 build/C/man3/random.3:153
648 #: build/C/man3/random_r.3:129 build/C/man3/strtod.3:161
649 #: build/C/man3/strtoimax.3:59 build/C/man3/strtol.3:162
650 #: build/C/man3/strtoul.3:166 build/C/man3/wctomb.3:85
651 #, no-wrap
652 msgid "Multithreading (see pthreads(7))"
653 msgstr "マルチスレッディング (pthreads(7) 参照)"
654
655 #. type: Plain text
656 #: build/C/man3/a64l.3:67
657 msgid "The B<l64a>()  function is not thread-safe."
658 msgstr "B<l64a>() 関数はスレッドセーフではない。"
659
660 #. type: Plain text
661 #: build/C/man3/a64l.3:71
662 msgid "The B<a64l>()  function is thread-safe."
663 msgstr "B<a64l>() 関数はスレッドセーフである。"
664
665 #. type: Plain text
666 #: build/C/man3/a64l.3:73 build/C/man3/getsubopt.3:136
667 msgid "POSIX.1-2001."
668 msgstr "POSIX.1-2001."
669
670 #. type: Plain text
671 #: build/C/man3/a64l.3:78
672 msgid ""
673 "The value returned by B<l64a>()  may be a pointer to a static buffer, "
674 "possibly overwritten by later calls."
675 msgstr ""
676 "B<l64a>()  で返される値は静的バッファへのポインタかもしれないので、 以降の呼"
677 "び出しで上書きされる可能性がある。"
678
679 #. type: Plain text
680 #: build/C/man3/a64l.3:87
681 msgid ""
682 "The behavior of B<l64a>()  is undefined when I<value> is negative.  If "
683 "I<value> is zero, it returns an empty string."
684 msgstr ""
685 "I<value> が負の場合、 B<l64a>()  の動作は定義されていない。 I<value> が 0 の"
686 "場合は空文字列を返す。"
687
688 #. type: Plain text
689 #: build/C/man3/a64l.3:90
690 msgid ""
691 "These functions are broken in glibc before 2.2.5 (puts most significant "
692 "digit first)."
693 msgstr ""
694 "これらの関数は glibc 2.2.5 以前では間違っている (最上位デジットを最初にしてい"
695 "る)。"
696
697 #. type: Plain text
698 #: build/C/man3/a64l.3:93
699 msgid "This is not the encoding used by B<uuencode>(1)."
700 msgstr "これは B<uuencode>(1)  で使われるエンコーディングではない。"
701
702 #.  .BR itoa (3),
703 #. type: Plain text
704 #: build/C/man3/a64l.3:97
705 msgid "B<uuencode>(1), B<strtoul>(3)"
706 msgstr "B<uuencode>(1), B<strtoul>(3)"
707
708 #. type: TH
709 #: build/C/man3/atexit.3:33
710 #, no-wrap
711 msgid "ATEXIT"
712 msgstr "ATEXIT"
713
714 #. type: TH
715 #: build/C/man3/atexit.3:33 build/C/man3/on_exit.3:31
716 #, no-wrap
717 msgid "2008-12-05"
718 msgstr "2008-12-05"
719
720 #. type: Plain text
721 #: build/C/man3/atexit.3:36
722 msgid "atexit - register a function to be called at normal process termination"
723 msgstr "atexit - プロセスが正常終了した時に呼び出される関数を登録する"
724
725 #. type: Plain text
726 #: build/C/man3/atexit.3:41
727 #, no-wrap
728 msgid "B<int atexit(void (*>I<function>B<)(void));>\n"
729 msgstr "B<int atexit(void (*>I<function>B<)(void));>\n"
730
731 #. type: Plain text
732 #: build/C/man3/atexit.3:54
733 msgid ""
734 "The B<atexit>()  function registers the given I<function> to be called at "
735 "normal process termination, either via B<exit>(3)  or via return from the "
736 "program's I<main>().  Functions so registered are called in the reverse "
737 "order of their registration; no arguments are passed."
738 msgstr ""
739 "B<atexit>()  関数は、与えられた I<function> を、 B<exit>(3)  やプログラムの "
740 "I<main>()  関数からの返りを通じて、プロセスが正常終了した時に呼び出される 関"
741 "数として登録する。 ここで定義された関数は、登録した順番とは逆の順番で呼び出さ"
742 "れる。 登録した関数に引き数は渡されない。"
743
744 #. type: Plain text
745 #: build/C/man3/atexit.3:57 build/C/man3/on_exit.3:69
746 msgid ""
747 "The same function may be registered multiple times: it is called once for "
748 "each registration."
749 msgstr ""
750 "同じ関数を複数回登録してもよい。 登録された関数は登録 1 回につき 1 回呼び出さ"
751 "れる。"
752
753 #. type: Plain text
754 #: build/C/man3/atexit.3:63
755 msgid ""
756 "POSIX.1-2001 requires that an implementation allow at least B<ATEXIT_MAX> "
757 "(32) such functions to be registered.  The actual limit supported by an "
758 "implementation can be obtained using B<sysconf>(3)."
759 msgstr ""
760 "POSIX.1-2001 では、このような関数を少なくとも B<ATEXIT_MAX> 個 (32個) 登録で"
761 "きることを要求している。 その実装でサポートされている実際の上限は B<sysconf>"
762 "(3)  を使って取得できる。"
763
764 #. type: Plain text
765 #: build/C/man3/atexit.3:71 build/C/man3/on_exit.3:76
766 msgid ""
767 "When a child process is created via B<fork>(2), it inherits copies of its "
768 "parent's registrations.  Upon a successful call to one of the B<exec>(3)  "
769 "functions, all registrations are removed."
770 msgstr ""
771 "B<fork>(2) で作成された場合、子プロセスは親プロセスの登録のコピーを継承す"
772 "る。\n"
773 "B<exec>(3) ファミリーの関数の場合、呼び出しに成功すると、 全ての登録が削除さ"
774 "れる。"
775
776 #. type: Plain text
777 #: build/C/man3/atexit.3:76
778 msgid ""
779 "The B<atexit>()  function returns the value 0 if successful; otherwise it "
780 "returns a nonzero value."
781 msgstr ""
782 "B<atexit>()  関数は、関数登録が成功した時には 0 を返す。 その他の場合には 0 "
783 "以外の値を返す。"
784
785 #. type: Plain text
786 #: build/C/man3/atexit.3:78
787 msgid "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
788 msgstr "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
789
790 #. type: Plain text
791 #: build/C/man3/atexit.3:85
792 msgid ""
793 "Functions registered using B<atexit>()  (and B<on_exit>(3))  are not called "
794 "if a process terminates abnormally because of the delivery of a signal."
795 msgstr ""
796 "B<atexit>()  (と B<on_exit>(3))  を使って登録された関数は、 シグナルの配送に"
797 "よりプロセスが異常終了した場合には呼び出されない。"
798
799 #. type: Plain text
800 #: build/C/man3/atexit.3:92
801 msgid ""
802 "If one of the functions registered functions calls B<_exit>(2), then any "
803 "remaining functions are not invoked, and the other process termination steps "
804 "performed by B<exit>(3)  are not performed."
805 msgstr ""
806 "登録された関数の一つが B<_exit>(2)  を呼び出した場合、残りの関数はどれも起動"
807 "されず、 B<exit>(3)  により実行される他のプロセス終了ステップは実行されない。"
808
809 #.  This can happen on OpenBSD 4.2 for example, and is documented
810 #.  as occurring on FreeBSD as well.
811 #.  Glibc does "the Right Thing" -- invocation of the remaining
812 #.  exit handlers carries on as normal.
813 #. type: Plain text
814 #: build/C/man3/atexit.3:109
815 msgid ""
816 "POSIX.1-2001 says that the result of calling B<exit>(3)  more than once (i."
817 "e., calling B<exit>(3)  within a function registered using B<atexit>())  is "
818 "undefined.  On some systems (but not Linux), this can result in an infinite "
819 "recursion; portable programs should not invoke B<exit>(3)  inside a function "
820 "registered using B<atexit>()."
821 msgstr ""
822 "POSIX.1-2001 では、 B<atexit>()  を使って登録された一つの関数内で、複数回 "
823 "B<exit>(3)  を呼び出した際の結果は未定義である。 (Linux ではないが) いくつか"
824 "のシステムでは、この場合、 繰り返しが無限に起こることになる。 移植性が必要な"
825 "プログラムでは、 B<atexit>()  で登録された関数内で B<exit>(3)  を起動すべきで"
826 "はない。"
827
828 #. type: Plain text
829 #: build/C/man3/atexit.3:118
830 msgid ""
831 "The B<atexit>()  and B<on_exit>(3)  functions register functions on the same "
832 "list: at normal process termination, the registered functions are invoked in "
833 "reverse order of their registration by these two functions."
834 msgstr ""
835 "B<atexit>()  と B<on_exit>(3)  は、同じリストに対して関数を登録する。 プロセ"
836 "スが正常に終了した際には、 これらの二つの関数で登録された順序の逆順で、 登録"
837 "された関数が起動される。"
838
839 #.  In glibc, things seem to be handled okay
840 #. type: Plain text
841 #: build/C/man3/atexit.3:124
842 msgid ""
843 "POSIX.1-2001 says that the result is undefined if B<longjmp>(3)  is used to "
844 "terminate execution of one of the functions registered B<atexit>()."
845 msgstr ""
846 "POSIX.1-2001 では、 B<atexit>()  で登録された関数の実行を終了するために "
847 "B<longjmp>(3)  が使用された場合の結果は未定義である。"
848
849 #. type: SS
850 #: build/C/man3/atexit.3:124
851 #, no-wrap
852 msgid "Linux notes"
853 msgstr "Linux での注意"
854
855 #. type: Plain text
856 #: build/C/man3/atexit.3:131
857 msgid ""
858 "Since glibc 2.2.3, B<atexit>()  (and B<on_exit>(3))  can be used within a "
859 "shared library to establish functions that are called when the shared "
860 "library is unloaded."
861 msgstr ""
862 "glibc 2.2.3 以降では、共有ライブラリがアンロードされるときに呼ばれる 関数を登"
863 "録するために、共有ライブラリの中で B<atexit>()  (と B<on_exit>(3))  を使用す"
864 "ることができる。"
865
866 #. type: SH
867 #: build/C/man3/atexit.3:131 build/C/man3/getsubopt.3:143
868 #: build/C/man3/mbstowcs.3:108 build/C/man3/rand.3:160
869 #: build/C/man3/rpmatch.3:119 build/C/man3/strtod.3:186
870 #: build/C/man3/strtol.3:216 build/C/man3/strtoul.3:220
871 #, no-wrap
872 msgid "EXAMPLE"
873 msgstr "例"
874
875 #. type: Plain text
876 #: build/C/man3/atexit.3:136
877 #, no-wrap
878 msgid ""
879 "#include E<lt>stdio.hE<gt>\n"
880 "#include E<lt>stdlib.hE<gt>\n"
881 "#include E<lt>unistd.hE<gt>\n"
882 msgstr ""
883 "#include E<lt>stdio.hE<gt>\n"
884 "#include E<lt>stdlib.hE<gt>\n"
885 "#include E<lt>unistd.hE<gt>\n"
886
887 #. type: Plain text
888 #: build/C/man3/atexit.3:142
889 #, no-wrap
890 msgid ""
891 "void\n"
892 "bye(void)\n"
893 "{\n"
894 "    printf(\"That was all, folks\\en\");\n"
895 "}\n"
896 msgstr ""
897 "void\n"
898 "bye(void)\n"
899 "{\n"
900 "    printf(\"That was all, folks\\en\");\n"
901 "}\n"
902
903 #. type: Plain text
904 #: build/C/man3/atexit.3:148
905 #, no-wrap
906 msgid ""
907 "int\n"
908 "main(void)\n"
909 "{\n"
910 "    long a;\n"
911 "    int i;\n"
912 msgstr ""
913 "int\n"
914 "main(void)\n"
915 "{\n"
916 "    long a;\n"
917 "    int i;\n"
918
919 #. type: Plain text
920 #: build/C/man3/atexit.3:151
921 #, no-wrap
922 msgid ""
923 "    a = sysconf(_SC_ATEXIT_MAX);\n"
924 "    printf(\"ATEXIT_MAX = %ld\\en\", a);\n"
925 msgstr ""
926 "    a = sysconf(_SC_ATEXIT_MAX);\n"
927 "    printf(\"ATEXIT_MAX = %ld\\en\", a);\n"
928
929 #. type: Plain text
930 #: build/C/man3/atexit.3:157
931 #, no-wrap
932 msgid ""
933 "    i = atexit(bye);\n"
934 "    if (i != 0) {\n"
935 "        fprintf(stderr, \"cannot set exit function\\en\");\n"
936 "        exit(EXIT_FAILURE);\n"
937 "    }\n"
938 msgstr ""
939 "    i = atexit(bye);\n"
940 "    if (i != 0) {\n"
941 "        fprintf(stderr, \"cannot set exit function\\en\");\n"
942 "        exit(EXIT_FAILURE);\n"
943 "    }\n"
944
945 #. type: Plain text
946 #: build/C/man3/atexit.3:160 build/C/man3/getsubopt.3:231
947 #: build/C/man3/mbstowcs.3:215 build/C/man3/rand.3:215
948 #: build/C/man3/strtol.3:296
949 #, no-wrap
950 msgid ""
951 "    exit(EXIT_SUCCESS);\n"
952 "}\n"
953 msgstr ""
954 "    exit(EXIT_SUCCESS);\n"
955 "}\n"
956
957 #. type: Plain text
958 #: build/C/man3/atexit.3:165
959 msgid "B<_exit>(2), B<exit>(3), B<on_exit>(3)"
960 msgstr "B<_exit>(2), B<exit>(3), B<on_exit>(3)"
961
962 #. type: TH
963 #: build/C/man3/atof.3:31
964 #, no-wrap
965 msgid "ATOF"
966 msgstr "ATOF"
967
968 #. type: TH
969 #: build/C/man3/atof.3:31 build/C/man3/atoi.3:33 build/C/man3/strtod.3:45
970 #: build/C/man3/strtoimax.3:24
971 #, no-wrap
972 msgid "2014-01-22"
973 msgstr "2014-01-22"
974
975 #. type: TH
976 #: build/C/man3/atof.3:31 build/C/man3/atoi.3:33
977 #: build/C/man3/canonicalize_file_name.3:26 build/C/man3/drand48_r.3:27
978 #: build/C/man3/ecvt_r.3:30 build/C/man3/getauxval.3:29
979 #: build/C/man3/getenv.3:33 build/C/man3/getsubopt.3:25
980 #: build/C/man3/malloc.3:33 build/C/man3/mblen.3:16 build/C/man3/mbstowcs.3:18
981 #: build/C/man3/mbtowc.3:16 build/C/man3/mkdtemp.3:26
982 #: build/C/man3/mkstemp.3:35 build/C/man3/mktemp.3:34
983 #: build/C/man3/on_exit.3:31 build/C/man3/putenv.3:36 build/C/man3/qecvt.3:28
984 #: build/C/man3/random.3:33 build/C/man3/random_r.3:26
985 #: build/C/man3/rpmatch.3:29 build/C/man3/setenv.3:37 build/C/man3/strtol.3:31
986 #: build/C/man3/strtoul.3:33 build/C/man3/wcstombs.3:16
987 #: build/C/man3/wctomb.3:16
988 #, no-wrap
989 msgid "GNU"
990 msgstr "GNU"
991
992 #. type: Plain text
993 #: build/C/man3/atof.3:34
994 msgid "atof - convert a string to a double"
995 msgstr "atof - 文字列を double 型の数値に変換"
996
997 #. type: Plain text
998 #: build/C/man3/atof.3:39
999 #, no-wrap
1000 msgid "B<double atof(const char *>I<nptr>B<);>\n"
1001 msgstr "B<double atof(const char *>I<nptr>B<);>\n"
1002
1003 #. type: Plain text
1004 #: build/C/man3/atof.3:47
1005 msgid ""
1006 "The B<atof>()  function converts the initial portion of the string pointed "
1007 "to by I<nptr> to I<double>.  The behavior is the same as"
1008 msgstr ""
1009 "B<atof>()  関数は、I<nptr>によって指示される文字列のはじめの部分を I<double> "
1010 "型の数値に変換する。 この振る舞いは、 B<atof>()  関数がエラーを見つけないこと"
1011 "を除いては、"
1012
1013 #. type: Plain text
1014 #: build/C/man3/atof.3:50
1015 msgid "strtod(nptr, NULL);"
1016 msgstr "strtod(nptr, NULL);"
1017
1018 #. type: Plain text
1019 #: build/C/man3/atof.3:55
1020 msgid "except that B<atof>()  does not detect errors."
1021 msgstr "と同じである。"
1022
1023 #. type: Plain text
1024 #: build/C/man3/atof.3:57 build/C/man3/atoi.3:93
1025 msgid "The converted value."
1026 msgstr "変換された値。"
1027
1028 #. type: Plain text
1029 #: build/C/man3/atof.3:65
1030 msgid ""
1031 "The B<atof>()  function is thread-safe with exceptions.  It can be safely "
1032 "used in multithreaded applications, as long as B<setlocale>(3)  is not "
1033 "called to change the locale during its execution."
1034 msgstr ""
1035 "B<atof>() 関数は、例外付きのスレッドセーフである。実行中に B<setlocale>(3) を"
1036 "呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使"
1037 "用することができる。"
1038
1039 #. type: Plain text
1040 #: build/C/man3/atof.3:67
1041 msgid "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
1042 msgstr "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
1043
1044 #. type: Plain text
1045 #: build/C/man3/atof.3:73
1046 msgid "B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
1047 msgstr "B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
1048
1049 #. type: TH
1050 #: build/C/man3/atoi.3:33
1051 #, no-wrap
1052 msgid "ATOI"
1053 msgstr "ATOI"
1054
1055 #. type: Plain text
1056 #: build/C/man3/atoi.3:36
1057 msgid "atoi, atol, atoll, atoq - convert a string to an integer"
1058 msgstr "atoi, atol, atoll, atoq - 文字列を整数型に変換する"
1059
1060 #. type: Plain text
1061 #: build/C/man3/atoi.3:41
1062 #, no-wrap
1063 msgid "B<int atoi(const char *>I<nptr>B<);>\n"
1064 msgstr "B<int atoi(const char *>I<nptr>B<);>\n"
1065
1066 #. type: Plain text
1067 #: build/C/man3/atoi.3:43
1068 #, no-wrap
1069 msgid "B<long atol(const char *>I<nptr>B<);>\n"
1070 msgstr "B<long atol(const char *>I<nptr>B<);>\n"
1071
1072 #. type: Plain text
1073 #: build/C/man3/atoi.3:45
1074 #, no-wrap
1075 msgid "B<long long atoll(const char *>I<nptr>B<);>\n"
1076 msgstr "B<long long atoll(const char *>I<nptr>B<);>\n"
1077
1078 #. type: Plain text
1079 #: build/C/man3/atoi.3:47
1080 #, no-wrap
1081 msgid "B<long long atoq(const char *>I<nptr>B<);>\n"
1082 msgstr "B<long long atoq(const char *>I<nptr>B<);>\n"
1083
1084 #. type: Plain text
1085 #: build/C/man3/atoi.3:56
1086 msgid "B<atoll>():"
1087 msgstr "B<atoll>():"
1088
1089 #. type: Plain text
1090 #: build/C/man3/atoi.3:59
1091 msgid ""
1092 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
1093 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1094 msgstr ""
1095 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
1096 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
1097
1098 #. type: Plain text
1099 #: build/C/man3/atoi.3:71
1100 msgid ""
1101 "The B<atoi>()  function converts the initial portion of the string pointed "
1102 "to by I<nptr> to I<int>.  The behavior is the same as"
1103 msgstr ""
1104 "B<atoi>()  関数は、I<nptr> によって指示される文字列のはじめの部分を I<int> 型"
1105 "整数に変換する。 この振る舞いは、 B<atoi>()  関数がエラーを見つけない点以外"
1106 "は、"
1107
1108 #. type: Plain text
1109 #: build/C/man3/atoi.3:74
1110 msgid "strtol(nptr, NULL, 10);"
1111 msgstr "strtol(nptr, NULL, 10);"
1112
1113 #. type: Plain text
1114 #: build/C/man3/atoi.3:79
1115 msgid "except that B<atoi>()  does not detect errors."
1116 msgstr "と同じである。"
1117
1118 #. type: Plain text
1119 #: build/C/man3/atoi.3:91
1120 msgid ""
1121 "The B<atol>()  and B<atoll>()  functions behave the same as B<atoi>(), "
1122 "except that they convert the initial portion of the string to their return "
1123 "type of I<long> or I<long long>.  B<atoq>()  is an obsolete name for B<atoll>"
1124 "()."
1125 msgstr ""
1126 "B<atol>()  関数と B<atoll>()  関数は B<atoi>()  と同様の振る舞いをするが、 文"
1127 "字列のはじめの部分をそれぞれ I<long> や I<long long> に変換する。 B<atoq>()  "
1128 "は B<atoll>()  の古い名前である。"
1129
1130 #. type: Plain text
1131 #: build/C/man3/atoi.3:105
1132 msgid ""
1133 "The B<atoi>(), B<atol>(), and B<atoll>()  functions are thread-safe with "
1134 "exceptions.  These functions can be safely used in multithreaded "
1135 "applications, as long as B<setlocale>(3)  is not called to change the locale "
1136 "during their execution."
1137 msgstr ""
1138 "関数 B<atoi>(), B<atol>(), B<atoll>() は、例外付きのスレッドセーフである。実"
1139 "行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチスレッドア"
1140 "プリケーションで安全に使用することができる。"
1141
1142 #. type: Plain text
1143 #: build/C/man3/atoi.3:115
1144 msgid ""
1145 "SVr4, POSIX.1-2001, 4.3BSD, C99.  C89 and POSIX.1-1996 include the functions "
1146 "B<atoi>()  and B<atol>()  only.  B<atoq>()  is a GNU extension."
1147 msgstr ""
1148 "SVr4, POSIX.1-2001, 4.3BSD, C99.  C89 と POSIX.1-1996 には B<atoi>()  と "
1149 "B<atol>()  だけが含まれている。 B<atoq>()  は GNU による拡張である。"
1150
1151 #. type: Plain text
1152 #: build/C/man3/atoi.3:125
1153 msgid ""
1154 "The nonstandard B<atoq>()  function is not present in libc 4.6.27 or glibc "
1155 "2, but is present in libc5 and libc 4.7 (though only as an inline function "
1156 "in I<E<lt>stdlib.hE<gt>> until libc 5.4.44).  The B<atoll>()  function is "
1157 "present in glibc 2 since version 2.0.2, but not in libc4 or libc5."
1158 msgstr ""
1159 "非標準である B<atoq>()  関数は libc 4.6.27 や glibc 2 には含まれていないが、 "
1160 "libc5 と libc 4.7 には存在している (ただし libc 5.4.44 までは I<E<lt>stdlib."
1161 "hE<gt>> のインライン関数のみである)。 B<atoll>()  関数は glibc 2 のバージョ"
1162 "ン 2.0.2 から存在しているが、 libc4 や libc5 には存在しない。"
1163
1164 #. type: Plain text
1165 #: build/C/man3/atoi.3:130
1166 msgid "B<atof>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
1167 msgstr "B<atof>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
1168
1169 #. type: TH
1170 #: build/C/man3/canonicalize_file_name.3:26
1171 #, no-wrap
1172 msgid "CANONICALIZE_FILE_NAME"
1173 msgstr "CANONICALIZE_FILE_NAME"
1174
1175 #. type: TH
1176 #: build/C/man3/canonicalize_file_name.3:26
1177 #, no-wrap
1178 msgid "2013-05-11"
1179 msgstr "2013-05-11"
1180
1181 #. type: Plain text
1182 #: build/C/man3/canonicalize_file_name.3:29
1183 msgid "canonicalize_file_name - return the canonicalized absolute pathname"
1184 msgstr "canonicalize_file_name - 正規化された絶対パス名を返す"
1185
1186 #. type: Plain text
1187 #: build/C/man3/canonicalize_file_name.3:31
1188 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
1189 msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"
1190
1191 #. type: Plain text
1192 #: build/C/man3/canonicalize_file_name.3:35
1193 msgid "B<char *canonicalize_file_name(const char *>I<path>B<);>"
1194 msgstr "B<char *canonicalize_file_name(const char *>I<path>B<);>"
1195
1196 #. type: Plain text
1197 #: build/C/man3/canonicalize_file_name.3:49
1198 msgid ""
1199 "The B<canonicalize_file_name>()  function returns a null-terminated string "
1200 "containing the canonicalized absolute pathname corresponding to I<path>.  In "
1201 "the returned string, symbolic links are resolved, as are I<.> and I<..> "
1202 "pathname components.  Consecutive slash (I</>)  characters are replaced by a "
1203 "single slash."
1204 msgstr ""
1205 "B<canonicalize_file_name>() 関数は I<path> に対応する正規化された絶対パス名を"
1206 "示す NULL 終端された文字列を返す。返された文字列では、シンボリックリンクや、"
1207 "パス名に含まれる I<.> や I<..> は展開される。連続するスラッシュ (I</>) 文字は"
1208 "スラッシュ一つに置換される。"
1209
1210 #. type: Plain text
1211 #: build/C/man3/canonicalize_file_name.3:55
1212 msgid ""
1213 "The returned string is dynamically allocated by B<canonicalize_file_name>()  "
1214 "and the caller should deallocate it with B<free>(3)  when it is no longer "
1215 "required."
1216 msgstr ""
1217 "返される文字列は B<canonicalize_file_name>() により動的に割り当てられる。呼び"
1218 "出し側は、必要なくなった際にはこの文字列を B<free>(3) で解放すべきである。"
1219
1220 #. type: Plain text
1221 #: build/C/man3/canonicalize_file_name.3:59
1222 msgid "The call I<canonicalize_file_name(path)> is equivalent to the call:"
1223 msgstr "I<canonicalize_file_name(path)> は以下と等価である。"
1224
1225 #. type: Plain text
1226 #: build/C/man3/canonicalize_file_name.3:61
1227 #, no-wrap
1228 msgid "    realpath(path, NULL);\n"
1229 msgstr "    realpath(path, NULL);\n"
1230
1231 #. type: Plain text
1232 #: build/C/man3/canonicalize_file_name.3:70
1233 msgid ""
1234 "On success, B<canonicalize_file_name>()  returns a null-terminated string.  "
1235 "On error (e.g., a pathname component is unreadable or does not exist), "
1236 "B<canonicalize_file_name>()  returns NULL and sets I<errno> to indicate the "
1237 "error."
1238 msgstr ""
1239 "成功すると、 B<canonicalize_file_name>() は NULL 終端された文字列を返す。エ"
1240 "ラーの場合 (例えば、パス名の中に読み込めなかったり存在しないパスが含まれてい"
1241 "る場合など)、 B<canonicalize_file_name>() は NULL を返し、 I<errno> にエラー"
1242 "内容を示す値を設定する。"
1243
1244 #. type: SH
1245 #: build/C/man3/canonicalize_file_name.3:70 build/C/man3/getauxval.3:181
1246 #: build/C/man3/mkdtemp.3:75 build/C/man3/mkstemp.3:161
1247 #: build/C/man3/mktemp.3:91 build/C/man3/putenv.3:75 build/C/man3/random.3:140
1248 #: build/C/man3/random_r.3:105 build/C/man3/rpmatch.3:82
1249 #: build/C/man3/setenv.3:119 build/C/man3/strtod.3:156
1250 #: build/C/man3/strtol.3:144 build/C/man3/strtoul.3:148
1251 #, no-wrap
1252 msgid "ERRORS"
1253 msgstr "エラー"
1254
1255 #. type: Plain text
1256 #: build/C/man3/canonicalize_file_name.3:73
1257 msgid "See B<realpath>(3)."
1258 msgstr "B<realpath>(3) 参照。"
1259
1260 #. type: Plain text
1261 #: build/C/man3/canonicalize_file_name.3:75
1262 msgid "This function is a GNU extension."
1263 msgstr "この関数は GNU による拡張である。"
1264
1265 #. type: Plain text
1266 #: build/C/man3/canonicalize_file_name.3:78
1267 msgid "B<readlink>(2), B<realpath>(3)"
1268 msgstr "B<readlink>(2), B<realpath>(3)"
1269
1270 #. type: TH
1271 #: build/C/man3/cfree.3:24
1272 #, no-wrap
1273 msgid "CFREE"
1274 msgstr "CFREE"
1275
1276 #. type: TH
1277 #: build/C/man3/cfree.3:24 build/C/man3/ecvt_r.3:30 build/C/man3/rpmatch.3:29
1278 #, no-wrap
1279 msgid "2007-07-26"
1280 msgstr "2007-07-26"
1281
1282 #. type: Plain text
1283 #: build/C/man3/cfree.3:27
1284 msgid "cfree - free allocated memory"
1285 msgstr "cfree - 割り当てられたメモリを解放する"
1286
1287 #. type: Plain text
1288 #: build/C/man3/cfree.3:34
1289 #, no-wrap
1290 msgid ""
1291 "/* In SunOS 4 */\n"
1292 "B<int cfree(void *>I<ptr>B<);>\n"
1293 msgstr ""
1294 "/* SunOS 4 では */\n"
1295 "B<int cfree(void *>I<ptr>B<);>\n"
1296
1297 #. type: Plain text
1298 #: build/C/man3/cfree.3:37
1299 #, no-wrap
1300 msgid ""
1301 "/* In glibc or FreeBSD libcompat */\n"
1302 "B<void cfree(void *>I<ptr>B<);>\n"
1303 msgstr ""
1304 "/* glibc と FreeBSD libcompat では */\n"
1305 "B<void cfree(void *>I<ptr>B<);>\n"
1306
1307 #. type: Plain text
1308 #: build/C/man3/cfree.3:40
1309 #, no-wrap
1310 msgid ""
1311 "/* In SCO OpenServer */\n"
1312 "B<void cfree(char *>I<ptr>B<, unsigned >I<num>B<, unsigned >I<size>B<);>\n"
1313 msgstr ""
1314 "/* SCO OpenServer では */\n"
1315 "B<void cfree(char *>I<ptr>B<, unsigned >I<num>B<, unsigned >I<size>B<);>\n"
1316
1317 #. type: Plain text
1318 #: build/C/man3/cfree.3:43
1319 #, no-wrap
1320 msgid ""
1321 "/* In Solaris watchmalloc.so.1 */\n"
1322 "B<void cfree(void *>I<ptr>B<, size_t >I<nelem>B<, size_t >I<elsize>B<);>\n"
1323 msgstr ""
1324 "/* Solaris watchmalloc.so.1 では */\n"
1325 "B<void cfree(void *>I<ptr>B<, size_t >I<nelem>B<, size_t >I<elsize>B<);>\n"
1326
1327 #. type: Plain text
1328 #: build/C/man3/cfree.3:52
1329 msgid "B<cfree>(): _BSD_SOURCE || _SVID_SOURCE"
1330 msgstr "B<cfree>(): _BSD_SOURCE || _SVID_SOURCE"
1331
1332 #. type: Plain text
1333 #: build/C/man3/cfree.3:57
1334 msgid "This function should never be used.  Use B<free>(3)  instead."
1335 msgstr "この関数は決して使用すべきではない。 代わりに B<free>(3)  を使うこと。"
1336
1337 #. type: SS
1338 #: build/C/man3/cfree.3:57
1339 #, no-wrap
1340 msgid "1-arg cfree"
1341 msgstr "引き数が 1 つの cfree"
1342
1343 #. type: Plain text
1344 #: build/C/man3/cfree.3:63
1345 msgid ""
1346 "In glibc, the function B<cfree>()  is a synonym for B<free>(3), \"added for "
1347 "compatibility with SunOS\"."
1348 msgstr ""
1349 "glibc では、関数 B<cfree>()  は B<free>(3)  の別名であり、「SunOS との互換性"
1350 "のために追加された」。"
1351
1352 #. type: Plain text
1353 #: build/C/man3/cfree.3:69
1354 msgid ""
1355 "Other systems have other functions with this name.  The declaration is "
1356 "sometimes in I<E<lt>stdlib.hE<gt>> and sometimes in I<E<lt>malloc.hE<gt>>."
1357 msgstr ""
1358 "他のシステムでは、この名前の別の関数がある。 この宣言は I<E<lt>stdlib."
1359 "hE<gt>> に存在する場合もあるし、 I<E<lt>malloc.hE<gt>> に存在する場合もある。"
1360
1361 #. type: SS
1362 #: build/C/man3/cfree.3:69
1363 #, no-wrap
1364 msgid "3-arg cfree"
1365 msgstr "引き数が 3 つの cfree"
1366
1367 #. type: Plain text
1368 #: build/C/man3/cfree.3:74
1369 msgid ""
1370 "Some SCO and Solaris versions have malloc libraries with a 3-argument "
1371 "B<cfree>(), apparently as an analog to B<calloc>(3)."
1372 msgstr ""
1373 "SCO と Solaris のいくつかのバージョンでは、 引き数が 3 つの B<cfree>()  が含"
1374 "まれる malloc ライブラリがある。 これは明らかに B<calloc>(3)  に類似してい"
1375 "る。"
1376
1377 #. type: Plain text
1378 #: build/C/man3/cfree.3:76
1379 msgid "If you need it while porting something, add"
1380 msgstr "何かを移植する時にこの関数が必要な場合、"
1381
1382 #. type: Plain text
1383 #: build/C/man3/cfree.3:79
1384 msgid "#define cfree(p, n, s) free((p))"
1385 msgstr "#define cfree(p, n, s) free((p))"
1386
1387 #. type: Plain text
1388 #: build/C/man3/cfree.3:82
1389 msgid "to your file."
1390 msgstr "をファイルに追加すること。"
1391
1392 #. type: Plain text
1393 #: build/C/man3/cfree.3:91
1394 msgid ""
1395 "A frequently asked question is \"Can I use B<free>(3)  to free memory "
1396 "allocated with B<calloc>(3), or do I need B<cfree>()?\" Answer: use B<free>"
1397 "(3)."
1398 msgstr ""
1399 "よく尋ねられる質問は 「B<calloc>(3)  で割り当てられたメモリを解放するのに "
1400 "B<free>(3)  を使うことができるか、 それとも B<cfree>()  を使う必要があるか」"
1401 "というものである。 答え: B<free>(3)  を使うこと。"
1402
1403 #. type: Plain text
1404 #: build/C/man3/cfree.3:96
1405 msgid ""
1406 "An SCO manual writes: \"The cfree routine is provided for compliance to the "
1407 "iBCSe2 standard and simply calls free.  The num and size arguments to cfree "
1408 "are not used.\""
1409 msgstr ""
1410 "SCO のマニュアルには以下のように記述されている: 「cfree ルーチンは iBCSe2 規"
1411 "格に従うために提供されており、 単に free を呼んでいるだけである。 cfree の "
1412 "num と size 引き数は使用されない。」"
1413
1414 #. type: Plain text
1415 #: build/C/man3/cfree.3:112
1416 msgid ""
1417 "The SunOS version of B<cfree>()  (which is a synonym for B<free>(3))  "
1418 "returns 1 on success and 0 on failure.  In case of error, I<errno> is set to "
1419 "B<EINVAL>: the value of I<ptr> was not a pointer to a block previously "
1420 "allocated by one of the routines in the B<malloc>(3)  family."
1421 msgstr ""
1422 "SunOS 版の B<cfree>()  (B<free>(3)  の別名) は、成功した場合に 1 を返し、失敗"
1423 "した場合に 0 を返す。 エラーの場合、 I<errno> が B<EINVAL> に設定される: "
1424 "I<ptr> の値が B<malloc>()  系のルーチンの 1 つで以前に割り当てられた ブロック"
1425 "へのポインタでない。"
1426
1427 #. type: Plain text
1428 #: build/C/man3/cfree.3:117
1429 msgid ""
1430 "The 3-argument version of B<cfree>()  as used by SCO conforms to the iBCSe2 "
1431 "standard: Intel386 Binary Compatibility Specification, Edition 2."
1432 msgstr ""
1433 "SCO で用いられている引き数が 3 つの B<cfree>()  は、iBCSe2 規格: Intel386 "
1434 "Binary Compatibility Specification, Edition 2 (Intel386 バイナリ互換仕様、第 "
1435 "2 版) に準拠する。"
1436
1437 #. type: Plain text
1438 #: build/C/man3/cfree.3:119
1439 msgid "B<malloc>(3)"
1440 msgstr "B<malloc>(3)"
1441
1442 #. type: TH
1443 #: build/C/man3/clearenv.3:26
1444 #, no-wrap
1445 msgid "CLEARENV"
1446 msgstr "CLEARENV"
1447
1448 #. type: TH
1449 #: build/C/man3/clearenv.3:26
1450 #, no-wrap
1451 msgid "2010-10-04"
1452 msgstr "2010-10-04"
1453
1454 #. type: Plain text
1455 #: build/C/man3/clearenv.3:29
1456 msgid "clearenv - clear the environment"
1457 msgstr "clearenv - 環境 (environment) をクリアする"
1458
1459 #. type: Plain text
1460 #: build/C/man3/clearenv.3:34
1461 #, no-wrap
1462 msgid "B<int clearenv(void);>\n"
1463 msgstr "B<int clearenv(void);>\n"
1464
1465 #. type: Plain text
1466 #: build/C/man3/clearenv.3:43
1467 msgid "B<clearenv>(): _SVID_SOURCE || _BSD_SOURCE"
1468 msgstr "B<clearenv>(): _SVID_SOURCE || _BSD_SOURCE"
1469
1470 #. type: Plain text
1471 #: build/C/man3/clearenv.3:50
1472 msgid ""
1473 "The B<clearenv>()  function clears the environment of all name-value pairs "
1474 "and sets the value of the external variable I<environ> to NULL."
1475 msgstr ""
1476 "B<clearenv>()  関数は、名前と値が組になった全ての環境をクリアする。 さらに外"
1477 "部変数 I<environ> の値を NULL にする。"
1478
1479 #.  Most versions of UNIX return -1 on error, or do not even have errors.
1480 #.  Glibc info and the Watcom C library document "a nonzero value".
1481 #. type: Plain text
1482 #: build/C/man3/clearenv.3:57
1483 msgid ""
1484 "The B<clearenv>()  function returns zero on success, and a nonzero value on "
1485 "failure."
1486 msgstr ""
1487 "B<clearenv>()  関数は、成功した場合は 0 を返し、 失敗した場合は 0 以外を返"
1488 "す。"
1489
1490 #. type: SH
1491 #: build/C/man3/clearenv.3:57 build/C/man3/getauxval.3:183
1492 #: build/C/man3/getenv.3:93 build/C/man3/getloadavg.3:63
1493 #: build/C/man3/mkdtemp.3:84 build/C/man3/mkstemp.3:188
1494 #, no-wrap
1495 msgid "VERSIONS"
1496 msgstr "バージョン"
1497
1498 #. type: Plain text
1499 #: build/C/man3/clearenv.3:60
1500 msgid "Not in libc4, libc5.  In glibc since glibc 2.0."
1501 msgstr "libc4, libc5 では使用できない。 glibc 2.0 以降の glibc で使用できる。"
1502
1503 #. type: Plain text
1504 #: build/C/man3/clearenv.3:74
1505 msgid ""
1506 "Various UNIX variants (DG/UX, HP-UX, QNX, ...).  POSIX.9 (bindings for "
1507 "FORTRAN77).  POSIX.1-1996 did not accept B<clearenv>()  and B<putenv>(3), "
1508 "but changed its mind and scheduled these functions for some later issue of "
1509 "this standard (cf. B.4.6.1).  However, POSIX.1-2001 adds only B<putenv>(3), "
1510 "and rejected B<clearenv>()."
1511 msgstr ""
1512 "(DG/UX, HP-UX, QNX, などの) 多くの UNIX 系 OS。 (FORTRAN77 へのバインディング"
1513 "である) POSIX.9。 POSIX.1-1996 では B<clearenv>()  と B<putenv>(3)  は採用さ"
1514 "れなかったが、 方針が変更され、この標準規格の以降の号 (B.4.6.1 を参照) では "
1515 "採用されることになった。 しかし POSIX.1-2001 では B<putenv>(3) だけが追加さ"
1516 "れ、 B<clearenv>()  の追加は否決された。"
1517
1518 #. type: Plain text
1519 #: build/C/man3/clearenv.3:78
1520 msgid ""
1521 "Used in security-conscious applications.  If it is unavailable the assignment"
1522 msgstr ""
1523 "この関数はセキュリティに考慮したアプリケーションで使われる。 この関数が使用で"
1524 "きない場合は、"
1525
1526 #. type: Plain text
1527 #: build/C/man3/clearenv.3:81
1528 #, no-wrap
1529 msgid "    environ = NULL;\n"
1530 msgstr "    environ = NULL;\n"
1531
1532 #. type: Plain text
1533 #: build/C/man3/clearenv.3:84
1534 msgid "will probably do."
1535 msgstr "というように変数 environ を設定すればよい。"
1536
1537 #.  .LP
1538 #.  HP-UX has a ENOMEM error return.
1539 #. type: Plain text
1540 #: build/C/man3/clearenv.3:97
1541 msgid ""
1542 "The DG/UX and Tru64 man pages write: If I<environ> has been modified by "
1543 "anything other than the B<putenv>(3), B<getenv>(3), or B<clearenv>()  "
1544 "functions, then B<clearenv>()  will return an error and the process "
1545 "environment will remain unchanged."
1546 msgstr ""
1547 "DG/UX と Tru64 man ページには次のように記されている: I<environ> が B<putenv>"
1548 "(3), B<getenv>(3), B<clearenv>()  関数以外で変更された場合、 B<clearenv>()  "
1549 "はエラーを返し、プロセス環境は変更前のままにされる。"
1550
1551 #. type: Plain text
1552 #: build/C/man3/clearenv.3:103
1553 msgid "B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
1554 msgstr ""
1555 "B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
1556
1557 #. type: TH
1558 #: build/C/man3/drand48.3:30
1559 #, no-wrap
1560 msgid "DRAND48"
1561 msgstr "DRAND48"
1562
1563 #. type: Plain text
1564 #: build/C/man3/drand48.3:34
1565 msgid ""
1566 "drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, "
1567 "lcong48 - generate uniformly distributed pseudo-random numbers"
1568 msgstr ""
1569 "drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, "
1570 "lcong48 - 一様分布する疑似乱数を生成する関数"
1571
1572 #. type: Plain text
1573 #: build/C/man3/drand48.3:39
1574 #, no-wrap
1575 msgid "B<double drand48(void);>\n"
1576 msgstr "B<double drand48(void);>\n"
1577
1578 #. type: Plain text
1579 #: build/C/man3/drand48.3:41
1580 #, no-wrap
1581 msgid "B<double erand48(unsigned short >I<xsubi>B<[3]);>\n"
1582 msgstr "B<double erand48(unsigned short >I<xsubi>B<[3]);>\n"
1583
1584 #. type: Plain text
1585 #: build/C/man3/drand48.3:43
1586 #, no-wrap
1587 msgid "B<long int lrand48(void);>\n"
1588 msgstr "B<long int lrand48(void);>\n"
1589
1590 #. type: Plain text
1591 #: build/C/man3/drand48.3:45
1592 #, no-wrap
1593 msgid "B<long int nrand48(unsigned short >I<xsubi>B<[3]);>\n"
1594 msgstr "B<long int nrand48(unsigned short >I<xsubi>B<[3]);>\n"
1595
1596 #. type: Plain text
1597 #: build/C/man3/drand48.3:47
1598 #, no-wrap
1599 msgid "B<long int mrand48(void);>\n"
1600 msgstr "B<long int mrand48(void);>\n"
1601
1602 #. type: Plain text
1603 #: build/C/man3/drand48.3:49
1604 #, no-wrap
1605 msgid "B<long int jrand48(unsigned short >I<xsubi>B<[3]);>\n"
1606 msgstr "B<long int jrand48(unsigned short >I<xsubi>B<[3]);>\n"
1607
1608 #. type: Plain text
1609 #: build/C/man3/drand48.3:51
1610 #, no-wrap
1611 msgid "B<void srand48(long int >I<seedval>B<);>\n"
1612 msgstr "B<void srand48(long int >I<seedval>B<);>\n"
1613
1614 #. type: Plain text
1615 #: build/C/man3/drand48.3:53
1616 #, no-wrap
1617 msgid "B<unsigned short *seed48(unsigned short >I<seed16v>B<[3]);>\n"
1618 msgstr "B<unsigned short *seed48(unsigned short >I<seed16v>B<[3]);>\n"
1619
1620 #. type: Plain text
1621 #: build/C/man3/drand48.3:55
1622 #, no-wrap
1623 msgid "B<void lcong48(unsigned short >I<param>B<[7]);>\n"
1624 msgstr "B<void lcong48(unsigned short >I<param>B<[7]);>\n"
1625
1626 #.  .BR drand48 (),
1627 #.  .BR erand48 (),
1628 #.  .BR lrand48 (),
1629 #.  .BR nrand48 (),
1630 #.  .BR mrand48 (),
1631 #.  .BR jrand48 (),
1632 #.  .BR srand48 (),
1633 #.  .BR seed48 (),
1634 #.  .BR lcong48 ():
1635 #. type: Plain text
1636 #: build/C/man3/drand48.3:74
1637 msgid "All functions shown above: _SVID_SOURCE || _XOPEN_SOURCE"
1638 msgstr "上記の全ての関数: _SVID_SOURCE || _XOPEN_SOURCE"
1639
1640 #. type: Plain text
1641 #: build/C/man3/drand48.3:78
1642 msgid ""
1643 "These functions generate pseudo-random numbers using the linear congruential "
1644 "algorithm and 48-bit integer arithmetic."
1645 msgstr ""
1646 "これらの関数は線形合同アルゴリズムと 48ビット整数演算を用いて 疑似乱数を生成"
1647 "する。"
1648
1649 #. type: Plain text
1650 #: build/C/man3/drand48.3:86
1651 msgid ""
1652 "The B<drand48>()  and B<erand48>()  functions return nonnegative double-"
1653 "precision floating-point values uniformly distributed between [0.0, 1.0)."
1654 msgstr ""
1655 "関数 B<drand48>()  と B<erand48>()  は、区間 [0.0, 1.0) で 一様分布する非負の"
1656 "倍精度浮動小数点実数値を返す。"
1657
1658 #. type: Plain text
1659 #: build/C/man3/drand48.3:93
1660 msgid ""
1661 "The B<lrand48>()  and B<nrand48>()  functions return nonnegative long "
1662 "integers uniformly distributed between 0 and 2^31."
1663 msgstr ""
1664 "関数 B<lrand48>()  と B<nrand48>()  は 0 と 2^31 の間で一様分布する 非負のロ"
1665 "ング整数を返す。"
1666
1667 #. type: Plain text
1668 #: build/C/man3/drand48.3:100
1669 msgid ""
1670 "The B<mrand48>()  and B<jrand48>()  functions return signed long integers "
1671 "uniformly distributed between -2^31 and 2^31."
1672 msgstr ""
1673 "関数 B<mrand48>()  と B<jrand48>()  は -2^31 と 2^31 の間で一様分布する符号付"
1674 "きロング整数を返す。"
1675
1676 #. type: Plain text
1677 #: build/C/man3/drand48.3:119
1678 msgid ""
1679 "The B<srand48>(), B<seed48>()  and B<lcong48>()  functions are "
1680 "initialization functions, one of which should be called before using "
1681 "B<drand48>(), B<lrand48>()  or B<mrand48>().  The functions B<erand48>(), "
1682 "B<nrand48>()  and B<jrand48>()  do not require an initialization function to "
1683 "be called first."
1684 msgstr ""
1685 "関数 B<srand48>(), B<seed48>(), B<lcong48>()  は初期化関数 である。 関数 "
1686 "B<drand48>(), B<lrand48>(), B<mrand48>()  を 使用する前に、これらの初期化関数"
1687 "のいずれかを呼ぶべきである。 関数 B<erand48>(), B<nrand48>(), B<jrand48>()  "
1688 "は初めに 初期化関数を呼ぶことを必要としない。"
1689
1690 #. type: Plain text
1691 #: build/C/man3/drand48.3:123
1692 msgid ""
1693 "All the functions work by generating a sequence of 48-bit integers, I<Xi>, "
1694 "according to the linear congruential formula:"
1695 msgstr ""
1696 "ここで説明しているすべての関数は 48ビットの整数の シーケンス (I<Xi>) を生成す"
1697 "ることで 機能している。生成方法は以下の線形合同の式による。"
1698
1699 #. type: Plain text
1700 #: build/C/man3/drand48.3:127
1701 #, no-wrap
1702 msgid "B<Xn+1 = (aXn + c) mod m, where n E<gt>= 0>\n"
1703 msgstr "B<Xn+1 = (aXn + c) mod m,>\n"
1704
1705 #. type: Plain text
1706 #: build/C/man3/drand48.3:140
1707 msgid ""
1708 "The parameter I<m> = 2^48, hence 48-bit integer arithmetic is performed.  "
1709 "Unless B<lcong48>()  is called, I<a> and I<c> are given by:"
1710 msgstr ""
1711 "ここで n E<gt>= 0 である。 パラメータが I<m> = 2^48 であるため、48ビット整数"
1712 "演算が行われている。 B<lcong48>()  が呼ばれていない場合、I<a> と I<c> は以下"
1713 "の式で与えられる。"
1714
1715 #. type: Plain text
1716 #: build/C/man3/drand48.3:145
1717 #, no-wrap
1718 msgid ""
1719 "B<a = 0x5DEECE66D>\n"
1720 "B<c = 0xB>\n"
1721 msgstr ""
1722 "B<a = 0x5DEECE66D>\n"
1723 "B<c = 0xB>\n"
1724
1725 #. type: Plain text
1726 #: build/C/man3/drand48.3:165
1727 msgid ""
1728 "The value returned by any of the functions B<drand48>(), B<erand48>(), "
1729 "B<lrand48>(), B<nrand48>(), B<mrand48>()  or B<jrand48>()  is computed by "
1730 "first generating the next 48-bit I<Xi> in the sequence.  Then the "
1731 "appropriate number of bits, according to the type of data item to be "
1732 "returned, is copied from the high-order bits of I<Xi> and transformed into "
1733 "the returned value."
1734 msgstr ""
1735 "関数 B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
1736 "B<jrand48>()  で返される値は次のようにして計算される。 はじめに、次の48ビット"
1737 "の I<Xi> が計算される。 そして、返すべきデータの型に依存した適切な ビット数"
1738 "が I<Xi> の上位ビットからコピーされる。 最後に、この値を返り値に変換する。"
1739
1740 #. type: Plain text
1741 #: build/C/man3/drand48.3:191
1742 msgid ""
1743 "The functions B<drand48>(), B<lrand48>()  and B<mrand48>()  store the last "
1744 "48-bit I<Xi> generated in an internal buffer.  The functions B<erand48>(), "
1745 "B<nrand48>()  and B<jrand48>()  require the calling program to provide "
1746 "storage for the successive I<Xi> values in the array argument I<xsubi>.  The "
1747 "functions are initialized by placing the initial value of I<Xi> into the "
1748 "array before calling the function for the first time."
1749 msgstr ""
1750 "関数 B<drand48>(), B<lrand48>(), B<mrand48>()  は 最後に生成された48ビットの "
1751 "I<Xi> を内部バッファに格納する。 配列の形の引数 I<xsubi> に個々の I<Xi> の値"
1752 "を 格納できるような領域を確保することを、 関数 B<erand48>(), B<nrand48>(), "
1753 "B<jrand48>()  は、 呼び出し側のプログラムに要求する。 これらの関数は、はじめ"
1754 "てそれらの関数を呼ぶ前に I<Xi> の初期値を配列に 代入することで初期化される。"
1755
1756 #. type: Plain text
1757 #: build/C/man3/drand48.3:200
1758 msgid ""
1759 "The initializer function B<srand48>()  sets the high order 32-bits of I<Xi> "
1760 "to the argument I<seedval>.  The low order 16-bits are set to the arbitrary "
1761 "value 0x330E."
1762 msgstr ""
1763 "初期化関数 B<srand48>()  は、I<Xi> の 上位32ビットを引数 I<seedval> に設定す"
1764 "る。 下位の16ビットは、適当に決められた値である0x330Eに設定される。"
1765
1766 #. type: Plain text
1767 #: build/C/man3/drand48.3:214
1768 msgid ""
1769 "The initializer function B<seed48>()  sets the value of I<Xi> to the 48-bit "
1770 "value specified in the array argument I<seed16v>.  The previous value of "
1771 "I<Xi> is copied into an internal buffer and a pointer to this buffer is "
1772 "returned by B<seed48>()."
1773 msgstr ""
1774 "初期化関数 B<seed48>()  は、I<Xi> の値を、 配列の形をした引数である "
1775 "I<seed16v> の中で指定された 48ビットの値に設定する。 I<Xi> の前の値は内部バッ"
1776 "ファにコピーされ、このバッファへのポインタが B<seed48>()  によって返される。"
1777
1778 #. type: Plain text
1779 #: build/C/man3/drand48.3:245
1780 msgid ""
1781 "The initialization function B<lcong48>()  allows the user to specify initial "
1782 "values for I<Xi>, I<a> and I<c>.  Array argument elements I<param[0-2]> "
1783 "specify I<Xi>, I<param[3-5]> specify I<a>, and I<param[6]> specifies I<c>.  "
1784 "After B<lcong48>()  has been called, a subsequent call to either B<srand48>"
1785 "()  or B<seed48>()  will restore the standard values of I<a> and I<c>."
1786 msgstr ""
1787 "初期化関数 B<lcong48>()  は使用者が I<Xi>, I<a>, I<c> の 初期値を指定するため"
1788 "の関数である。 配列の形をした引数の要素はそれぞれ、I<param[0-2]> は I<Xi> "
1789 "を、 I<param[3-5]> は I<a> を、I<param[6]> は I<c> を指定するもの である。 "
1790 "B<lcong48>()  が呼ばれた後で、 B<srand48>()  か B<seed48>()  を呼ぶと、前述"
1791 "の I<a> と I<c> の 標準値が再び設定される。"
1792
1793 #. type: Plain text
1794 #: build/C/man3/drand48.3:260
1795 msgid ""
1796 "The B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
1797 "B<jrand48>(), B<srand48>(), B<seed48>(), and B<lcong48>()  functions record "
1798 "global state information for the random number generator, so they are not "
1799 "thread-safe."
1800 msgstr ""
1801 "関数 B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
1802 "B<jrand48>(), B<srand48>(), B<seed48>(), B<lcong48>() は、 乱数生成に使用する"
1803 "状態情報をグローバルに保持する。 そのため、 これらの関数はスレッドセーフでは"
1804 "ない。"
1805
1806 #. type: Plain text
1807 #: build/C/man3/drand48.3:262
1808 msgid "SVr4, POSIX.1-2001."
1809 msgstr "SVr4, POSIX.1-2001."
1810
1811 #. type: Plain text
1812 #: build/C/man3/drand48.3:266
1813 msgid ""
1814 "These functions are declared obsolete by SVID 3, which states that B<rand>"
1815 "(3)  should be used instead."
1816 msgstr ""
1817 "SVID 3 ではこれらの関数は時代遅れと宣言されている。 SVID 3 では B<rand>(3)  "
1818 "が代わりに使用されるべきだと記述されている。"
1819
1820 #. type: Plain text
1821 #: build/C/man3/drand48.3:269
1822 msgid "B<rand>(3), B<random>(3)"
1823 msgstr "B<rand>(3), B<random>(3)"
1824
1825 #. type: TH
1826 #: build/C/man3/drand48_r.3:27
1827 #, no-wrap
1828 msgid "DRAND48_R"
1829 msgstr "DRAND48_R"
1830
1831 #. type: TH
1832 #: build/C/man3/drand48_r.3:27
1833 #, no-wrap
1834 msgid "2013-09-09"
1835 msgstr "2013-09-09"
1836
1837 #. type: Plain text
1838 #: build/C/man3/drand48_r.3:32
1839 msgid ""
1840 "drand48_r, erand48_r, lrand48_r, nrand48_r, mrand48_r, jrand48_r, srand48_r, "
1841 "seed48_r, lcong48_r - generate uniformly distributed pseudo-random numbers "
1842 "reentrantly"
1843 msgstr ""
1844 "drand48_r, erand48_r, lrand48_r, nrand48_r, mrand48_r, jrand48_r, srand48_r, "
1845 "seed48_r, lcong48_r - 一様分布する疑似乱数をリエントラント (reentrant) に生成"
1846 "する"
1847
1848 #. type: Plain text
1849 #: build/C/man3/drand48_r.3:37
1850 #, no-wrap
1851 msgid "B<int drand48_r(struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
1852 msgstr "B<int drand48_r(struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
1853
1854 #. type: Plain text
1855 #: build/C/man3/drand48_r.3:39
1856 #, no-wrap
1857 msgid "B<int erand48_r(unsigned short >I<xsubi>B<[3]>I<,>\n"
1858 msgstr "B<int erand48_r(unsigned short >I<xsubi>B<[3]>I<,>\n"
1859
1860 #. type: Plain text
1861 #: build/C/man3/drand48_r.3:41
1862 #, no-wrap
1863 msgid "B<              struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
1864 msgstr "B<              struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
1865
1866 #. type: Plain text
1867 #: build/C/man3/drand48_r.3:43
1868 #, no-wrap
1869 msgid "B<int lrand48_r(struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
1870 msgstr "B<int lrand48_r(struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
1871
1872 #. type: Plain text
1873 #: build/C/man3/drand48_r.3:45
1874 #, no-wrap
1875 msgid "B<int nrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
1876 msgstr "B<int nrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
1877
1878 #. type: Plain text
1879 #: build/C/man3/drand48_r.3:47 build/C/man3/drand48_r.3:53
1880 #, no-wrap
1881 msgid "B<              struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
1882 msgstr "B<              struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
1883
1884 #. type: Plain text
1885 #: build/C/man3/drand48_r.3:49
1886 #, no-wrap
1887 msgid "B<int mrand48_r(struct drand48_data *>I<buffer>B<,long int *>I<result>B<);>\n"
1888 msgstr "B<int mrand48_r(struct drand48_data *>I<buffer>B<,long int *>I<result>B<);>\n"
1889
1890 #. type: Plain text
1891 #: build/C/man3/drand48_r.3:51
1892 #, no-wrap
1893 msgid "B<int jrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
1894 msgstr "B<int jrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
1895
1896 #. type: Plain text
1897 #: build/C/man3/drand48_r.3:55
1898 #, no-wrap
1899 msgid "B<int srand48_r(long int >I<seedval>B<, struct drand48_data *>I<buffer>B<);>\n"
1900 msgstr "B<int srand48_r(long int >I<seedval>B<, struct drand48_data *>I<buffer>B<);>\n"
1901
1902 #. type: Plain text
1903 #: build/C/man3/drand48_r.3:57
1904 #, no-wrap
1905 msgid "B<int seed48_r(unsigned short int >I<seed16v[3]>B<,>\n"
1906 msgstr "B<int seed48_r(unsigned short int >I<seed16v[3]>B<,>\n"
1907
1908 #. type: Plain text
1909 #: build/C/man3/drand48_r.3:59
1910 #, no-wrap
1911 msgid "B<             struct drand48_data *>I<buffer>B<);>\n"
1912 msgstr "B<             struct drand48_data *>I<buffer>B<);>\n"
1913
1914 #. type: Plain text
1915 #: build/C/man3/drand48_r.3:61
1916 #, no-wrap
1917 msgid "B<int lcong48_r(unsigned short int >I<param[7]>B<,>\n"
1918 msgstr "B<int lcong48_r(unsigned short int >I<param[7]>B<,>\n"
1919
1920 #. type: Plain text
1921 #: build/C/man3/drand48_r.3:63
1922 #, no-wrap
1923 msgid "B<              struct drand48_data *>I<buffer>B<);>\n"
1924 msgstr "B<              struct drand48_data *>I<buffer>B<);>\n"
1925
1926 #.  .BR drand48_r (),
1927 #.  .BR erand48_r (),
1928 #.  .BR lrand48_r (),
1929 #.  .BR nrand48_r (),
1930 #.  .BR mrand48_r (),
1931 #.  .BR jrand48_r (),
1932 #.  .BR srand48_r (),
1933 #.  .BR seed48_r (),
1934 #.  .BR lcong48_r ():
1935 #. type: Plain text
1936 #: build/C/man3/drand48_r.3:82
1937 msgid "All functions shown above: _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE"
1938 msgstr "上記の全ての関数: _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE"
1939
1940 #. type: Plain text
1941 #: build/C/man3/drand48_r.3:89
1942 msgid ""
1943 "These functions are the reentrant analogs of the functions described in "
1944 "B<drand48>(3).  Instead of modifying the global random generator state, they "
1945 "use the supplied data I<buffer>."
1946 msgstr ""
1947 "これらの関数は B<drand48>(3)  で説明されている関数に類似するリエントラントな"
1948 "関数である。 大域的な乱数生成の状態を変更する代わりに、 これらの関数は指定さ"
1949 "れたデータ I<buffer> を使う。"
1950
1951 #. type: Plain text
1952 #: build/C/man3/drand48_r.3:96
1953 msgid ""
1954 "Before the first use, this struct must be initialized, for example, by "
1955 "filling it with zeros, or by calling one of the functions B<srand48_r>(), "
1956 "B<seed48_r>(), or B<lcong48_r>()."
1957 msgstr ""
1958 "最初に使う前に、この構造体は初期化されていなければならない。 初期化は、たとえ"
1959 "ば 0 で埋めたり、関数 B<srand48_r>(), B<seed48_r>(), B<lcong48_r>()  のいずれ"
1960 "かを呼び出すことによって行われる。"
1961
1962 #. type: Plain text
1963 #: build/C/man3/drand48_r.3:98
1964 msgid "The return value is 0."
1965 msgstr "返り値は 0 である。"
1966
1967 #. type: Plain text
1968 #: build/C/man3/drand48_r.3:112
1969 msgid ""
1970 "The B<drand48_r>(), B<erand48_r>(), B<lrand48_r>(), B<nrand48_r>(), "
1971 "B<mrand48_r>(), B<jrand48_r>(), B<srand48_r>(), B<seed48_r>(), and "
1972 "B<lcong48_r>()  functions are thread-safe."
1973 msgstr ""
1974 "関数 B<drand48_r>(), B<erand48_r>(), B<lrand48_r>(), B<nrand48_r>(), "
1975 "B<mrand48_r>(), B<jrand48_r>(), B<srand48_r>(), B<seed48_r>(), B<lcong48_r>"
1976 "() はスレッドセーフである。"
1977
1978 #. type: Plain text
1979 #: build/C/man3/drand48_r.3:114
1980 msgid "These functions are GNU extensions and are not portable."
1981 msgstr "これらの関数は GNU による拡張であり、移植性はない。"
1982
1983 #. type: Plain text
1984 #: build/C/man3/drand48_r.3:118 build/C/man3/random_r.3:145
1985 msgid "B<drand48>(3), B<rand>(3), B<random>(3)"
1986 msgstr "B<drand48>(3), B<rand>(3), B<random>(3)"
1987
1988 #. type: TH
1989 #: build/C/man3/ecvt.3:32
1990 #, no-wrap
1991 msgid "ECVT"
1992 msgstr "ECVT"
1993
1994 #. type: TH
1995 #: build/C/man3/ecvt.3:32
1996 #, no-wrap
1997 msgid "2013-07-04"
1998 msgstr "2013-07-04"
1999
2000 #. type: Plain text
2001 #: build/C/man3/ecvt.3:35
2002 msgid "ecvt, fcvt - convert a floating-point number to a string"
2003 msgstr "ecvt, fcvt - 浮動小数点数の文字列への変換"
2004
2005 #. type: Plain text
2006 #: build/C/man3/ecvt.3:40
2007 msgid ""
2008 "B<char *ecvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
2009 "B<int *>I<sign>B<);>"
2010 msgstr ""
2011 "B<char *ecvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
2012 "B<int *>I<sign>B<);>"
2013
2014 #. type: Plain text
2015 #: build/C/man3/ecvt.3:43
2016 msgid ""
2017 "B<char *fcvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
2018 "B<int *>I<sign>B<);>"
2019 msgstr ""
2020 "B<char *fcvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
2021 "B<int *>I<sign>B<);>"
2022
2023 #. type: Plain text
2024 #: build/C/man3/ecvt.3:51
2025 msgid "B<ecvt>(), B<fcvt>():"
2026 msgstr "B<ecvt>(), B<fcvt>():"
2027
2028 #. type: TP
2029 #: build/C/man3/ecvt.3:54 build/C/man3/gcvt.3:49 build/C/man3/mktemp.3:53
2030 #, no-wrap
2031 msgid "Since glibc 2.12:"
2032 msgstr "glibc 2.12 以降:"
2033
2034 #. type: Plain text
2035 #: build/C/man3/ecvt.3:61 build/C/man3/gcvt.3:56
2036 #, no-wrap
2037 msgid ""
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 msgstr ""
2043 "_SVID_SOURCE ||\n"
2044 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
2045 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
2046 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
2047
2048 #. type: TP
2049 #: build/C/man3/ecvt.3:62 build/C/man3/gcvt.3:57 build/C/man3/mktemp.3:59
2050 #, no-wrap
2051 msgid "Before glibc 2.12:"
2052 msgstr "glibc 2.12 より前:"
2053
2054 #. type: Plain text
2055 #: build/C/man3/ecvt.3:92
2056 msgid ""
2057 "The B<ecvt>()  function converts I<number> to a null-terminated string of "
2058 "I<ndigits> digits (where I<ndigits> is reduced to a system-specific limit "
2059 "determined by the precision of a I<double>), and returns a pointer to the "
2060 "string.  The high-order digit is nonzero, unless I<number> is zero.  The low "
2061 "order digit is rounded.  The string itself does not contain a decimal point; "
2062 "however, the position of the decimal point relative to the start of the "
2063 "string is stored in I<*decpt>.  A negative value for I<*decpt> means that "
2064 "the decimal point is to the left of the start of the string.  If the sign of "
2065 "I<number> is negative, I<*sign> is set to a nonzero value, otherwise it is "
2066 "set to 0.  If I<number> is zero, it is unspecified whether I<*decpt> is 0 or "
2067 "1."
2068 msgstr ""
2069 "関数 B<ecvt>()  は I<number> を NUL 文字で終端された I<ndigits> 文字の文字列"
2070 "へ変換し、その文字列へのポインタを返す (I<ndigits> が I<double> の精度によっ"
2071 "て決定されるシステム依存の上限値より大きい場合は、 その条件値が I<ndigits> の"
2072 "値となる)。 I<number> が 0 でなければ、最上位の桁は 0 以外である。 最下位の桁"
2073 "は丸められる。 文字列には小数点は含まれない。そのかわりに、文字列の先頭からの"
2074 "小数点の 位置が I<*decpt> に保持される。 I<*decpt> が負の値の場合、小数点が文"
2075 "字列の先頭の左側にあることを意味する。 もし(I<number>の)符号が負ならば "
2076 "I<*sign> は 0 以外の値に、 そうでなければ 0 に設定される。 I<number> が 0 な"
2077 "ら、I<*decpt> が 0 か 1 かは未規定である。"
2078
2079 #. type: Plain text
2080 #: build/C/man3/ecvt.3:99
2081 msgid ""
2082 "The B<fcvt>()  function is identical to B<ecvt>(), except that I<ndigits> "
2083 "specifies the number of digits after the decimal point."
2084 msgstr ""
2085 "関数 B<fcvt>()  は B<ecvt>()  と同じ機能を持つが、I<ndigits> は小数点以下の文"
2086 "字数を指定する。"
2087
2088 #. type: Plain text
2089 #: build/C/man3/ecvt.3:110
2090 msgid ""
2091 "Both the B<ecvt>()  and B<fcvt>()  functions return a pointer to a static "
2092 "string containing the ASCII representation of I<number>.  The static string "
2093 "is overwritten by each call to B<ecvt>()  or B<fcvt>()."
2094 msgstr ""
2095 "関数 B<ecvt>()  と B<fcvt>()  は I<number> の ASCII 表現を含む 静的な領域内の"
2096 "文字列へのポインタを返す。 この文字列は B<ecvt>()  や B<fcvt>()  の呼び出しの"
2097 "たびに上書きされる。"
2098
2099 #. type: Plain text
2100 #: build/C/man3/ecvt.3:117
2101 msgid "The B<ecvt>()  and B<fcvt>()  functions are not thread-safe."
2102 msgstr "関数 B<ecvt>() と B<fcvt>() はスレッドセーフではない。"
2103
2104 #. type: Plain text
2105 #: build/C/man3/ecvt.3:129
2106 msgid ""
2107 "SVr2; marked as LEGACY in POSIX.1-2001.  POSIX.1-2008 removes the "
2108 "specifications of B<ecvt>()  and B<fcvt>(), recommending the use of "
2109 "B<sprintf>(3)  instead (though B<snprintf>(3)  may be preferable)."
2110 msgstr ""
2111 "SVr2。 POSIX.1-2001 では「過去の名残 (LEGACY)」と位置付けられている。 "
2112 "POSIX.1-2008 では B<ecvt>()  と B<fcvt>()  の仕様が削除され、代わりに "
2113 "B<sprintf>(3)  の使用が推奨されている(しかし B<snprintf>(3)  がより適切かもし"
2114 "れない)。"
2115
2116 #. type: Plain text
2117 #: build/C/man3/ecvt.3:135
2118 msgid ""
2119 "Linux libc4 and libc5 specified the type of I<ndigits> as I<size_t>.  Not "
2120 "all locales use a point as the radix character (\"decimal point\")."
2121 msgstr ""
2122 "Linux libc4 と libc5 では I<ndigits> の型は I<size_t> となっていた。 小数点に"
2123 "ピリオドを使わないロケールもある。"
2124
2125 #. type: Plain text
2126 #: build/C/man3/ecvt.3:141
2127 msgid "B<ecvt_r>(3), B<gcvt>(3), B<qecvt>(3), B<setlocale>(3), B<sprintf>(3)"
2128 msgstr "B<ecvt_r>(3), B<gcvt>(3), B<qecvt>(3), B<setlocale>(3), B<sprintf>(3)"
2129
2130 #. type: TH
2131 #: build/C/man3/ecvt_r.3:30
2132 #, no-wrap
2133 msgid "ECVT_R"
2134 msgstr "ECVT_R"
2135
2136 #. type: Plain text
2137 #: build/C/man3/ecvt_r.3:33
2138 msgid ""
2139 "ecvt_r, fcvt_r, qecvt_r, qfcvt_r - convert a floating-point number to a "
2140 "string"
2141 msgstr "ecvt_r, fcvt_r, qecvt_r, qfcvt_r - 浮動小数点数の文字列への変換"
2142
2143 #. type: Plain text
2144 #: build/C/man3/ecvt_r.3:39
2145 #, no-wrap
2146 msgid ""
2147 "B<int ecvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2148 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2149 msgstr ""
2150 "B<int ecvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2151 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2152
2153 #. type: Plain text
2154 #: build/C/man3/ecvt_r.3:42
2155 #, no-wrap
2156 msgid ""
2157 "B<int fcvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2158 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2159 msgstr ""
2160 "B<int fcvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2161 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2162
2163 #. type: Plain text
2164 #: build/C/man3/ecvt_r.3:45
2165 #, no-wrap
2166 msgid ""
2167 "B<int qecvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2168 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2169 msgstr ""
2170 "B<int qecvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2171 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2172
2173 #. type: Plain text
2174 #: build/C/man3/ecvt_r.3:48
2175 #, no-wrap
2176 msgid ""
2177 "B<int qfcvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2178 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2179 msgstr ""
2180 "B<int qfcvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
2181 "B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2182
2183 #. type: Plain text
2184 #: build/C/man3/ecvt_r.3:60
2185 msgid "B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>():"
2186 msgstr "B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>():"
2187
2188 #. type: Plain text
2189 #: build/C/man3/ecvt_r.3:62
2190 msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
2191 msgstr "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
2192
2193 #. type: Plain text
2194 #: build/C/man3/ecvt_r.3:86
2195 msgid ""
2196 "The functions B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>()  and B<qfcvt_r>()  are "
2197 "identical to B<ecvt>(3), B<fcvt>(3), B<qecvt>(3)  and B<qfcvt>(3), "
2198 "respectively, except that they do not return their result in a static "
2199 "buffer, but instead use the supplied I<buf> of size I<len>.  See B<ecvt>(3)  "
2200 "and B<qecvt>(3)."
2201 msgstr ""
2202 "関数 B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>()  は、それぞれ "
2203 "B<ecvt>(3), B<fcvt>(3), B<qecvt>(3), B<qfcvt>(3)  と同じであるが、 静的バッ"
2204 "ファの代わりに、長さ I<len> の指定された I<buf> に結果を格納する点が異なる。 "
2205 "B<ecvt>(3), B<qecvt>(3)  を参照のこと。"
2206
2207 #. type: Plain text
2208 #: build/C/man3/ecvt_r.3:88
2209 msgid "These functions return 0 on success, and -1 otherwise."
2210 msgstr "これらの関数は成功すると 0 を、それ以外は -1 を返す。"
2211
2212 #. type: Plain text
2213 #: build/C/man3/ecvt_r.3:90
2214 msgid "These functions are GNU extensions."
2215 msgstr "これらの関数は GNU による拡張である。"
2216
2217 #. type: Plain text
2218 #: build/C/man3/ecvt_r.3:95
2219 msgid "These functions are obsolete.  Instead, B<sprintf>(3)  is recommended."
2220 msgstr "これらの関数は廃止された。代わりに B<sprintf>(3)  の使用を推奨する。"
2221
2222 #. type: Plain text
2223 #: build/C/man3/ecvt_r.3:99
2224 msgid "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"
2225 msgstr "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"
2226
2227 #. type: TH
2228 #: build/C/man3/exit.3:29
2229 #, no-wrap
2230 msgid "EXIT"
2231 msgstr "EXIT"
2232
2233 #. type: TH
2234 #: build/C/man3/exit.3:29 build/C/man3/random.3:33 build/C/man3/random_r.3:26
2235 #, no-wrap
2236 msgid "2014-03-25"
2237 msgstr "2014-03-25"
2238
2239 #. type: Plain text
2240 #: build/C/man3/exit.3:32
2241 msgid "exit - cause normal process termination"
2242 msgstr "exit - プロセスの正常終了"
2243
2244 #. type: Plain text
2245 #: build/C/man3/exit.3:37
2246 #, no-wrap
2247 msgid "B<void exit(int >I<status>B<);>\n"
2248 msgstr "B<void exit(int >I<status>B<);>\n"
2249
2250 #. type: Plain text
2251 #: build/C/man3/exit.3:45
2252 msgid ""
2253 "The B<exit>()  function causes normal process termination and the value of "
2254 "I<status & 0377> is returned to the parent (see B<wait>(2))."
2255 msgstr ""
2256 "B<exit>()  関数は、プロセスを正常に終了させ、 I<status & 0377> という値を親プ"
2257 "ロセスへ返す (B<wait>(2)  を参照)。"
2258
2259 #. type: Plain text
2260 #: build/C/man3/exit.3:72
2261 msgid ""
2262 "All functions registered with B<atexit>(3)  and B<on_exit>(3)  are called, "
2263 "in the reverse order of their registration.  (It is possible for one of "
2264 "these functions to use B<atexit>(3)  or B<on_exit>(3)  to register an "
2265 "additional function to be executed during exit processing; the new "
2266 "registration is added to the front of the list of functions that remain to "
2267 "be called.)  If one of these functions does not return (e.g., it calls "
2268 "B<_exit>(2), or kills itself with a signal), then none of the remaining "
2269 "functions is called, and further exit processing (in particular, flushing of "
2270 "B<stdio>(3)  streams) is abandoned.  If a function has been registered "
2271 "multiple times using B<atexit>(3)  or B<on_exit>(3), then it is called as "
2272 "many times as it was registered."
2273 msgstr ""
2274 "B<atexit>(3)  や B<on_exit>(3)  によって 登録された全ての関数は、それらが登録"
2275 "された順番と逆順にコールされる。 (登録された関数の中で B<atexit>(3)  or "
2276 "B<on_exit>(3)  を使って exit 処理中に実行される追加の関数を登録することができ"
2277 "る; 新規に登録された関数は、この後で実行される関数リストの先頭に 追加され"
2278 "る。)  これらの関数の一つが返らなかった場合 (例えば、その関数が B<_exit>(2)  "
2279 "を呼び出したり、シグナルで自分自身を kill した場合)、 残りの関数はどれも呼び"
2280 "出されず、それ以降の exit 処理 (特に B<stdio>(3)  ストリームのフラッシュな"
2281 "ど) は中止される。 ある関数が B<atexit>(3)  や B<on_exit>(3)  を使って複数回"
2282 "登録されていた場合、 その関数は登録されたのと同じ回数だけ呼び出される。"
2283
2284 #. type: Plain text
2285 #: build/C/man3/exit.3:79
2286 msgid ""
2287 "All open B<stdio>(3)  streams are flushed and closed.  Files created by "
2288 "B<tmpfile>(3)  are removed."
2289 msgstr ""
2290 "オープン中の B<stdio>(3)  ストリームは全てフラッシュされて、クローズされる。 "
2291 "B<tmpfile>(3)  によって作成されたファイルは削除される。"
2292
2293 #. type: Plain text
2294 #: build/C/man3/exit.3:86
2295 msgid ""
2296 "The C standard specifies two constants, B<EXIT_SUCCESS> and B<EXIT_FAILURE>, "
2297 "that may be passed to B<exit>()  to indicate successful or unsuccessful "
2298 "termination, respectively."
2299 msgstr ""
2300 "C 標準では B<EXIT_SUCCESS> と B<EXIT_FAILURE> という 2つの定数が 定義されてい"
2301 "る。それぞれ正常終了と異常終了を示すもので、 B<exit>()  として渡すことができ"
2302 "る。"
2303
2304 #. type: Plain text
2305 #: build/C/man3/exit.3:90
2306 msgid "The B<exit>()  function does not return."
2307 msgstr "B<exit>()  関数は返らない。"
2308
2309 #. type: Plain text
2310 #: build/C/man3/exit.3:96
2311 msgid ""
2312 "The B<exit>()  function uses a global variable that is not protected, so it "
2313 "is not thread-safe."
2314 msgstr ""
2315 "B<exit>() 関数は保護されていないグローバル変数を使用しているため、スレッド"
2316 "セーフではない。"
2317
2318 #. type: Plain text
2319 #: build/C/man3/exit.3:98
2320 msgid "SVr4, 4.3BSD, POSIX.1-2001, C89, C99."
2321 msgstr "SVr4, 4.3BSD, POSIX.1-2001, C89, C99."
2322
2323 #. type: Plain text
2324 #: build/C/man3/exit.3:115
2325 msgid ""
2326 "It is undefined what happens if one of the functions registered using "
2327 "B<atexit>(3)  and B<on_exit>(3)  calls either B<exit>()  or B<longjmp>(3).  "
2328 "Note that a call to B<execve>(2)  removes registrations created using "
2329 "B<atexit>(3)  and B<on_exit>(3)."
2330 msgstr ""
2331 "B<atexit>(3)  や B<on_exit>(3)  を使って登録された関数の中で B<exit>() か "
2332 "B<longjmp>(3)  が呼び出された場合、 何が起こるかは未定義である。 B<execve>"
2333 "(2) を呼び出すと、 B<atexit>(3) や B<on_exit>(3) を使って登録された関数が削除"
2334 "される点に注意すること。"
2335
2336 #. type: Plain text
2337 #: build/C/man3/exit.3:124
2338 msgid ""
2339 "The use of B<EXIT_SUCCESS> and B<EXIT_FAILURE> is slightly more portable (to "
2340 "non-UNIX environments) than the use of 0 and some nonzero value like 1 or "
2341 "-1.  In particular, VMS uses a different convention."
2342 msgstr ""
2343 "B<EXIT_SUCCESS> と B<EXIT_FAILURE> を使うと、0 や (1 や -1 といった) 0 以外の"
2344 "値を使うのに比べて (UNIX 以外の環境に) 移植するのがいくらか簡単になる。 特に "
2345 "VMS は別の方式を用いている。"
2346
2347 #. type: Plain text
2348 #: build/C/man3/exit.3:127
2349 msgid ""
2350 "BSD has attempted to standardize exit codes; see the file I<E<lt>sysexits."
2351 "hE<gt>>."
2352 msgstr ""
2353 "BSD は終了コードを標準化しようとしている; I<E<lt>sysexits.hE<gt>> を参照する"
2354 "こと。"
2355
2356 #. type: Plain text
2357 #: build/C/man3/exit.3:152
2358 msgid ""
2359 "After B<exit>(), the exit status must be transmitted to the parent process.  "
2360 "There are three cases.  If the parent has set B<SA_NOCLDWAIT>, or has set "
2361 "the B<SIGCHLD> handler to B<SIG_IGN>, the status is discarded.  If the "
2362 "parent was waiting on the child, it is notified of the exit status.  In both "
2363 "cases the exiting process dies immediately.  If the parent has not indicated "
2364 "that it is not interested in the exit status, but is not waiting, the "
2365 "exiting process turns into a \"zombie\" process (which is nothing but a "
2366 "container for the single byte representing the exit status) so that the "
2367 "parent can learn the exit status when it later calls one of the B<wait>(2)  "
2368 "functions."
2369 msgstr ""
2370 "B<exit>()  の後、親プロセスに終了ステータスが渡されなければならない。 終了ス"
2371 "テータスの渡し方には 3 つの場合がある。 親プロセスが B<SA_NOCLDWAIT> を設定し"
2372 "た場合、 または B<SIGCHLD> ハンドラを B<SIG_IGN> に設定した場合、 ステータス"
2373 "は破棄される。 親プロセスが子プロセスの終了を待っている場合、 親プロセスに終"
2374 "了ステータスが伝えられる。 どちらの場合でも exit のプロセスは直ちに終了す"
2375 "る。 「終了ステータスを関知せず終了も待たない」 ということを親プロセスが指示"
2376 "していない場合、 exit プロセスは (終了ステータスを表す 1 バイトのみを保持す"
2377 "る)  「ゾンビ」プロセスになる。 これにより、後から B<wait>(2)  関数を呼び出す"
2378 "ことで、 親プロセスは終了ステータスを知ることができる。"
2379
2380 #. type: Plain text
2381 #: build/C/man3/exit.3:162
2382 msgid ""
2383 "If the implementation supports the B<SIGCHLD> signal, this signal is sent to "
2384 "the parent.  If the parent has set B<SA_NOCLDWAIT>, it is undefined whether "
2385 "a B<SIGCHLD> signal is sent."
2386 msgstr ""
2387 "B<SIGCHLD> シグナルのサポートが実装されている場合、 このシグナルは親プロセス"
2388 "に送られる。 親プロセスが B<SA_NOCLDWAIT> を設定した場合、 B<SIGCHLD> シグナ"
2389 "ルが送られるかどうかは定義されていない。"
2390
2391 #. type: Plain text
2392 #: build/C/man3/exit.3:171
2393 msgid ""
2394 "If the process is a session leader and its controlling terminal is the "
2395 "controlling terminal of the session, then each process in the foreground "
2396 "process group of this controlling terminal is sent a B<SIGHUP> signal, and "
2397 "the terminal is disassociated from this session, allowing it to be acquired "
2398 "by a new controlling process."
2399 msgstr ""
2400 "そのプロセスがセッションのリーダーで、 そのプロセスの制御端末がそのセッション"
2401 "の制御端末である場合、 この制御端末のフォアグラウンドプロセスグループにある "
2402 "各プロセスに B<SIGHUP> シグナルが送られ、端末がセッションから切り離される。 "
2403 "これにより新しい制御プロセスを取得することができる。"
2404
2405 #. type: Plain text
2406 #: build/C/man3/exit.3:183
2407 msgid ""
2408 "If the exit of the process causes a process group to become orphaned, and if "
2409 "any member of the newly orphaned process group is stopped, then a B<SIGHUP> "
2410 "signal followed by a B<SIGCONT> signal will be sent to each process in this "
2411 "process group.  See B<setpgid>(2)  for an explanation of orphaned process "
2412 "groups."
2413 msgstr ""
2414 "プロセスが終了することにより、プロセスグループが孤立して、 そのグループのメン"
2415 "バーのうちのどれかが停止した場合、 プロセスグループの各プロセスに対して "
2416 "B<SIGHUP> シグナルが送られ、続いて B<SIGCONT> シグナルが送られる。 孤立した "
2417 "(orphaned) プロセスグループの説明は B<setpgid>(2)  を参照。"
2418
2419 #. type: Plain text
2420 #: build/C/man3/exit.3:190
2421 msgid ""
2422 "B<_exit>(2), B<setpgid>(2), B<wait>(2), B<atexit>(3), B<on_exit>(3), "
2423 "B<tmpfile>(3)"
2424 msgstr ""
2425 "B<_exit>(2), B<setpgid>(2), B<wait>(2), B<atexit>(3), B<on_exit>(3), "
2426 "B<tmpfile>(3)"
2427
2428 #. type: TH
2429 #: build/C/man3/gcvt.3:30
2430 #, no-wrap
2431 msgid "GCVT"
2432 msgstr "GCVT"
2433
2434 #. type: Plain text
2435 #: build/C/man3/gcvt.3:33
2436 msgid "gcvt - convert a floating-point number to a string"
2437 msgstr "gcvt - 浮動小数点数を文字列へ変換する"
2438
2439 #. type: Plain text
2440 #: build/C/man3/gcvt.3:38
2441 #, no-wrap
2442 msgid "B<char *gcvt(double >I<number>B<, size_t >I<ndigit>B<, char *>I<buf>B<);>\n"
2443 msgstr "B<char *gcvt(double >I<number>B<, size_t >I<ndigit>B<, char *>I<buf>B<);>\n"
2444
2445 #. type: Plain text
2446 #: build/C/man3/gcvt.3:46
2447 msgid "B<gcvt>():"
2448 msgstr "B<gcvt>():"
2449
2450 #. type: Plain text
2451 #: build/C/man3/gcvt.3:61
2452 msgid ""
2453 "_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE && "
2454 "_XOPEN_SOURCE_EXTENDED"
2455 msgstr ""
2456 "_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE && "
2457 "_XOPEN_SOURCE_EXTENDED"
2458
2459 #. type: Plain text
2460 #: build/C/man3/gcvt.3:72
2461 msgid ""
2462 "The B<gcvt>()  function converts I<number> to a minimal length null-"
2463 "terminated ASCII string and stores the result in I<buf>.  It produces "
2464 "I<ndigit> significant digits in either B<printf>(3)  F format or E format."
2465 msgstr ""
2466 "関数 B<gcvt>()  は、 I<number> を、最短の長さの NULL 終端された ASCII 文字列"
2467 "へ変換し、変換後の文字列を I<buf> に格納する。 B<printf>(3)  の F フォーマッ"
2468 "トや E フォーマットのように I<ndigit> 桁の 有効数字を生成する。"
2469
2470 #. type: Plain text
2471 #: build/C/man3/gcvt.3:77
2472 msgid ""
2473 "The B<gcvt>()  function returns the address of the string pointed to by "
2474 "I<buf>."
2475 msgstr "関数 B<gcvt>()  は文字列 I<buf> へのポインタを返す。"
2476
2477 #. type: Plain text
2478 #: build/C/man3/gcvt.3:86
2479 msgid ""
2480 "Marked as LEGACY in POSIX.1-2001.  POSIX.1-2008 removes the specification of "
2481 "B<gcvt>(), recommending the use of B<sprintf>(3)  instead (though B<snprintf>"
2482 "(3)  may be preferable)."
2483 msgstr ""
2484 "POSIX.1-2001 では、 この関数は「過去の名残 (LEGACY)」と位置付けられている。 "
2485 "POSIX.1-2008 では、 B<gcvt>()  の仕様は削除され、 代わりに B<sprintf>(3)  を"
2486 "使用することが推奨されている (B<snprintf>(3)  の方が適切かもしれないが)。"
2487
2488 #. type: Plain text
2489 #: build/C/man3/gcvt.3:90
2490 msgid "B<ecvt>(3), B<fcvt>(3), B<sprintf>(3)"
2491 msgstr "B<ecvt>(3), B<fcvt>(3), B<sprintf>(3)"
2492
2493 #. type: TH
2494 #: build/C/man3/getauxval.3:29
2495 #, no-wrap
2496 msgid "GETAUXVAL"
2497 msgstr "GETAUXVAL"
2498
2499 #. type: TH
2500 #: build/C/man3/getauxval.3:29 build/C/man3/getsubopt.3:25
2501 #, no-wrap
2502 msgid "2014-04-08"
2503 msgstr "2014-04-08"
2504
2505 #. type: Plain text
2506 #: build/C/man3/getauxval.3:32
2507 msgid "getauxval - retrieve a value from the auxiliary vector"
2508 msgstr ""
2509
2510 #. type: Plain text
2511 #: build/C/man3/getauxval.3:35
2512 #, no-wrap
2513 msgid "B<#include E<lt>sys/auxv.hE<gt>>\n"
2514 msgstr "B<#include E<lt>sys/auxv.hE<gt>>\n"
2515
2516 #. type: Plain text
2517 #: build/C/man3/getauxval.3:37
2518 #, no-wrap
2519 msgid "B<unsigned long getauxval(unsigned long >I<type>B<);>\n"
2520 msgstr "B<unsigned long getauxval(unsigned long >I<type>B<);>\n"
2521
2522 #. type: Plain text
2523 #: build/C/man3/getauxval.3:45
2524 msgid ""
2525 "The B<getauxval>()  function retrieves values from the auxiliary vector, a "
2526 "mechanism that the kernel's ELF binary loader uses to pass certain "
2527 "information to user space when a program is executed."
2528 msgstr ""
2529
2530 #. type: Plain text
2531 #: build/C/man3/getauxval.3:53
2532 msgid ""
2533 "Each entry in the auxiliary vector consists of a pair of values: a type that "
2534 "identifies what this entry represents, and a value for that type.  Given the "
2535 "argument I<type>, B<getauxval>()  returns the corresponding value."
2536 msgstr ""
2537
2538 #. type: Plain text
2539 #: build/C/man3/getauxval.3:60
2540 msgid ""
2541 "The value returned for each I<type> is given in the following list.  Not all "
2542 "I<type> values are present on all architectures."
2543 msgstr ""
2544
2545 #. type: TP
2546 #: build/C/man3/getauxval.3:60
2547 #, no-wrap
2548 msgid "B<AT_BASE>"
2549 msgstr "B<AT_BASE>"
2550
2551 #. type: Plain text
2552 #: build/C/man3/getauxval.3:63
2553 msgid ""
2554 "The base address of the program interpreter (usually, the dynamic linker)."
2555 msgstr ""
2556
2557 #. type: TP
2558 #: build/C/man3/getauxval.3:63
2559 #, no-wrap
2560 msgid "B<AT_BASE_PLATFORM>"
2561 msgstr "B<AT_BASE_PLATFORM>"
2562
2563 #. type: Plain text
2564 #: build/C/man3/getauxval.3:68
2565 msgid ""
2566 "A string identifying the real platform; may differ from B<AT_PLATFORM> "
2567 "(PowerPC only)."
2568 msgstr ""
2569
2570 #. type: TP
2571 #: build/C/man3/getauxval.3:68
2572 #, no-wrap
2573 msgid "B<AT_CLKTCK>"
2574 msgstr "B<AT_CLKTCK>"
2575
2576 #. type: Plain text
2577 #: build/C/man3/getauxval.3:75
2578 msgid ""
2579 "The frequency with which B<times>(2)  counts.  This value can also be "
2580 "obtained via I<sysconf(_SC_CLK_TCK)>."
2581 msgstr ""
2582
2583 #. type: TP
2584 #: build/C/man3/getauxval.3:75
2585 #, no-wrap
2586 msgid "B<AT_DCACHEBSIZE>"
2587 msgstr "B<AT_DCACHEBSIZE>"
2588
2589 #. type: Plain text
2590 #: build/C/man3/getauxval.3:78
2591 msgid "The data cache block size."
2592 msgstr ""
2593
2594 #. type: TP
2595 #: build/C/man3/getauxval.3:78
2596 #, no-wrap
2597 msgid "B<AT_EGID>"
2598 msgstr "B<AT_EGID>"
2599
2600 #. type: Plain text
2601 #: build/C/man3/getauxval.3:81
2602 msgid "The effective group ID of the thread."
2603 msgstr ""
2604
2605 #. type: TP
2606 #: build/C/man3/getauxval.3:81
2607 #, no-wrap
2608 msgid "B<AT_ENTRY>"
2609 msgstr "B<AT_ENTRY>"
2610
2611 #. type: Plain text
2612 #: build/C/man3/getauxval.3:84
2613 msgid "The entry address of the executable."
2614 msgstr ""
2615
2616 #. type: TP
2617 #: build/C/man3/getauxval.3:84
2618 #, no-wrap
2619 msgid "B<AT_EUID>"
2620 msgstr "B<AT_EUID>"
2621
2622 #. type: Plain text
2623 #: build/C/man3/getauxval.3:87
2624 msgid "The effective user ID of the thread."
2625 msgstr ""
2626
2627 #. type: TP
2628 #: build/C/man3/getauxval.3:87
2629 #, no-wrap
2630 msgid "B<AT_EXECFD>"
2631 msgstr "B<AT_EXECFD>"
2632
2633 #. type: Plain text
2634 #: build/C/man3/getauxval.3:90
2635 msgid "File descriptor of program."
2636 msgstr ""
2637
2638 #. type: TP
2639 #: build/C/man3/getauxval.3:90
2640 #, no-wrap
2641 msgid "B<AT_EXECFN>"
2642 msgstr "B<AT_EXECFN>"
2643
2644 #. type: Plain text
2645 #: build/C/man3/getauxval.3:93
2646 msgid "Pathname used to execute program."
2647 msgstr ""
2648
2649 #. type: TP
2650 #: build/C/man3/getauxval.3:93
2651 #, no-wrap
2652 msgid "B<AT_FLAGS>"
2653 msgstr "B<AT_FLAGS>"
2654
2655 #. type: Plain text
2656 #: build/C/man3/getauxval.3:96
2657 msgid "Flags (unused)."
2658 msgstr ""
2659
2660 #. type: TP
2661 #: build/C/man3/getauxval.3:96
2662 #, no-wrap
2663 msgid "B<AT_FPUCW>"
2664 msgstr "B<AT_FPUCW>"
2665
2666 #. type: Plain text
2667 #: build/C/man3/getauxval.3:101
2668 msgid ""
2669 "Used FPU control word (SuperH architecture only).  This gives some "
2670 "information about the FPU initialization performed by the kernel."
2671 msgstr ""
2672
2673 #. type: TP
2674 #: build/C/man3/getauxval.3:101
2675 #, no-wrap
2676 msgid "B<AT_GID>"
2677 msgstr "B<AT_GID>"
2678
2679 #. type: Plain text
2680 #: build/C/man3/getauxval.3:104
2681 msgid "The real group ID of the thread."
2682 msgstr ""
2683
2684 #. type: TP
2685 #: build/C/man3/getauxval.3:104
2686 #, no-wrap
2687 msgid "B<AT_HWCAP>"
2688 msgstr "B<AT_HWCAP>"
2689
2690 #. type: Plain text
2691 #: build/C/man3/getauxval.3:114
2692 msgid ""
2693 "A pointer to a multibyte mask of bits whose settings indicate detailed "
2694 "processor capabilities.  The contents of the bit mask are hardware dependent "
2695 "(for example, see the kernel source file I<arch/x86/include/asm/cpufeature."
2696 "h> for details relating to the Intel x86 architecture).  A human-readable "
2697 "version of the same information is available via I</proc/cpuinfo>."
2698 msgstr ""
2699
2700 #. type: TP
2701 #: build/C/man3/getauxval.3:114
2702 #, no-wrap
2703 msgid "B<AT_ICACHEBSIZE>"
2704 msgstr "B<AT_ICACHEBSIZE>"
2705
2706 #.  .TP
2707 #.  .BR AT_IGNORE
2708 #.  .TP
2709 #.  .BR AT_IGNOREPPC
2710 #.  .TP
2711 #.  .BR AT_NOTELF
2712 #. type: Plain text
2713 #: build/C/man3/getauxval.3:123
2714 msgid "The instruction cache block size."
2715 msgstr ""
2716
2717 #. type: TP
2718 #: build/C/man3/getauxval.3:123
2719 #, no-wrap
2720 msgid "B<AT_PAGESZ>"
2721 msgstr "B<AT_PAGESZ>"
2722
2723 #. type: Plain text
2724 #: build/C/man3/getauxval.3:127
2725 msgid ""
2726 "The system page size (the same value returned by I<sysconf(_SC_PAGESIZE)>)."
2727 msgstr ""
2728
2729 #. type: TP
2730 #: build/C/man3/getauxval.3:127
2731 #, no-wrap
2732 msgid "B<AT_PHDR>"
2733 msgstr "B<AT_PHDR>"
2734
2735 #. type: Plain text
2736 #: build/C/man3/getauxval.3:130
2737 msgid "The address of the program headers of the executable."
2738 msgstr ""
2739
2740 #. type: TP
2741 #: build/C/man3/getauxval.3:130
2742 #, no-wrap
2743 msgid "B<AT_PHENT>"
2744 msgstr "B<AT_PHENT>"
2745
2746 #. type: Plain text
2747 #: build/C/man3/getauxval.3:133
2748 msgid "The size of program header entry."
2749 msgstr ""
2750
2751 #. type: TP
2752 #: build/C/man3/getauxval.3:133
2753 #, no-wrap
2754 msgid "B<AT_PHNUM>"
2755 msgstr "B<AT_PHNUM>"
2756
2757 #. type: Plain text
2758 #: build/C/man3/getauxval.3:136
2759 msgid "The number of program headers."
2760 msgstr ""
2761
2762 #. type: TP
2763 #: build/C/man3/getauxval.3:136
2764 #, no-wrap
2765 msgid "B<AT_PLATFORM>"
2766 msgstr "B<AT_PLATFORM>"
2767
2768 #. type: Plain text
2769 #: build/C/man3/getauxval.3:143
2770 msgid ""
2771 "A pointer to a string that identifies the hardware platform that the program "
2772 "is running on.  The dynamic linker uses this in the interpretation of "
2773 "I<rpath> values."
2774 msgstr ""
2775
2776 #. type: TP
2777 #: build/C/man3/getauxval.3:143
2778 #, no-wrap
2779 msgid "B<AT_RANDOM>"
2780 msgstr "B<AT_RANDOM>"
2781
2782 #. type: Plain text
2783 #: build/C/man3/getauxval.3:146
2784 msgid "The address of sixteen bytes containing a random value."
2785 msgstr ""
2786
2787 #. type: TP
2788 #: build/C/man3/getauxval.3:146
2789 #, no-wrap
2790 msgid "B<AT_SECURE>"
2791 msgstr "B<AT_SECURE>"
2792
2793 #. type: Plain text
2794 #: build/C/man3/getauxval.3:158
2795 msgid ""
2796 "Has a nonzero value if this executable should be treated securely.  Most "
2797 "commonly, a nonzero value indicates that the process is executing a set-user-"
2798 "ID or set-group-ID program; alternatively, a nonzero value may be triggered "
2799 "by a Linux Security Module.  When this value is nonzero, the dynamic linker "
2800 "disables the use of certain environment variables (see B<ld-linux.so>(8))  "
2801 "and glibc changes other aspects of its behavior.  (See also B<secure_getenv>"
2802 "(3).)"
2803 msgstr ""
2804
2805 #. type: TP
2806 #: build/C/man3/getauxval.3:158
2807 #, no-wrap
2808 msgid "B<AT_SYSINFO>"
2809 msgstr "B<AT_SYSINFO>"
2810
2811 #. type: Plain text
2812 #: build/C/man3/getauxval.3:162
2813 msgid ""
2814 "The entry point to the system call function in the vDSO.  Not present/needed "
2815 "on all architectures (e.g., absent on x86-64)."
2816 msgstr ""
2817
2818 #. type: TP
2819 #: build/C/man3/getauxval.3:162
2820 #, no-wrap
2821 msgid "B<AT_SYSINFO_EHDR>"
2822 msgstr "B<AT_SYSINFO_EHDR>"
2823
2824 #. type: Plain text
2825 #: build/C/man3/getauxval.3:167
2826 msgid ""
2827 "The address of a page containing the virtual Dynamic Shared Object (vDSO)  "
2828 "that the kernel creates in order to provide fast implementations of certain "
2829 "system calls."
2830 msgstr ""
2831
2832 #. type: TP
2833 #: build/C/man3/getauxval.3:167
2834 #, no-wrap
2835 msgid "B<AT_UCACHEBSIZE>"
2836 msgstr "B<AT_UCACHEBSIZE>"
2837
2838 #. type: Plain text
2839 #: build/C/man3/getauxval.3:170
2840 msgid "The unified cache block size."
2841 msgstr ""
2842
2843 #. type: TP
2844 #: build/C/man3/getauxval.3:170
2845 #, no-wrap
2846 msgid "B<AT_UID>"
2847 msgstr "B<AT_UID>"
2848
2849 #. type: Plain text
2850 #: build/C/man3/getauxval.3:173
2851 msgid "The real user ID of the thread."
2852 msgstr ""
2853
2854 #. type: Plain text
2855 #: build/C/man3/getauxval.3:181
2856 msgid ""
2857 "On success, B<getauxval>()  returns the value corresponding to I<type>.  If "
2858 "I<type> is not found, 0 is returned."
2859 msgstr ""
2860 "成功すると、 B<getauxval>() は I<type> に対応する値を返す。 I<type> が見つか"
2861 "らない場合には 0 を返す。"
2862
2863 #. type: Plain text
2864 #: build/C/man3/getauxval.3:183
2865 msgid "No errors are diagnosed."
2866 msgstr "エラーは検出されない。"
2867
2868 #. type: Plain text
2869 #: build/C/man3/getauxval.3:187
2870 msgid "The B<getauxval>()  function was added to glibc in version 2.16."
2871 msgstr "B<getauxval>() 関数は glibc バージョン 2.16 で追加された。"
2872
2873 #. type: Plain text
2874 #: build/C/man3/getauxval.3:192
2875 msgid "The B<getauxval>()  function is thread-safe."
2876 msgstr "関数 B<getauxval>() はスレッドセーフである。"
2877
2878 #. type: Plain text
2879 #: build/C/man3/getauxval.3:194
2880 msgid "This function is a nonstandard glibc extension."
2881 msgstr "この関数は非標準で glibc による拡張である。"
2882
2883 #. type: Plain text
2884 #: build/C/man3/getauxval.3:203
2885 msgid ""
2886 "The primary consumer of the information in the auxiliary vector is the "
2887 "dynamic linker B<ld-linux.so>(8).  The auxiliary vector is a convenient and "
2888 "efficient shortcut that allows the kernel to communicate a certain set of "
2889 "standard information that the dynamic linker usually or always needs.  In "
2890 "some cases, the same information could be obtained by system calls, but "
2891 "using the auxiliary vector is cheaper."
2892 msgstr ""
2893
2894 #. type: Plain text
2895 #: build/C/man3/getauxval.3:209
2896 msgid ""
2897 "The auxiliary vector resides just above the argument list and environment in "
2898 "the process address space.  The auxiliary vector supplied to a program can "
2899 "be viewed by setting the B<LD_SHOW_AUXV> environment variable when running a "
2900 "program:"
2901 msgstr ""
2902
2903 #. type: Plain text
2904 #: build/C/man3/getauxval.3:211
2905 #, no-wrap
2906 msgid "    $ LD_SHOW_AUXV=1 sleep 1\n"
2907 msgstr "    $ LD_SHOW_AUXV=1 sleep 1\n"
2908
2909 #. type: Plain text
2910 #: build/C/man3/getauxval.3:218
2911 msgid ""
2912 "The auxiliary vector of any process can (subject to file permissions)  be "
2913 "obtained via I</proc/PID/auxv>; see B<proc>(5)  for more information."
2914 msgstr ""
2915
2916 #. type: Plain text
2917 #: build/C/man3/getauxval.3:222
2918 msgid "B<secure_getenv>(3), B<vdso>(7), B<ld-linux.so>(8)"
2919 msgstr "B<secure_getenv>(3), B<vdso>(7), B<ld-linux.so>(8)"
2920
2921 #. type: TH
2922 #: build/C/man3/getenv.3:33
2923 #, no-wrap
2924 msgid "GETENV"
2925 msgstr "GETENV"
2926
2927 #. type: TH
2928 #: build/C/man3/getenv.3:33
2929 #, no-wrap
2930 msgid "2012-08-14"
2931 msgstr "2012-08-14"
2932
2933 #. type: Plain text
2934 #: build/C/man3/getenv.3:36
2935 msgid "getenv, secure_getenv - get an environment variable"
2936 msgstr "getenv, secure_getenv - 環境変数を得る"
2937
2938 #. type: Plain text
2939 #: build/C/man3/getenv.3:41
2940 #, no-wrap
2941 msgid "B<char *getenv(const char *>I<name>B<);>\n"
2942 msgstr "B<char *getenv(const char *>I<name>B<);>\n"
2943
2944 #. type: Plain text
2945 #: build/C/man3/getenv.3:43
2946 #, no-wrap
2947 msgid "B<char *secure_getenv(const char *>I<name>B<);>\n"
2948 msgstr "B<char *secure_getenv(const char *>I<name>B<);>\n"
2949
2950 #. type: Plain text
2951 #: build/C/man3/getenv.3:52
2952 msgid "B<secure_getenv>(): _GNU_SOURCE"
2953 msgstr "B<secure_getenv>(): _GNU_SOURCE"
2954
2955 #. type: Plain text
2956 #: build/C/man3/getenv.3:61
2957 msgid ""
2958 "The B<getenv>()  function searches the environment list to find the "
2959 "environment variable I<name>, and returns a pointer to the corresponding "
2960 "I<value> string."
2961 msgstr ""
2962 "関数 B<getenv>()  は、環境リストから名前が I<name> の環境変数を検索し、対応す"
2963 "る I<value> 文字列へのポインタを返す。"
2964
2965 #. type: Plain text
2966 #: build/C/man3/getenv.3:69
2967 msgid ""
2968 "The GNU-specific B<secure_getenv>()  function is just like B<getenv>()  "
2969 "except that it returns NULL in cases where \"secure execution\" is "
2970 "required.  Secure execution is required if one of the following conditions "
2971 "was true when the program run by the calling process was loaded:"
2972 msgstr ""
2973 "GNU 固有の B<secure_getenv>() 関数は B<getenv>() と同様だが、 \"secure "
2974 "execution\" (「安全な実行」) が必要な場合には NULL を返す点が異なる。 "
2975 "\"secure execution\" が必要となるのは、 呼び出し元プロセスにより実行されるプ"
2976 "ログラムがロードされる際に、 以下の条件のいずれか一つが成立する場合である。"
2977
2978 #. type: IP
2979 #: build/C/man3/getenv.3:69 build/C/man3/getenv.3:74 build/C/man3/getenv.3:76
2980 #, no-wrap
2981 msgid "*"
2982 msgstr "*"
2983
2984 #. type: Plain text
2985 #: build/C/man3/getenv.3:74
2986 msgid ""
2987 "the process's effective user ID did not match its real user ID or the "
2988 "process's effective group ID did not match its real group ID (typically this "
2989 "is the result of executing a set-user-ID or set-group-ID program);"
2990 msgstr ""
2991 "プロセスの実効ユーザ ID がプロセスの実ユーザ ID と一致しない場合、またはプロ"
2992 "セスの実効グループ ID がプロセスの実グループ ID と一致しない場合 (通常、この"
2993 "状況になるのは、 set-user-ID プログラムか set-group-ID プログラムを実行した場"
2994 "合である)。"
2995
2996 #. type: Plain text
2997 #: build/C/man3/getenv.3:76
2998 msgid "the effective capability bit was set on the executable file; or"
2999 msgstr "実行ファイルで実効ケーパビリティビットがセットされている場合。"
3000
3001 #. type: Plain text
3002 #: build/C/man3/getenv.3:78
3003 msgid "the process has a nonempty permitted capability set."
3004 msgstr "プロセスの許可ケーパビリティセットが空でない場合。"
3005
3006 #. type: Plain text
3007 #: build/C/man3/getenv.3:81
3008 msgid ""
3009 "Secure execution may also required if triggered by some Linux security "
3010 "modules."
3011 msgstr ""
3012 "Linux セキュリティモジュールにより要求された場合にも \"secure execution\" は"
3013 "必要となる。"
3014
3015 #. type: Plain text
3016 #: build/C/man3/getenv.3:88
3017 msgid ""
3018 "The B<secure_getenv>()  function is intended for use in general-purpose "
3019 "libraries to avoid vulnerabilities that could occur if set-user-ID or set-"
3020 "group-ID programs accidentally trusted the environment."
3021 msgstr ""
3022 "B<secure_getenv>() 関数は、 set-user-ID プログラムや set-group-ID プログラム"
3023 "が実行環境を偶然信用してしまった場合に起こり得る脆弱性を、 汎用ライブラリで回"
3024 "避するために使うことを意図して作られた。"
3025
3026 #. type: Plain text
3027 #: build/C/man3/getenv.3:93
3028 msgid ""
3029 "The B<getenv>()  function returns a pointer to the value in the environment, "
3030 "or NULL if there is no match."
3031 msgstr ""
3032 "関数 B<getenv>()  は、環境における値 value へのポインタを返す。 I<name> に"
3033 "マッチする環境変数が存在しないときには NULL を返す。"
3034
3035 #. type: Plain text
3036 #: build/C/man3/getenv.3:96
3037 msgid "B<secure_getenv>()  first appeared in glibc 2.17."
3038 msgstr "B<secure_getenv>() は glibc 2.17 で初めて登場した。"
3039
3040 #. type: Plain text
3041 #: build/C/man3/getenv.3:99
3042 msgid "B<getenv>(): SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
3043 msgstr "B<getenv>(): SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
3044
3045 #. type: Plain text
3046 #: build/C/man3/getenv.3:102
3047 msgid "B<secure_getenv>()  is a GNU extension."
3048 msgstr "B<secure_getenv>() は GNU による拡張である。"
3049
3050 #. type: Plain text
3051 #: build/C/man3/getenv.3:104
3052 msgid "The strings in the environment list are of the form I<name=value>."
3053 msgstr "環境リストの文字列は I<name=value> という形式をしている。"
3054
3055 #. type: Plain text
3056 #: build/C/man3/getenv.3:110
3057 msgid ""
3058 "As typically implemented, B<getenv>()  returns a pointer to a string within "
3059 "the environment list.  The caller must take care not to modify this string, "
3060 "since that would change the environment of the process."
3061 msgstr ""
3062 "通常の実装では、 B<getenv>()  は環境リスト内の文字列へのポインタを返す。 呼び"
3063 "出し元はこの文字列を変更しないように注意しなければならない。 この文字列を変更"
3064 "すると、そのプロセスの環境を変化させることになるからである。"
3065
3066 #. type: Plain text
3067 #: build/C/man3/getenv.3:123
3068 msgid ""
3069 "The implementation of B<getenv>()  is not required to be reentrant.  The "
3070 "string pointed to by the return value of B<getenv>()  may be statically "
3071 "allocated, and can be modified by a subsequent call to B<getenv>(), B<putenv>"
3072 "(3), B<setenv>(3), or B<unsetenv>(3)."
3073 msgstr ""
3074 "B<getenv>()  の実装はリエントラント (再入可能) であることを要求されていな"
3075 "い。 B<getenv>()  の返り値により参照される文字列は静的に割り当てられてもよ"
3076 "く、 文字列の内容は後続の B<getenv>(), B<putenv>(3), B<setenv>(3), "
3077 "B<unsetenv>(3)  の呼び出しにより変更されることがある。"
3078
3079 #. type: Plain text
3080 #: build/C/man3/getenv.3:129
3081 msgid ""
3082 "The \"secure execution\" mode of B<secure_getenv>()  is controlled by the "
3083 "B<AT_SECURE> flag contained in the auxiliary vector passed from the kernel "
3084 "to user space."
3085 msgstr ""
3086 "B<secure_getenv>() の \"secure execution\" モードは、 カーネルからユーザ空間"
3087 "に渡される補助ベクトル (auxiliary vector) の B<AT_SECURE> フラグにより制御さ"
3088 "れる。"
3089
3090 #. type: Plain text
3091 #: build/C/man3/getenv.3:137
3092 msgid ""
3093 "B<clearenv>(3), B<getauxval>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), "
3094 "B<capabilities>(7), B<environ>(7)"
3095 msgstr ""
3096 "B<clearenv>(3), B<getauxval>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), "
3097 "B<capabilities>(7), B<environ>(7)"
3098
3099 #. type: TH
3100 #: build/C/man3/getloadavg.3:34
3101 #, no-wrap
3102 msgid "GETLOADAVG"
3103 msgstr "GETLOADAVG"
3104
3105 #. type: TH
3106 #: build/C/man3/getloadavg.3:34
3107 #, no-wrap
3108 msgid "2014-04-01"
3109 msgstr "2014-04-01"
3110
3111 #. type: Plain text
3112 #: build/C/man3/getloadavg.3:37
3113 msgid "getloadavg - get system load averages"
3114 msgstr "getloadavg - get system load averages"
3115
3116 #. type: Plain text
3117 #: build/C/man3/getloadavg.3:41
3118 #, no-wrap
3119 msgid ""
3120 "B<#define _BSD_SOURCE>         /* See feature_test_macros(7) */\n"
3121 "B<#include E<lt>stdlib.hE<gt>>\n"
3122 msgstr ""
3123 "B<#define _BSD_SOURCE>         /* feature_test_macros(7) 参照 */\n"
3124 "B<#include E<lt>stdlib.hE<gt>>\n"
3125
3126 #. type: Plain text
3127 #: build/C/man3/getloadavg.3:43
3128 #, no-wrap
3129 msgid "B<int getloadavg(double >I<loadavg[]>B<, int >I<nelem>B<);>\n"
3130 msgstr "B<int getloadavg(double >I<loadavg[]>B<, int >I<nelem>B<);>\n"
3131
3132 #. type: Plain text
3133 #: build/C/man3/getloadavg.3:55
3134 msgid ""
3135 "The B<getloadavg>()  function returns the number of processes in the system "
3136 "run queue averaged over various periods of time.  Up to I<nelem> samples are "
3137 "retrieved and assigned to successive elements of I<loadavg>[].  The system "
3138 "imposes a maximum of 3 samples, representing averages over the last 1, 5, "
3139 "and 15 minutes, respectively."
3140 msgstr ""
3141 "B<getloadavg>()  関数はシステムの実行キューに入っているプロセスの数を、 様々"
3142 "な期間について平均した値を返す。 I<nelem> 個までのサンプル値を取得し、 "
3143 "I<loadavg>[] の連続する要素に代入する。 システムが提供するサンプル数は 3 個ま"
3144 "でで、 それぞれ最近 1, 5, 15 分の平均を表している。"
3145
3146 #.  .SH HISTORY
3147 #.  The
3148 #.  BR getloadavg ()
3149 #.  function appeared in
3150 #.  4.3BSD Reno .
3151 #. type: Plain text
3152 #: build/C/man3/getloadavg.3:63
3153 msgid ""
3154 "If the load average was unobtainable, -1 is returned; otherwise, the number "
3155 "of samples actually retrieved is returned."
3156 msgstr ""
3157 "負荷平均が取得できないと -1 を返す。 取得できた場合は、実際に取得したサンプル"
3158 "値の数を返す。"
3159
3160 #. type: Plain text
3161 #: build/C/man3/getloadavg.3:65
3162 msgid "This function is available in glibc since version 2.2."
3163 msgstr "この関数は glibc のバージョン 2.2 以降で利用可能である。"
3164
3165 #. type: Plain text
3166 #: build/C/man3/getloadavg.3:70
3167 msgid "The B<getloadavg>()  function is thread-safe."
3168 msgstr "関数 B<getloadavg>() はスレッドセーフである。"
3169
3170 #.  mdoc seems to have a bug - there must be no newline here
3171 #. type: Plain text
3172 #: build/C/man3/getloadavg.3:74
3173 msgid "Not in POSIX.1-2001.  Present on the BSDs and Solaris."
3174 msgstr "POSIX.1-2001 にはない。 BSD 系と Solaris に存在する。"
3175
3176 #. type: Plain text
3177 #: build/C/man3/getloadavg.3:77
3178 msgid "B<uptime>(1), B<proc>(5)"
3179 msgstr "B<uptime>(1), B<proc>(5)"
3180
3181 #. type: TH
3182 #: build/C/man3/getsubopt.3:25
3183 #, no-wrap
3184 msgid "GETSUBOPT"
3185 msgstr "GETSUBOPT"
3186
3187 #. type: Plain text
3188 #: build/C/man3/getsubopt.3:28
3189 msgid "getsubopt - parse suboption arguments from a string"
3190 msgstr "getsubopt - 文字列中のサブオプション引き数の解釈を行う"
3191
3192 #. type: Plain text
3193 #: build/C/man3/getsubopt.3:33
3194 msgid ""
3195 "B<int getsubopt(char **>I<optionp>B<, char * const *>I<tokens>B<, char "
3196 "**>I<valuep>B<);>"
3197 msgstr ""
3198 "B<int getsubopt(char **>I<optionp>B<, char * const *>I<tokens>B<, char "
3199 "**>I<valuep>B<);>"
3200
3201 #. type: Plain text
3202 #: build/C/man3/getsubopt.3:40
3203 msgid "B<getsubopt>():"
3204 msgstr "B<getsubopt>():"
3205
3206 #. type: Plain text
3207 #: build/C/man3/getsubopt.3:45
3208 msgid ""
3209 "_XOPEN_SOURCE\\ E<gt>= 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
3210 msgstr ""
3211 "_XOPEN_SOURCE\\ E<gt>= 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
3212
3213 #. type: Plain text
3214 #: build/C/man3/getsubopt.3:47
3215 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
3216 msgstr "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
3217
3218 #. type: Plain text
3219 #: build/C/man3/getsubopt.3:64
3220 msgid ""
3221 "B<getsubopt>()  parses the list of comma-separated suboptions provided in "
3222 "I<optionp>.  (Such a suboption list is typically produced when B<getopt>(3)  "
3223 "is used to parse a command line; see for example the I<-o> option of B<mount>"
3224 "(8).)  Each suboption may include an associated value, which is separated "
3225 "from the suboption name by an equal sign.  The following is an example of "
3226 "the kind of string that might be passed in I<optionp>:"
3227 msgstr ""
3228 "B<getsubopt>()  は、 I<optionp> で与えられたカンマ区切りのサブオプション・リ"
3229 "ストを解析する。 (このようなサブオプション・リストは B<getopt>(3)  を使ってコ"
3230 "マンドラインを解釈した場合に現れることが多い。 例えば、 B<mount>(8)  の I<-"
3231 "o> オプションを見るとよい。)  それぞれのサブオプションには対応する値を指定す"
3232 "ることができる。 サブオプションの名前と対応する値は等号 (\\(aq=\\(aq) で区切"
3233 "られる。 例えば、以下のような文字列を I<optionp> に渡すことができる。"
3234
3235 #. type: Plain text
3236 #: build/C/man3/getsubopt.3:67
3237 msgid "B<ro,name=xyz>"
3238 msgstr "B<ro,name=xyz>"
3239
3240 #. type: Plain text
3241 #: build/C/man3/getsubopt.3:77
3242 msgid ""
3243 "The I<tokens> argument is a pointer to a NULL-terminated array of pointers "
3244 "to the tokens that B<getsubopt>()  will look for in I<optionp>.  The tokens "
3245 "should be distinct, null-terminated strings containing at least one "
3246 "character, with no embedded equal signs or commas."
3247 msgstr ""
3248 "I<tokens> 引き数はトークンへのポインタの配列へのポインタで、 配列は NULL で終"
3249 "端される。 B<getsubopt>()  はこのトークンを I<optionp> 内で探す。 それぞれの"
3250 "トークンは、NULL 終端された 1文字以上の文字列で、 他のトークンと区別できる必"
3251 "要がある。 また、等号とカンマを含んではならない。"
3252
3253 #. type: Plain text
3254 #: build/C/man3/getsubopt.3:98
3255 msgid ""
3256 "Each call to B<getsubopt>()  returns information about the next unprocessed "
3257 "suboption in I<optionp>.  The first equal sign in a suboption (if any) is "
3258 "interpreted as a separator between the name and the value of that "
3259 "suboption.  The value extends to the next comma, or (for the last suboption) "
3260 "to the end of the string.  If the name of the suboption matches a known name "
3261 "from I<tokens>, and a value string was found, B<getsubopt>()  sets "
3262 "I<*valuep> to the address of that string.  The first comma in I<optionp> is "
3263 "overwritten with a null byte, so I<*valuep> is precisely the \"value string"
3264 "\" for that suboption."
3265 msgstr ""
3266 "B<getsubopt>()  は呼び出されるたびに、 I<optionp> 中の次の未処理のサブオプ"
3267 "ションの情報を返す。 サブオプション内に等号があった場合、最初の等号は そのサ"
3268 "ブオプションの名前と値の区切りと解釈される。 区切りから次のカンマ (最後のサブ"
3269 "オプションの場合、文字列の末尾)  までが、サブオプションの値となる。 サブオプ"
3270 "ションの名前が I<tokens> 内の名前と一致し、値を表す文字列が見つかった場合、 "
3271 "B<getsubopt>()  は I<*valuep> を値を表す文字列のアドレスに設定する。 "
3272 "I<optionp> 中の最初のカンマはヌルバイトで上書きされる。そのため、 I<*valuep> "
3273 "はそのサブオプションの「値の文字列」そのものとなる。"
3274
3275 #. type: Plain text
3276 #: build/C/man3/getsubopt.3:102
3277 msgid ""
3278 "If the suboption is recognized, but no value string was found, I<*valuep> is "
3279 "set to NULL."
3280 msgstr ""
3281 "サブオプションが認識されたが、値を表す文字列が見つからなかった場合、 "
3282 "*I<valuep> は NULL に設定される。"
3283
3284 #. type: Plain text
3285 #: build/C/man3/getsubopt.3:110
3286 msgid ""
3287 "When B<getsubopt>()  returns, I<optionp> points to the next suboption, or to "
3288 "the null byte (\\(aq\\e0\\(aq) at the end of the string if the last "
3289 "suboption was just processed."
3290 msgstr ""
3291 "B<getsubopt>()  が返る時、 I<optionp> は次のサブオプションを指している。 ちょ"
3292 "うど最後のサブオプションが処理された場合は、 文字列末尾のヌルバイト (\\(aq"
3293 "\\e0\\(aq) を指している。"
3294
3295 #. type: Plain text
3296 #: build/C/man3/getsubopt.3:122
3297 msgid ""
3298 "If the first suboption in I<optionp> is recognized, B<getsubopt>()  returns "
3299 "the index of the matching suboption element in I<tokens>.  Otherwise, -1 is "
3300 "returned and I<*valuep> is the entire I<name>B<[=>I<value>B<]> string."
3301 msgstr ""
3302 "I<optionp> 内でサブオプションが見つかった場合、 B<getsubopt>()  は最初のサブ"
3303 "オプションにマッチする I<tokens> の要素の添字を返す。 見つからなかった場"
3304 "合、-1 を返す。この場合、 I<*valuep> は I<name>B<[=>I<value>B<]> の文字列全体"
3305 "となる。"
3306
3307 #. type: Plain text
3308 #: build/C/man3/getsubopt.3:129
3309 msgid ""
3310 "Since I<*optionp> is changed, the first suboption before the call to "
3311 "B<getsubopt>()  is not (necessarily) the same as the first suboption after "
3312 "B<getsubopt>()."
3313 msgstr ""
3314 "I<*optionp> は変更されるので、 B<getsubopt>()  を呼び出す前の最初のサブオプ"
3315 "ションは B<getsubopt>()  を呼び出し後のサブオプションと必ずしも同じとは限らな"
3316 "い。"
3317
3318 #. type: Plain text
3319 #: build/C/man3/getsubopt.3:134
3320 msgid "The B<getsubopt>()  function is thread-safe."
3321 msgstr "関数 B<getsubopt>() はスレッドセーフである。"
3322
3323 #. type: Plain text
3324 #: build/C/man3/getsubopt.3:143
3325 msgid ""
3326 "Since B<getsubopt>()  overwrites any commas it finds in the string "
3327 "I<*optionp>, that string must be writable; it cannot be a string constant."
3328 msgstr ""
3329 "B<getsubopt>()  は、文字列 *I<optionp> 中に見つけたカンマを上書きするので、文"
3330 "字列 I<*optionp> は書き込み可能でなければならず、 文字列定数にすることはでき"
3331 "ない。"
3332
3333 #. type: Plain text
3334 #: build/C/man3/getsubopt.3:145
3335 msgid "The following program expects suboptions following a \"-o\" option."
3336 msgstr ""
3337 "以下のプログラムは \"-o\" オプションに続いてサブオプションがあることを 期待し"
3338 "ている。"
3339
3340 #. type: Plain text
3341 #: build/C/man3/getsubopt.3:151
3342 #, no-wrap
3343 msgid ""
3344 "#define _XOPEN_SOURCE 500\n"
3345 "#include E<lt>stdlib.hE<gt>\n"
3346 "#include E<lt>assert.hE<gt>\n"
3347 "#include E<lt>stdio.hE<gt>\n"
3348 msgstr ""
3349 "#define _XOPEN_SOURCE 500\n"
3350 "#include E<lt>stdlib.hE<gt>\n"
3351 "#include E<lt>assert.hE<gt>\n"
3352 "#include E<lt>stdio.hE<gt>\n"
3353
3354 #. type: Plain text
3355 #: build/C/man3/getsubopt.3:169
3356 #, no-wrap
3357 msgid ""
3358 "int\n"
3359 "main(int argc, char **argv)\n"
3360 "{\n"
3361 "    enum {\n"
3362 "        RO_OPT = 0,\n"
3363 "        RW_OPT,\n"
3364 "        NAME_OPT\n"
3365 "    };\n"
3366 "    char *const token[] = {\n"
3367 "        [RO_OPT]   = \"ro\",\n"
3368 "        [RW_OPT]   = \"rw\",\n"
3369 "        [NAME_OPT] = \"name\",\n"
3370 "        NULL\n"
3371 "    };\n"
3372 "    char *subopts;\n"
3373 "    char *value;\n"
3374 "    int opt;\n"
3375 msgstr ""
3376 "int\n"
3377 "main(int argc, char **argv)\n"
3378 "{\n"
3379 "    enum {\n"
3380 "        RO_OPT = 0,\n"
3381 "        RW_OPT,\n"
3382 "        NAME_OPT\n"
3383 "    };\n"
3384 "    char *const token[] = {\n"
3385 "        [RO_OPT]   = \"ro\",\n"
3386 "        [RW_OPT]   = \"rw\",\n"
3387 "        [NAME_OPT] = \"name\",\n"
3388 "        NULL\n"
3389 "    };\n"
3390 "    char *subopts;\n"
3391 "    char *value;\n"
3392 "    int opt;\n"
3393
3394 #. type: Plain text
3395 #: build/C/man3/getsubopt.3:174
3396 #, no-wrap
3397 msgid ""
3398 "    int readonly = 0;\n"
3399 "    int readwrite = 0;\n"
3400 "    char *name = NULL;\n"
3401 "    int errfnd = 0;\n"
3402 msgstr ""
3403 "    int readonly = 0;\n"
3404 "    int readwrite = 0;\n"
3405 "    char *name = NULL;\n"
3406 "    int errfnd = 0;\n"
3407
3408 #. type: Plain text
3409 #: build/C/man3/getsubopt.3:180
3410 #, no-wrap
3411 msgid ""
3412 "    while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
3413 "        switch (opt) {\n"
3414 "        case \\(aqo\\(aq:\n"
3415 "            subopts = optarg;\n"
3416 "            while (*subopts != \\(aq\\e0\\(aq && !errfnd) {\n"
3417 msgstr ""
3418 "    while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
3419 "        switch (opt) {\n"
3420 "        case \\(aqo\\(aq:\n"
3421 "            subopts = optarg;\n"
3422 "            while (*subopts != \\(aq\\e0\\(aq && !errfnd) {\n"
3423
3424 #. type: Plain text
3425 #: build/C/man3/getsubopt.3:185
3426 #, no-wrap
3427 msgid ""
3428 "            switch (getsubopt(&subopts, token, &value)) {\n"
3429 "            case RO_OPT:\n"
3430 "                readonly = 1;\n"
3431 "                break;\n"
3432 msgstr ""
3433 "            switch (getsubopt(&subopts, token, &value)) {\n"
3434 "            case RO_OPT:\n"
3435 "                readonly = 1;\n"
3436 "                break;\n"
3437
3438 #. type: Plain text
3439 #: build/C/man3/getsubopt.3:189
3440 #, no-wrap
3441 msgid ""
3442 "            case RW_OPT:\n"
3443 "                readwrite = 1;\n"
3444 "                break;\n"
3445 msgstr ""
3446 "            case RW_OPT:\n"
3447 "                readwrite = 1;\n"
3448 "                break;\n"
3449
3450 #. type: Plain text
3451 #: build/C/man3/getsubopt.3:197
3452 #, no-wrap
3453 msgid ""
3454 "            case NAME_OPT:\n"
3455 "                if (value == NULL) {\n"
3456 "                    fprintf(stderr, \"Missing value for \"\n"
3457 "                            \"suboption \\(aq%s\\(aq\\en\", token[NAME_OPT]);\n"
3458 "                    errfnd = 1;\n"
3459 "                    continue;\n"
3460 "                }\n"
3461 msgstr ""
3462 "            case NAME_OPT:\n"
3463 "                if (value == NULL) {\n"
3464 "                    fprintf(stderr, \"Missing value for \"\n"
3465 "                            \"suboption \\(aq%s\\(aq\\en\", token[NAME_OPT]);\n"
3466 "                    errfnd = 1;\n"
3467 "                    continue;\n"
3468 "                }\n"
3469
3470 #. type: Plain text
3471 #: build/C/man3/getsubopt.3:200
3472 #, no-wrap
3473 msgid ""
3474 "                name = value;\n"
3475 "                break;\n"
3476 msgstr ""
3477 "                name = value;\n"
3478 "                break;\n"
3479
3480 #. type: Plain text
3481 #: build/C/man3/getsubopt.3:214
3482 #, no-wrap
3483 msgid ""
3484 "            default:\n"
3485 "                fprintf(stderr, \"No match found \"\n"
3486 "                        \"for token: /%s/\\en\", value);\n"
3487 "                errfnd = 1;\n"
3488 "                break;\n"
3489 "            }\n"
3490 "        }\n"
3491 "        if (readwrite && readonly) {\n"
3492 "            fprintf(stderr, \"Only one of \\(aq%s\\(aq and \\(aq%s\\(aq can be \"\n"
3493 "                    \"specified\\en\", token[RO_OPT], token[RW_OPT]);\n"
3494 "            errfnd = 1;\n"
3495 "        }\n"
3496 "        break;\n"
3497 msgstr ""
3498 "            default:\n"
3499 "                fprintf(stderr, \"No match found \"\n"
3500 "                        \"for token: /%s/\\en\", value);\n"
3501 "                errfnd = 1;\n"
3502 "                break;\n"
3503 "            }\n"
3504 "        }\n"
3505 "        if (readwrite && readonly) {\n"
3506 "            fprintf(stderr, \"Only one of \\(aq%s\\(aq and \\(aq%s\\(aq can be \"\n"
3507 "                    \"specified\\en\", token[RO_OPT], token[RW_OPT]);\n"
3508 "            errfnd = 1;\n"
3509 "        }\n"
3510 "        break;\n"
3511
3512 #. type: Plain text
3513 #: build/C/man3/getsubopt.3:219
3514 #, no-wrap
3515 msgid ""
3516 "        default:\n"
3517 "            errfnd = 1;\n"
3518 "        }\n"
3519 "    }\n"
3520 msgstr ""
3521 "        default:\n"
3522 "            errfnd = 1;\n"
3523 "        }\n"
3524 "    }\n"
3525
3526 #. type: Plain text
3527 #: build/C/man3/getsubopt.3:226
3528 #, no-wrap
3529 msgid ""
3530 "    if (errfnd || argc == 1) {\n"
3531 "        fprintf(stderr, \"\\enUsage: %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
3532 "        fprintf(stderr, \"suboptions are \\(aqro\\(aq, \\(aqrw\\(aq, \"\n"
3533 "                \"and \\(aqname=E<lt>valueE<gt>\\(aq\\en\");\n"
3534 "        exit(EXIT_FAILURE);\n"
3535 "    }\n"
3536 msgstr ""
3537 "    if (errfnd || argc == 1) {\n"
3538 "        fprintf(stderr, \"\\enUsage: %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
3539 "        fprintf(stderr, \"suboptions are \\(aqro\\(aq, \\(aqrw\\(aq, \"\n"
3540 "                \"and \\(aqname=E<lt>valueE<gt>\\(aq\\en\");\n"
3541 "        exit(EXIT_FAILURE);\n"
3542 "    }\n"
3543
3544 #. type: Plain text
3545 #: build/C/man3/getsubopt.3:228
3546 #, no-wrap
3547 msgid "    /* Remainder of program... */\n"
3548 msgstr "    /* Remainder of program... */\n"
3549
3550 #. type: Plain text
3551 #: build/C/man3/getsubopt.3:234
3552 msgid "B<getopt>(3)"
3553 msgstr "B<getopt>(3)"
3554
3555 #. type: TH
3556 #: build/C/man3/malloc.3:33
3557 #, no-wrap
3558 msgid "MALLOC"
3559 msgstr "MALLOC"
3560
3561 #. type: TH
3562 #: build/C/man3/malloc.3:33
3563 #, no-wrap
3564 msgid "2013-12-12"
3565 msgstr "2013-12-12"
3566
3567 #. type: Plain text
3568 #: build/C/man3/malloc.3:36
3569 msgid "malloc, free, calloc, realloc - allocate and free dynamic memory"
3570 msgstr "malloc, free, calloc, realloc - 動的なメモリの割り当てと解放を行う"
3571
3572 #. type: Plain text
3573 #: build/C/man3/malloc.3:44
3574 #, no-wrap
3575 msgid ""
3576 "B<void *malloc(size_t >I<size>B<);>\n"
3577 "B<void free(void >I<*ptr>B<);>\n"
3578 "B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
3579 "B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
3580 msgstr ""
3581 "B<void *malloc(size_t >I<size>B<);>\n"
3582 "B<void free(void >I<*ptr>B<);>\n"
3583 "B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
3584 "B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
3585
3586 #.  glibc does this:
3587 #. type: Plain text
3588 #: build/C/man3/malloc.3:61
3589 msgid ""
3590 "The B<malloc>()  function allocates I<size> bytes and returns a pointer to "
3591 "the allocated memory.  I<The memory is not initialized>.  If I<size> is 0, "
3592 "then B<malloc>()  returns either NULL, or a unique pointer value that can "
3593 "later be successfully passed to B<free>()."
3594 msgstr ""
3595 "B<malloc>() 関数は I<size> バイトを割り当て、 割り当てられたメモリに対する\n"
3596 "ポインタを返す。I<メモリの内容は初期化されない>。 I<size> が 0 の場合、\n"
3597 "B<malloc>() は NULL または B<free>() に後で渡しても問題の起こらない\n"
3598 "一意なポインタ値を返す。"
3599
3600 #. type: Plain text
3601 #: build/C/man3/malloc.3:77
3602 msgid ""
3603 "The B<free>()  function frees the memory space pointed to by I<ptr>, which "
3604 "must have been returned by a previous call to B<malloc>(), B<calloc>()  or "
3605 "B<realloc>().  Otherwise, or if I<free(ptr)> has already been called before, "
3606 "undefined behavior occurs.  If I<ptr> is NULL, no operation is performed."
3607 msgstr ""
3608 "B<free>() 関数はポインタ I<ptr> が指すメモリ空間を解放する。このポインタ"
3609 "は、\n"
3610 "以前に呼び出された B<malloc>(), B<calloc>(), B<realloc>() のいずれかが返した"
3611 "値で\n"
3612 "なければならない。これ以外のポインタを指定したり、すでに I<free(ptr)> が実"
3613 "行\n"
3614 "されていたりした場合の動作は定義されていない。\n"
3615 "I<ptr> が NULL の場合には、何の動作も行われない。"
3616
3617 #.  glibc does this:
3618 #. type: Plain text
3619 #: build/C/man3/malloc.3:96
3620 msgid ""
3621 "The B<calloc>()  function allocates memory for an array of I<nmemb> elements "
3622 "of I<size> bytes each and returns a pointer to the allocated memory.  The "
3623 "memory is set to zero.  If I<nmemb> or I<size> is 0, then B<calloc>()  "
3624 "returns either NULL, or a unique pointer value that can later be "
3625 "successfully passed to B<free>()."
3626 msgstr ""
3627 "B<calloc>() 関数は I<size> バイトの要素 I<nmemb> 個からなる配列にメモリを\n"
3628 "割り当て、割り当てられたメモリに対するポインタを返す。 メモリの内容は数値ゼ"
3629 "ロ\n"
3630 "(全ビットが 0 のバイト) にセットされる。 I<nmemb> か I<size> が 0 の場合、\n"
3631 "B<calloc>() は NULL または B<free>() に後で渡しても問題の起こらない一意な\n"
3632 "ポインタ値を返す。"
3633
3634 #. type: Plain text
3635 #: build/C/man3/malloc.3:132
3636 msgid ""
3637 "The B<realloc>()  function changes the size of the memory block pointed to "
3638 "by I<ptr> to I<size> bytes.  The contents will be unchanged in the range "
3639 "from the start of the region up to the minimum of the old and new sizes.  If "
3640 "the new size is larger than the old size, the added memory will I<not> be "
3641 "initialized.  If I<ptr> is NULL, then the call is equivalent to I<malloc"
3642 "(size)>, for all values of I<size>; if I<size> is equal to zero, and I<ptr> "
3643 "is not NULL, then the call is equivalent to I<free(ptr)>.  Unless I<ptr> is "
3644 "NULL, it must have been returned by an earlier call to B<malloc>(), B<calloc>"
3645 "()  or B<realloc>().  If the area pointed to was moved, a I<free(ptr)> is "
3646 "done."
3647 msgstr ""
3648 "B<realloc>() は、ポインタ I<ptr> が示すメモリブロックのサイズを I<size> バイ"
3649 "ト\n"
3650 "に変更する。領域の先頭から、新旧のサイズの小さい方の位置までの範囲の内容は\n"
3651 "変更されない。新しいサイズが前のサイズよりも大きい場合、追加されたメモリは\n"
3652 "初期化 I<されない>。\n"
3653 "I<ptr> が NULL の場合には I<malloc(size)> と等価である。\n"
3654 "I<size> が 0 で I<ptr> が NULL でない場合には、 I<free(ptr)> と等価である。\n"
3655 "I<ptr> が NULL 以外の場合、 I<ptr> は以前に呼び出された B<malloc>(), "
3656 "B<calloc>(),\n"
3657 "B<realloc>() のいずれかが返した値でなければならない。\n"
3658 "I<ptr> が指す領域が移動されていた場合は I<free(ptr)> が実行される。"
3659
3660 #. type: Plain text
3661 #: build/C/man3/malloc.3:152
3662 msgid ""
3663 "The B<malloc>()  and B<calloc>()  functions return a pointer to the "
3664 "allocated memory, which is suitably aligned for any built-in type.  On "
3665 "error, these functions return NULL.  NULL may also be returned by a "
3666 "successful call to B<malloc>()  with a I<size> of zero, or by a successful "
3667 "call to B<calloc>()  with I<nmemb> or I<size> equal to zero."
3668 msgstr ""
3669 "関数 B<calloc>() と B<malloc>() は、割り当てられたメモリへのポインタを返す。 "
3670 "割り当てられたメモリは、あらゆる組み込み型に対応できるようにアラインメントさ"
3671 "れる。 エラーの場合、これらの関数は NULL を返す。 I<size> が 0 で呼び出した "
3672 "B<malloc>() や、I<nmemb> か I<size> が 0 で呼び出した B<calloc>() が成功した"
3673 "場合にも NULL が返される。"
3674
3675 #. type: Plain text
3676 #: build/C/man3/malloc.3:156
3677 msgid "The B<free>()  function returns no value."
3678 msgstr "B<free>() 関数は値を返さない。"
3679
3680 #. type: Plain text
3681 #: build/C/man3/malloc.3:171
3682 msgid ""
3683 "The B<realloc>()  function returns a pointer to the newly allocated memory, "
3684 "which is suitably aligned for any built-in type and may be different from "
3685 "I<ptr>, or NULL if the request fails.  If I<size> was equal to 0, either "
3686 "NULL or a pointer suitable to be passed to B<free>()  is returned.  If "
3687 "B<realloc>()  fails, the original block is left untouched; it is not freed "
3688 "or moved."
3689 msgstr ""
3690 "B<realloc>() 関数は新たに割り当てられたメモリへのポインタを返す。 これはあら"
3691 "ゆる組み込み型に対応できるようにアラインメントされており、 I<ptr> とは異なる"
3692 "こともある。割り当て要求に失敗した場合は NULL が返る。 I<size> が 0 の場合に"
3693 "は、NULL もしくは B<free>() に渡すことができるポインタが返る。 B<realloc>() "
3694 "が失敗した場合には、元のブロックは変更されない。 つまり、解放されたり移動され"
3695 "たりはしない。"
3696
3697 #. type: Plain text
3698 #: build/C/man3/malloc.3:173
3699 msgid "C89, C99."
3700 msgstr "C89, C99."
3701
3702 #. type: Plain text
3703 #: build/C/man3/malloc.3:189
3704 msgid ""
3705 "By default, Linux follows an optimistic memory allocation strategy.  This "
3706 "means that when B<malloc>()  returns non-NULL there is no guarantee that the "
3707 "memory really is available.  In case it turns out that the system is out of "
3708 "memory, one or more processes will be killed by the OOM killer.  For more "
3709 "information, see the description of I</proc/sys/vm/overcommit_memory> and I</"
3710 "proc/sys/vm/oom_adj> in B<proc>(5), and the Linux kernel source file "
3711 "I<Documentation/vm/overcommit-accounting>."
3712 msgstr ""
3713 "デフォルトでは、Linux は楽観的メモリ配置戦略を用いている。つまり、\n"
3714 "B<malloc>() が NULL でない値を返しても、そのメモリが実際に利用可能であるこ"
3715 "と\n"
3716 "が保証されない。システムがメモリ不足状態になったとき、メモリ不足解決器 (OOM\n"
3717 "killer) によって一つまたは複数のプロセスが削除される。\n"
3718 "詳しい情報は、B<proc>(5) の I</proc/sys/vm/overcommit_memory> と\n"
3719 "I<proc/sys/vm/oom_adj>、および Linux カーネルのソースファイルの\n"
3720 "I<Documentation/vm/overcommit-accounting> を参照のこと。"
3721
3722 #. type: Plain text
3723 #: build/C/man3/malloc.3:210
3724 msgid ""
3725 "Normally, B<malloc>()  allocates memory from the heap, and adjusts the size "
3726 "of the heap as required, using B<sbrk>(2).  When allocating blocks of memory "
3727 "larger than B<MMAP_THRESHOLD> bytes, the glibc B<malloc>()  implementation "
3728 "allocates the memory as a private anonymous mapping using B<mmap>(2).  "
3729 "B<MMAP_THRESHOLD> is 128 kB by default, but is adjustable using B<mallopt>"
3730 "(3).  Allocations performed using B<mmap>(2)  are unaffected by the "
3731 "B<RLIMIT_DATA> resource limit (see B<getrlimit>(2))."
3732 msgstr ""
3733 "通常、 B<malloc>()  は、ヒープからメモリを割り当て、必要に応じてヒープのサイ"
3734 "ズを B<sbrk>(2)  を使って調節する。 B<MMAP_THRESHOLD> バイトよりも大きなメモ"
3735 "リブロックを割り当てる場合、 glibc の B<malloc>()  実装は B<mmap>(2)  を使っ"
3736 "てプライベートな無名マッピング (anonymous mapping) として メモリを割り当て"
3737 "る。 デフォルトでは B<MMAP_THRESHOLD> は 128 kB だが、 B<mallopt>(3)  を使っ"
3738 "て調整できる。 B<mmap>(2)  を使って行われたメモリ割り当ては B<RLIMIT_DATA> リ"
3739 "ソース上限の影響を受けない (B<getrlimit>(2)  参照)。"
3740
3741 #. type: Plain text
3742 #: build/C/man3/malloc.3:228
3743 msgid ""
3744 "To avoid corruption in multithreaded applications, mutexes are used "
3745 "internally to protect the memory-management data structures employed by "
3746 "these functions.  In a multithreaded application in which threads "
3747 "simultaneously allocate and free memory, there could be contention for these "
3748 "mutexes.  To scalably handle memory allocation in multithreaded "
3749 "applications, glibc creates additional I<memory allocation arenas> if mutex "
3750 "contention is detected.  Each arena is a large region of memory that is "
3751 "internally allocated by the system (using B<brk>(2)  or B<mmap>(2)), and "
3752 "managed with its own mutexes."
3753 msgstr ""
3754 "マルチスレッドアプリケーションでのデータ破損を回避するため、内部では mutex"
3755 "を\n"
3756 "使用して、これらの関数で利用されるメモリ管理用のデータ構造を保護している。\n"
3757 "複数のスレッドが同時にメモリの確保や解放を行うようなマルチスレッドアプリ"
3758 "ケー\n"
3759 "ションでは、これらの mutex の衝突が起こり得る。マルチスレッドアプリケーショ"
3760 "ン\n"
3761 "でのメモリ割り当て処理にスケーラビリティを持たせるために、glibc では mutex "
3762 "の\n"
3763 "衝突が検出された際には追加の I<メモリ割り当て領域> を作成する。\n"
3764 "追加領域の各々は、(B<brk>(2) や B<mmap>(2) を使って) システムにより内部的に\n"
3765 "割り当てられた大きな領域で、それぞれ独自の mutex により管理されている。"
3766
3767 #. type: Plain text
3768 #: build/C/man3/malloc.3:246
3769 msgid ""
3770 "The UNIX 98 standard requires B<malloc>(), B<calloc>(), and B<realloc>()  to "
3771 "set I<errno> to B<ENOMEM> upon failure.  Glibc assumes that this is done "
3772 "(and the glibc versions of these routines do this); if you use a private "
3773 "malloc implementation that does not set I<errno>, then certain library "
3774 "routines may fail without having a reason in I<errno>."
3775 msgstr ""
3776 "UNIX 98 標準では、 B<malloc>(), B<calloc>(), B<realloc>() は実行に失敗したと"
3777 "きに I<errno> を B<ENOMEM> に設定することになっている。 Glibc ではこれが守ら"
3778 "れていることを仮定している (またこれらのルーチンの glibc バージョンはこのこと"
3779 "を守っている)。 個人的に別の malloc の実装を使っていて、その malloc が"
3780 "I<errno> を設定しない場合には、失敗した際に I<errno> にエラーの理由を設定しな"
3781 "いライブラリルーチンがあるかもしれない。"
3782
3783 #. type: Plain text
3784 #: build/C/man3/malloc.3:255
3785 msgid ""
3786 "Crashes in B<malloc>(), B<calloc>(), B<realloc>(), or B<free>()  are almost "
3787 "always related to heap corruption, such as overflowing an allocated chunk or "
3788 "freeing the same pointer twice."
3789 msgstr ""
3790 "B<malloc>(), B<calloc>(), B<realloc>(), B<free>()  における事故は、 ほとんど"
3791 "の場合はヒープの破壊 (corruption) が原因である。 例えば、割り当てられた領域を"
3792 "オーバーフローする、 同じポインタに二度 free する、などがこれにあたる。"
3793
3794 #. type: Plain text
3795 #: build/C/man3/malloc.3:262
3796 msgid ""
3797 "Recent versions of Linux libc (later than 5.4.23) and glibc (2.x)  include a "
3798 "B<malloc>()  implementation which is tunable via environment variables.  For "
3799 "details, see B<mallopt>(3)."
3800 msgstr ""
3801 "Linux libc の新しいバージョン (5.4.23 より後) と glibc (2.x) には、\n"
3802 "環境変数で動作を調整できる B<malloc>() 実装が含まれている。\n"
3803 "詳細は B<mallopt>(3) を参照のこと。"
3804
3805 #. type: Plain text
3806 #: build/C/man3/malloc.3:286
3807 msgid ""
3808 "B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), B<malloc_info>"
3809 "(3), B<malloc_trim>(3), B<malloc_usable_size>(3), B<mallopt>(3), B<mcheck>"
3810 "(3), B<mtrace>(3), B<posix_memalign>(3)"
3811 msgstr ""
3812 "B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), B<malloc_info>"
3813 "(3), B<malloc_trim>(3), B<malloc_usable_size>(3), B<mallopt>(3), B<mcheck>"
3814 "(3), B<mtrace>(3), B<posix_memalign>(3)"
3815
3816 #. type: TH
3817 #: build/C/man3/mblen.3:16
3818 #, no-wrap
3819 msgid "MBLEN"
3820 msgstr "MBLEN"
3821
3822 #. type: Plain text
3823 #: build/C/man3/mblen.3:19
3824 msgid "mblen - determine number of bytes in next multibyte character"
3825 msgstr "mblen - 次のマルチバイト文字のバイト数を返す"
3826
3827 #. type: Plain text
3828 #: build/C/man3/mblen.3:24
3829 #, no-wrap
3830 msgid "B<int mblen(const char *>I<s>B<, size_t >I<n>B<);>\n"
3831 msgstr "B<int mblen(const char *>I<s>B<, size_t >I<n>B<);>\n"
3832
3833 #. type: Plain text
3834 #: build/C/man3/mblen.3:43
3835 msgid ""
3836 "If I<s> is not NULL, the B<mblen>()  function inspects at most I<n> bytes of "
3837 "the multibyte string starting at I<s> and extracts the next complete "
3838 "multibyte character.  It uses a static anonymous shift state known only to "
3839 "the B<mblen>()  function.  If the multibyte character is not the null wide "
3840 "character, it returns the number of bytes that were consumed from I<s>.  If "
3841 "the multibyte character is the null wide character, it returns 0."
3842 msgstr ""
3843 "I<s> が NULL でなければ、 B<mblen>()  関数は I<s> から始まる最大 I<n> バイト"
3844 "のマルチバイト文字列を検査して、 次の完全なマルチバイト文字を取り出す。これに"
3845 "は B<mblen>()  関数のみが使用する静的で名前のないシフト状態が使用される。 マ"
3846 "ルチバイト文字がナルワイド文字でなければ I<s> から消費される バイト数を返す。"
3847 "マルチバイト文字がナルワイド文字ならば 0 を返す。"
3848
3849 #. type: Plain text
3850 #: build/C/man3/mblen.3:57
3851 msgid ""
3852 "If the I<n> bytes starting at I<s> do not contain a complete multibyte "
3853 "character, B<mblen>()  returns -1.  This can happen even if I<n> is greater "
3854 "than or equal to I<MB_CUR_MAX>, if the multibyte string contains redundant "
3855 "shift sequences."
3856 msgstr ""
3857 "I<s> から始まる I<n> バイトが完全なマルチバイト文字を含んで いなければ、 "
3858 "B<mblen>()  は -1 を返す。マルチバイト文字列 に冗長なシフトシーケンスが含まれ"
3859 "ていると、 I<n> が I<MB_CUR_MAX> 以上の場合にも このようなことが起こりえる。"
3860
3861 #. type: Plain text
3862 #: build/C/man3/mblen.3:64
3863 msgid ""
3864 "If the multibyte string starting at I<s> contains an invalid multibyte "
3865 "sequence before the next complete character, B<mblen>()  also returns -1."
3866 msgstr ""
3867 "I<s> から始まるマルチバイト文字列が次の完全な文字の前に 不正なマルチバイト列"
3868 "を含んでいる場合にも、 B<mblen>()  は -1 を返す。"
3869
3870 #.  The Dinkumware doc and the Single UNIX specification say this, but
3871 #.  glibc doesn't implement this.
3872 #. type: Plain text
3873 #: build/C/man3/mblen.3:75
3874 msgid ""
3875 "If I<s> is NULL, the B<mblen>()  function resets the shift state, known to "
3876 "only this function, to the initial state, and returns nonzero if the "
3877 "encoding has nontrivial shift state, or zero if the encoding is stateless."
3878 msgstr ""
3879 "I<s> が NULL ならば、 B<mblen>()  関数はこの関数のみが 使用するシフト状態を初"
3880 "期化状態に戻し、シフト状態を使用した文字符号の場合に はゼロ以外を、文字符号が"
3881 "シフト状態を持たない場合にはゼロを返す。"
3882
3883 #. type: Plain text
3884 #: build/C/man3/mblen.3:87
3885 msgid ""
3886 "The B<mblen>()  function returns the number of bytes parsed from the "
3887 "multibyte sequence starting at I<s>, if a non-null wide character was "
3888 "recognized.  It returns 0, if a null wide character was recognized.  It "
3889 "returns -1, if an invalid multibyte sequence was encountered or if it "
3890 "couldn't parse a complete multibyte character."
3891 msgstr ""
3892 "B<mblen>()  関数は I<s> から始まるマルチバイト列を検査して ナルワイド文字以外"
3893 "を確認した場合にはそのバイト数を返す。 ナルワイド文字を確認した場合にはゼロを"
3894 "返す。不正なマルチバイト列に 遭遇した場合や完全なマルチバイト文字を解析できな"
3895 "かった場合には -1 を返す。"
3896
3897 #. type: Plain text
3898 #: build/C/man3/mblen.3:92
3899 msgid "The B<mblen>()  function is not thread-safe."
3900 msgstr "B<mblen>() 関数はスレッドセーフではない。"
3901
3902 #. type: Plain text
3903 #: build/C/man3/mblen.3:94 build/C/man3/mbstowcs.3:96
3904 #: build/C/man3/mbtowc.3:115 build/C/man3/wcstombs.3:91
3905 #: build/C/man3/wctomb.3:91
3906 msgid "C99."
3907 msgstr "C99."
3908
3909 #. type: Plain text
3910 #: build/C/man3/mblen.3:101
3911 msgid ""
3912 "The behavior of B<mblen>()  depends on the B<LC_CTYPE> category of the "
3913 "current locale."
3914 msgstr ""
3915 "B<mblen>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
3916
3917 #. type: Plain text
3918 #: build/C/man3/mblen.3:106
3919 msgid ""
3920 "The function B<mbrlen>(3)  provides a better interface to the same "
3921 "functionality."
3922 msgstr "B<mbrlen>(3)  関数は同じ機能のより良いインタフェースを提供する。"
3923
3924 #. type: Plain text
3925 #: build/C/man3/mblen.3:108
3926 msgid "B<mbrlen>(3)"
3927 msgstr "B<mbrlen>(3)"
3928
3929 #. type: TH
3930 #: build/C/man3/mbstowcs.3:18
3931 #, no-wrap
3932 msgid "MBSTOWCS"
3933 msgstr "MBSTOWCS"
3934
3935 #. type: TH
3936 #: build/C/man3/mbstowcs.3:18 build/C/man3/mbtowc.3:16
3937 #: build/C/man3/strtol.3:31 build/C/man3/strtoul.3:33
3938 #: build/C/man3/wcstombs.3:16 build/C/man3/wctomb.3:16
3939 #, no-wrap
3940 msgid "2014-03-18"
3941 msgstr "2014-03-18"
3942
3943 #. type: Plain text
3944 #: build/C/man3/mbstowcs.3:21
3945 msgid "mbstowcs - convert a multibyte string to a wide-character string"
3946 msgstr "mbstowcs - マルチバイト文字列をワイド文字列に変換する"
3947
3948 #. type: Plain text
3949 #: build/C/man3/mbstowcs.3:26
3950 #, no-wrap
3951 msgid "B<size_t mbstowcs(wchar_t *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
3952 msgstr "B<size_t mbstowcs(wchar_t *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
3953
3954 #. type: Plain text
3955 #: build/C/man3/mbstowcs.3:45
3956 msgid ""
3957 "If I<dest> is not NULL, the B<mbstowcs>()  function converts the multibyte "
3958 "string I<src> to a wide-character string starting at I<dest>.  At most I<n> "
3959 "wide characters are written to I<dest>.  The conversion starts in the "
3960 "initial state.  The conversion can stop for three reasons:"
3961 msgstr ""
3962 "I<dest> が NULL でなければ B<mbstowcs>()  関数は マルチバイト文字列 I<*src> "
3963 "を I<dest> から始まるワイド文字列に 変換する。I<dest> には最大で I<n> 文字の"
3964 "ワイド文字が 書き込まれる。変換は初期状態で開始され、 以下の三つのいずれかの"
3965 "条件で停止する:"
3966
3967 #. type: IP
3968 #: build/C/man3/mbstowcs.3:45
3969 #, no-wrap
3970 msgid "1."
3971 msgstr "1."
3972
3973 #. type: Plain text
3974 #: build/C/man3/mbstowcs.3:50
3975 msgid ""
3976 "An invalid multibyte sequence has been encountered.  In this case, I<"
3977 "(size_t)\\ -1> is returned."
3978 msgstr "不正なマルチバイト列に遭遇した。この場合には I<(size_t)\\ -1> を返す。"
3979
3980 #. type: IP
3981 #: build/C/man3/mbstowcs.3:50
3982 #, no-wrap
3983 msgid "2."
3984 msgstr "2."
3985
3986 #. type: Plain text
3987 #: build/C/man3/mbstowcs.3:58
3988 msgid ""
3989 "I<n> non-L\\(aq\\e0\\(aq wide characters have been stored at I<dest>.  In "
3990 "this case, the number of wide characters written to I<dest> is returned, but "
3991 "the shift state at this point is lost."
3992 msgstr ""
3993 "I<n> 文字の L\\(aq\\e0\\(aq 以外のワイド文字を I<dest> に格納した場合。 この"
3994 "場合は I<*src> が次に変換されるマルチバイト列を指すようにして、 I<dest> に書"
3995 "き込まれたワイド文字の数を返す。しかしこの指している 場所のシフト状態は失われ"
3996 "る。"
3997
3998 #. type: IP
3999 #: build/C/man3/mbstowcs.3:58
4000 #, no-wrap
4001 msgid "3."
4002 msgstr "3."
4003
4004 #. type: Plain text
4005 #: build/C/man3/mbstowcs.3:64
4006 msgid ""
4007 "The multibyte string has been completely converted, including the "
4008 "terminating null wide character (\\(aq\\e0\\(aq).  In this case, the number "
4009 "of wide characters written to I<dest>, excluding the terminating null wide "
4010 "character, is returned."
4011 msgstr ""
4012 "マルチバイト文字列が終端の NULL ワイド文字 (\\(aq\\e0\\(aq) まで含めて完全に "
4013 "変換された場合。この場合は終端の NULL ワイド文字を除いて I<dest> に書き込まれ"
4014 "た文字数を返す。"
4015
4016 #. type: Plain text
4017 #: build/C/man3/mbstowcs.3:70
4018 msgid ""
4019 "The programmer must ensure that there is room for at least I<n> wide "
4020 "characters at I<dest>."
4021 msgstr ""
4022 "プログラマーは I<dest> に最低でも I<n> ワイド文字を書き込むこ とができる空間"
4023 "があることを保証しなければならない。"
4024
4025 #. type: Plain text
4026 #: build/C/man3/mbstowcs.3:78
4027 msgid ""
4028 "If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
4029 "except that the converted wide characters are not written out to memory, and "
4030 "that no length limit exists."
4031 msgstr ""
4032 "I<dest> が NULL の場合、I<n> は無視され、上記と同様の変換が 行われるが、変換"
4033 "されたワイド文字はメモリに書き込まれず、変換先の上限 が存在しない。"
4034
4035 #. type: Plain text
4036 #: build/C/man3/mbstowcs.3:84
4037 msgid ""
4038 "In order to avoid the case 2 above, the programmer should make sure I<n> is "
4039 "greater than or equal to I<mbstowcs(NULL,src,0)+1>."
4040 msgstr ""
4041 "上記の 2. の場合を避けるためにプログラマーは I<n> が I<mbstowcs(NULL,"
4042 "src,0)+1> 以上であることを保証すべきである。"
4043
4044 #. type: Plain text
4045 #: build/C/man3/mbstowcs.3:94
4046 msgid ""
4047 "The B<mbstowcs>()  function returns the number of wide characters that make "
4048 "up the converted part of the wide-character string, not including the "
4049 "terminating null wide character.  If an invalid multibyte sequence was "
4050 "encountered, I<(size_t)\\ -1> is returned."
4051 msgstr ""
4052 "B<mbstowcs>()  関数はワイド文字列に変換完了したワイド文字の数を返す。 終端の"
4053 "ナルワイド文字は含まない。不正なマルチバイト列に遭遇した場合には I<"
4054 "(size_t)\\ -1> を返す。"
4055
4056 #. type: Plain text
4057 #: build/C/man3/mbstowcs.3:103
4058 msgid ""
4059 "The behavior of B<mbstowcs>()  depends on the B<LC_CTYPE> category of the "
4060 "current locale."
4061 msgstr ""
4062 "B<mbstowcs>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
4063
4064 #. type: Plain text
4065 #: build/C/man3/mbstowcs.3:108
4066 msgid ""
4067 "The function B<mbsrtowcs>(3)  provides a better interface to the same "
4068 "functionality."
4069 msgstr "B<mbsrtowcs>(3)  関数は同じ機能のより良いインターフェースを提供する。"
4070
4071 #. type: Plain text
4072 #: build/C/man3/mbstowcs.3:113
4073 msgid ""
4074 "The program below illustrates the use of B<mbstowcs>(), as well as some of "
4075 "the wide character classification functions.  An example run is the "
4076 "following:"
4077 msgstr ""
4078 "下記のプログラムは B<mbstowcs>() といくつかのワイド文字分類関数の使用方法を示"
4079 "したものである。実行例は以下のようになる。"
4080
4081 #. type: Plain text
4082 #: build/C/man3/mbstowcs.3:120
4083 #, no-wrap
4084 msgid ""
4085 "$ ./t_mbstowcs de_DE.UTF-8 Grüße!\n"
4086 "Length of source string (excluding terminator):\n"
4087 "    8 bytes\n"
4088 "    6 multibyte characters\n"
4089 msgstr ""
4090 "$ ./t_mbstowcs de_DE.UTF-8 Grüße!\n"
4091 "Length of source string (excluding terminator):\n"
4092 "    8 bytes\n"
4093 "    6 multibyte characters\n"
4094
4095 #. type: Plain text
4096 #: build/C/man3/mbstowcs.3:128
4097 #, no-wrap
4098 msgid ""
4099 "Wide character string is: Grüße! (6 characters)\n"
4100 "    G alpha upper\n"
4101 "    r alpha lower\n"
4102 "    ü alpha lower\n"
4103 "    ß alpha lower\n"
4104 "    e alpha lower\n"
4105 "    ! !alpha\n"
4106 msgstr ""
4107 "Wide character string is: Grüße! (6 characters)\n"
4108 "    G alpha upper\n"
4109 "    r alpha lower\n"
4110 "    ü alpha lower\n"
4111 "    ß alpha lower\n"
4112 "    e alpha lower\n"
4113 "    ! !alpha\n"
4114
4115 #. type: SS
4116 #: build/C/man3/mbstowcs.3:130 build/C/man3/strtol.3:248
4117 #, no-wrap
4118 msgid "Program source"
4119 msgstr "プログラムのソース"
4120
4121 #. type: Plain text
4122 #: build/C/man3/mbstowcs.3:137
4123 #, no-wrap
4124 msgid ""
4125 "#include E<lt>locale.hE<gt>\n"
4126 "#include E<lt>wchar.hE<gt>\n"
4127 "#include E<lt>stdio.hE<gt>\n"
4128 "#include E<lt>string.hE<gt>\n"
4129 "#include E<lt>stdlib.hE<gt>\n"
4130 msgstr ""
4131 "#include E<lt>locale.hE<gt>\n"
4132 "#include E<lt>wchar.hE<gt>\n"
4133 "#include E<lt>stdio.hE<gt>\n"
4134 "#include E<lt>string.hE<gt>\n"
4135 "#include E<lt>stdlib.hE<gt>\n"
4136
4137 #. type: Plain text
4138 #: build/C/man3/mbstowcs.3:144
4139 #, no-wrap
4140 msgid ""
4141 "int\n"
4142 "main(int argc, char *argv[])\n"
4143 "{\n"
4144 "    size_t mbslen;      /* Number of multibyte characters in source */\n"
4145 "    wchar_t *wcs;       /* Pointer to converted wide character string */\n"
4146 "    wchar_t *wp;\n"
4147 msgstr ""
4148 "int\n"
4149 "main(int argc, char *argv[])\n"
4150 "{\n"
4151 "    size_t mbslen;      /* Number of multibyte characters in source */\n"
4152 "    wchar_t *wcs;       /* Pointer to converted wide character string */\n"
4153 "    wchar_t *wp;\n"
4154
4155 #. type: Plain text
4156 #: build/C/man3/mbstowcs.3:149
4157 #, no-wrap
4158 msgid ""
4159 "    if (argc E<lt> 3) {\n"
4160 "        fprintf(stderr, \"Usage: %s E<lt>localeE<gt> E<lt>stringE<gt>\\en\", argv[0]);\n"
4161 "        exit(EXIT_FAILURE);\n"
4162 "    }\n"
4163 msgstr ""
4164 "    if (argc E<lt> 3) {\n"
4165 "        fprintf(stderr, \"Usage: %s E<lt>localeE<gt> E<lt>stringE<gt>\\en\", argv[0]);\n"
4166 "        exit(EXIT_FAILURE);\n"
4167 "    }\n"
4168
4169 #. type: Plain text
4170 #: build/C/man3/mbstowcs.3:151
4171 #, no-wrap
4172 msgid "    /* Apply the specified locale */\n"
4173 msgstr "    /* Apply the specified locale */\n"
4174
4175 #. type: Plain text
4176 #: build/C/man3/mbstowcs.3:156
4177 #, no-wrap
4178 msgid ""
4179 "    if (setlocale(LC_ALL, argv[1]) == NULL) {\n"
4180 "        perror(\"setlocale\");\n"
4181 "        exit(EXIT_FAILURE);\n"
4182 "    }\n"
4183 msgstr ""
4184 "    if (setlocale(LC_ALL, argv[1]) == NULL) {\n"
4185 "        perror(\"setlocale\");\n"
4186 "        exit(EXIT_FAILURE);\n"
4187 "    }\n"
4188
4189 #. type: Plain text
4190 #: build/C/man3/mbstowcs.3:159
4191 #, no-wrap
4192 msgid ""
4193 "    /* Calculate the length required to hold argv[2] converted to\n"
4194 "       a wide character string */\n"
4195 msgstr ""
4196 "    /* Calculate the length required to hold argv[2] converted to\n"
4197 "       a wide character string */\n"
4198
4199 #. type: Plain text
4200 #: build/C/man3/mbstowcs.3:165
4201 #, no-wrap
4202 msgid ""
4203 "    mbslen = mbstowcs(NULL, argv[2], 0);\n"
4204 "    if (mbslen == (size_t) -1) {\n"
4205 "        perror(\"mbstowcs\");\n"
4206 "        exit(EXIT_FAILURE);\n"
4207 "    }\n"
4208 msgstr ""
4209 "    mbslen = mbstowcs(NULL, argv[2], 0);\n"
4210 "    if (mbslen == (size_t) -1) {\n"
4211 "        perror(\"mbstowcs\");\n"
4212 "        exit(EXIT_FAILURE);\n"
4213 "    }\n"
4214
4215 #. type: Plain text
4216 #: build/C/man3/mbstowcs.3:167
4217 #, no-wrap
4218 msgid "    /* Describe the source string to the user */\n"
4219 msgstr "    /* Describe the source string to the user */\n"
4220
4221 #. type: Plain text
4222 #: build/C/man3/mbstowcs.3:171
4223 #, no-wrap
4224 msgid ""
4225 "    printf(\"Length of source string (excluding terminator):\\en\");\n"
4226 "    printf(\"    %zu bytes\\en\", strlen(argv[2]));\n"
4227 "    printf(\"    %zu multibyte characters\\en\\en\", mbslen);\n"
4228 msgstr ""
4229 "    printf(\"Length of source string (excluding terminator):\\en\");\n"
4230 "    printf(\"    %zu bytes\\en\", strlen(argv[2]));\n"
4231 "    printf(\"    %zu multibyte characters\\en\\en\", mbslen);\n"
4232
4233 #. type: Plain text
4234 #: build/C/man3/mbstowcs.3:174
4235 #, no-wrap
4236 msgid ""
4237 "    /* Allocate wide character string of the desired size.  Add 1\n"
4238 "       to allow for terminating null wide character (L\\(aq\\e0\\(aq). */\n"
4239 msgstr ""
4240 "    /* Allocate wide character string of the desired size.  Add 1\n"
4241 "       to allow for terminating null wide character (L\\(aq\\e0\\(aq). */\n"
4242
4243 #. type: Plain text
4244 #: build/C/man3/mbstowcs.3:180
4245 #, no-wrap
4246 msgid ""
4247 "    wcs = calloc(mbslen + 1, sizeof(wchar_t));\n"
4248 "    if (wcs == NULL) {\n"
4249 "        perror(\"calloc\");\n"
4250 "        exit(EXIT_FAILURE);\n"
4251 "    }\n"
4252 msgstr ""
4253 "    wcs = calloc(mbslen + 1, sizeof(wchar_t));\n"
4254 "    if (wcs == NULL) {\n"
4255 "        perror(\"calloc\");\n"
4256 "        exit(EXIT_FAILURE);\n"
4257 "    }\n"
4258
4259 #. type: Plain text
4260 #: build/C/man3/mbstowcs.3:183
4261 #, no-wrap
4262 msgid ""
4263 "    /* Convert the multibyte character string in argv[2] to a\n"
4264 "       wide character string */\n"
4265 msgstr ""
4266 "    /* Convert the multibyte character string in argv[2] to a\n"
4267 "       wide character string */\n"
4268
4269 #. type: Plain text
4270 #: build/C/man3/mbstowcs.3:188
4271 #, no-wrap
4272 msgid ""
4273 "    if (mbstowcs(wcs, argv[2], mbslen + 1) == (size_t) -1) {\n"
4274 "        perror(\"mbstowcs\");\n"
4275 "        exit(EXIT_FAILURE);\n"
4276 "    }\n"
4277 msgstr ""
4278 "    if (mbstowcs(wcs, argv[2], mbslen + 1) == (size_t) -1) {\n"
4279 "        perror(\"mbstowcs\");\n"
4280 "        exit(EXIT_FAILURE);\n"
4281 "    }\n"
4282
4283 #. type: Plain text
4284 #: build/C/man3/mbstowcs.3:191
4285 #, no-wrap
4286 msgid ""
4287 "    printf(\"Wide character string is: %ls (%zu characters)\\en\",\n"
4288 "            wcs, mbslen);\n"
4289 msgstr ""
4290 "    printf(\"Wide character string is: %ls (%zu characters)\\en\",\n"
4291 "            wcs, mbslen);\n"
4292
4293 #. type: Plain text
4294 #: build/C/man3/mbstowcs.3:194
4295 #, no-wrap
4296 msgid ""
4297 "    /* Now do some inspection of the classes of the characters in\n"
4298 "       the wide character string */\n"
4299 msgstr ""
4300 "    /* Now do some inspection of the classes of the characters in\n"
4301 "       the wide character string */\n"
4302
4303 #. type: Plain text
4304 #: build/C/man3/mbstowcs.3:197
4305 #, no-wrap
4306 msgid ""
4307 "    for (wp = wcs; *wp != 0; wp++) {\n"
4308 "        printf(\"    %lc \", (wint_t) *wp);\n"
4309 msgstr ""
4310 "    for (wp = wcs; *wp != 0; wp++) {\n"
4311 "        printf(\"    %lc \", (wint_t) *wp);\n"
4312
4313 #. type: Plain text
4314 #: build/C/man3/mbstowcs.3:201
4315 #, no-wrap
4316 msgid ""
4317 "        if (!iswalpha(*wp))\n"
4318 "            printf(\"!\");\n"
4319 "        printf(\"alpha \");\n"
4320 msgstr ""
4321 "        if (!iswalpha(*wp))\n"
4322 "            printf(\"!\");\n"
4323 "        printf(\"alpha \");\n"
4324
4325 #. type: Plain text
4326 #: build/C/man3/mbstowcs.3:205
4327 #, no-wrap
4328 msgid ""
4329 "        if (iswalpha(*wp)) {\n"
4330 "            if (iswupper(*wp))\n"
4331 "                printf(\"upper \");\n"
4332 msgstr ""
4333 "        if (iswalpha(*wp)) {\n"
4334 "            if (iswupper(*wp))\n"
4335 "                printf(\"upper \");\n"
4336
4337 #. type: Plain text
4338 #: build/C/man3/mbstowcs.3:209
4339 #, no-wrap
4340 msgid ""
4341 "            if (iswlower(*wp))\n"
4342 "                printf(\"lower \");\n"
4343 "        }\n"
4344 msgstr ""
4345 "            if (iswlower(*wp))\n"
4346 "                printf(\"lower \");\n"
4347 "        }\n"
4348
4349 #. type: Plain text
4350 #: build/C/man3/mbstowcs.3:212
4351 #, no-wrap
4352 msgid ""
4353 "        putchar(\\(aq\\en\\(aq);\n"
4354 "    }\n"
4355 msgstr ""
4356 "        putchar(\\(aq\\en\\(aq);\n"
4357 "    }\n"
4358
4359 #. type: Plain text
4360 #: build/C/man3/mbstowcs.3:222
4361 msgid ""
4362 "B<mblen>(3), B<mbsrtowcs>(3), B<mbtowc>(3), B<wctomb>(3), B<wcstombs>(3)"
4363 msgstr ""
4364 "B<mblen>(3), B<mbsrtowcs>(3), B<mbtowc>(3), B<wctomb>(3), B<wcstombs>(3)"
4365
4366 #. type: TH
4367 #: build/C/man3/mbtowc.3:16
4368 #, no-wrap
4369 msgid "MBTOWC"
4370 msgstr "MBTOWC"
4371
4372 #. type: Plain text
4373 #: build/C/man3/mbtowc.3:19
4374 msgid "mbtowc - convert a multibyte sequence to a wide character"
4375 msgstr "mbtowc - マルチバイト列をワイド文字に変換する"
4376
4377 #. type: Plain text
4378 #: build/C/man3/mbtowc.3:24
4379 #, no-wrap
4380 msgid "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
4381 msgstr "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
4382
4383 #. type: Plain text
4384 #: build/C/man3/mbtowc.3:50
4385 msgid ""
4386 "The main case for this function is when I<s> is not NULL and I<pwc> is not "
4387 "NULL.  In this case, the B<mbtowc>()  function inspects at most I<n> bytes "
4388 "of the multibyte string starting at I<s>, extracts the next complete "
4389 "multibyte character, converts it to a wide character and stores it at "
4390 "I<*pwc>.  It updates an internal shift state known only to the B<mbtowc>()  "
4391 "function.  If I<s> does not point to a null byte (\\(aq\\e0\\(aq), it "
4392 "returns the number of bytes that were consumed from I<s>, otherwise it "
4393 "returns 0."
4394 msgstr ""
4395 "この関数が用いられる場合、通常 I<s> が NULL でなく I<pwc> も NULL でない。こ"
4396 "の場合は B<mbtowc>()  関数は I<s> から始まる 最大 I<n> バイトのマルチバイト文"
4397 "字列を検査して、次の完全なマルチバイト 文字を取り出し、それをワイド文字に変換"
4398 "して I<*pwc> に格納する。 同時に mbtowc 関数のみが使用する内部状態を更新す"
4399 "る。I<s> が NULL バイト (\\(aq\\e0\\(aq) 以外を指している場合は、I<s> から消"
4400 "費するバイト数を返す。 I<s> が NULL バイトを指している場合には 0 を返す。"
4401
4402 #. type: Plain text
4403 #: build/C/man3/mbtowc.3:64
4404 msgid ""
4405 "If the I<n> bytes starting at I<s> do not contain a complete multibyte "
4406 "character, or if they contain an invalid multibyte sequence, B<mbtowc>()  "
4407 "returns -1.  This can happen even if I<n> E<gt>= I<MB_CUR_MAX>, if the "
4408 "multibyte string contains redundant shift sequences."
4409 msgstr ""
4410 "I<s> から始まる I<n> バイトが完全なマルチバイト文字を含んで いない場合や不正"
4411 "なマルチバイト列を含んでいる場合には B<mbtowc>()  は -1 を返す。マルチバイト"
4412 "文字列に冗長なシフトシーケンスが 含まれていると I<n> E<gt>= I<MB_CUR_MAX> の"
4413 "場合もこのようなことが 起こりえる。"
4414
4415 #. type: Plain text
4416 #: build/C/man3/mbtowc.3:74
4417 msgid ""
4418 "A different case is when I<s> is not NULL but I<pwc> is NULL.  In this case, "
4419 "the B<mbtowc>()  function behaves as above, except that it does not store "
4420 "the converted wide character in memory."
4421 msgstr ""
4422 "I<s> が NULL でなく I<pwc> が NULL の場合は B<mbtowc>()  関数は 上記と同様に"
4423 "動作するが、変換したワイド文字はメモリには書き込まれない。"
4424
4425 #.  The Dinkumware doc and the Single UNIX specification say this, but
4426 #.  glibc doesn't implement this.
4427 #. type: Plain text
4428 #: build/C/man3/mbtowc.3:93
4429 msgid ""
4430 "A third case is when I<s> is NULL.  In this case, I<pwc> and I<n> are "
4431 "ignored.  The B<mbtowc>()  function resets the shift state, only known to "
4432 "this function, to the initial state, and returns nonzero if the encoding has "
4433 "nontrivial shift state, or zero if the encoding is stateless."
4434 msgstr ""
4435 "三番目の場合として I<s> が NULL の場合は I<pwc> と I<n> は 無視される。 "
4436 "B<mbtowc>()  関数のみが使用するシフト状態は初期状態に 戻される。そして文字符"
4437 "号がシフト状態に依存するならばゼロ以外を、文字符号が 状態によらないならばゼロ"
4438 "を返す。"
4439
4440 #. type: Plain text
4441 #: build/C/man3/mbtowc.3:105
4442 msgid ""
4443 "If I<s> is not NULL, the B<mbtowc>()  function returns the number of "
4444 "consumed bytes starting at I<s>, or 0 if I<s> points to a null byte, or -1 "
4445 "upon failure."
4446 msgstr ""
4447 "I<s> が NULL でなければ B<mbtowc>()  関数は I<s> から消費した バイト数を、"
4448 "I<s> がナル文字を指している場合はゼロを、 変換に失敗した場合は -1 を返す。"
4449
4450 #. type: Plain text
4451 #: build/C/man3/mbtowc.3:113
4452 msgid ""
4453 "If I<s> is NULL, the B<mbtowc>()  function returns nonzero if the encoding "
4454 "has nontrivial shift state, or zero if the encoding is stateless."
4455 msgstr ""
4456 "I<s> が NULL ならば B<mbtowc>()  関数は文字符号がシフト状態に依存 していれば"
4457 "ゼロ以外を、状態によらなければゼロを返す。"
4458
4459 #. type: Plain text
4460 #: build/C/man3/mbtowc.3:122
4461 msgid ""
4462 "The behavior of B<mbtowc>()  depends on the B<LC_CTYPE> category of the "
4463 "current locale."
4464 msgstr ""
4465 "B<mbtowc>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
4466
4467 #. type: Plain text
4468 #: build/C/man3/mbtowc.3:128
4469 msgid ""
4470 "This function is not multithread safe.  The function B<mbrtowc>(3)  provides "
4471 "a better interface to the same functionality."
4472 msgstr ""
4473 "この関数はマルチスレッドでは安全ではない。 B<mbrtowc>(3)  関数は 同じ機能のよ"
4474 "り良いインターフェースを提供する。"
4475
4476 #. type: Plain text
4477 #: build/C/man3/mbtowc.3:135
4478 msgid ""
4479 "B<MB_CUR_MAX>(3), B<mblen>(3), B<mbrtowc>(3), B<mbstowcs>(3), B<wctomb>(3), "
4480 "B<wcstombs>(3)"
4481 msgstr ""
4482 "B<MB_CUR_MAX>(3), B<mblen>(3), B<mbrtowc>(3), B<mbstowcs>(3), B<wctomb>(3), "
4483 "B<wcstombs>(3)"
4484
4485 #. type: TH
4486 #: build/C/man3/mkdtemp.3:26
4487 #, no-wrap
4488 msgid "MKDTEMP"
4489 msgstr "MKDTEMP"
4490
4491 #. type: TH
4492 #: build/C/man3/mkdtemp.3:26
4493 #, no-wrap
4494 msgid "2010-09-26"
4495 msgstr "2010-09-26"
4496
4497 #. type: Plain text
4498 #: build/C/man3/mkdtemp.3:29
4499 msgid "mkdtemp - create a unique temporary directory"
4500 msgstr "mkdtemp - 他と重ならない一時的なディレクトリを作成する"
4501
4502 #. type: Plain text
4503 #: build/C/man3/mkdtemp.3:34
4504 #, no-wrap
4505 msgid "B<char *mkdtemp(char *>I<template>B<);>\n"
4506 msgstr "B<char *mkdtemp(char *>I<template>B<);>\n"
4507
4508 #. type: Plain text
4509 #: build/C/man3/mkdtemp.3:42
4510 msgid "B<mkdtemp>():"
4511 msgstr "B<mkdtemp>():"
4512
4513 #. type: Plain text
4514 #: build/C/man3/mkdtemp.3:47
4515 msgid "_BSD_SOURCE"
4516 msgstr "_BSD_SOURCE"
4517
4518 #. type: Plain text
4519 #: build/C/man3/mkdtemp.3:49
4520 msgid "|| /* Since glibc 2.10: */"
4521 msgstr "|| /* Since glibc 2.10: */"
4522
4523 #. type: Plain text
4524 #: build/C/man3/mkdtemp.3:51
4525 msgid "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"
4526 msgstr "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"
4527
4528 #. type: Plain text
4529 #: build/C/man3/mkdtemp.3:68
4530 msgid ""
4531 "The B<mkdtemp>()  function generates a uniquely named temporary directory "
4532 "from I<template>.  The last six characters of I<template> must be XXXXXX and "
4533 "these are replaced with a string that makes the directory name unique.  The "
4534 "directory is then created with permissions 0700.  Since it will be modified, "
4535 "I<template> must not be a string constant, but should be declared as a "
4536 "character array."
4537 msgstr ""
4538 "B<mkdtemp>()  関数は、他と重ならない名前の一時的なディレクトリを I<template> "
4539 "から作成する。 I<template> の後から 6 文字は XXXXXX でなければならない。 この"
4540 "部分はディレクトリ名を他と重ならなくするための 文字列で置き換えられる。 ディ"
4541 "レクトリは許可属性を 0700 として作成される。 I<template> は変更されるので、文"
4542 "字列定数にしてはならず、文字配列にすべきである。"
4543
4544 #. type: Plain text
4545 #: build/C/man3/mkdtemp.3:75
4546 msgid ""
4547 "The B<mkdtemp>()  function returns a pointer to the modified template string "
4548 "on success, and NULL on failure, in which case I<errno> is set appropriately."
4549 msgstr ""
4550 "成功した場合、 B<mkdtemp>()  関数は 変更された template 文字列へのポインタを"
4551 "返す。 失敗した場合は、NULL を返して、 I<errno> を適切に設定する。"
4552
4553 #. type: TP
4554 #: build/C/man3/mkdtemp.3:76 build/C/man3/mkstemp.3:166
4555 #: build/C/man3/mktemp.3:92 build/C/man3/random.3:141
4556 #: build/C/man3/random.3:148 build/C/man3/random_r.3:106
4557 #: build/C/man3/random_r.3:110 build/C/man3/random_r.3:119
4558 #: build/C/man3/setenv.3:120 build/C/man3/strtol.3:145
4559 #: build/C/man3/strtoul.3:149
4560 #, no-wrap
4561 msgid "B<EINVAL>"
4562 msgstr "B<EINVAL>"
4563
4564 #. type: Plain text
4565 #: build/C/man3/mkdtemp.3:80
4566 msgid ""
4567 "The last six characters of I<template> were not XXXXXX.  Now I<template> is "
4568 "unchanged."
4569 msgstr ""
4570 "I<template> の最後の 6 文字が XXXXXX でない。この場合、I<template> は変更され"
4571 "ない。"
4572
4573 #. type: Plain text
4574 #: build/C/man3/mkdtemp.3:84
4575 msgid "Also see B<mkdir>(2)  for other possible values for I<errno>."
4576 msgstr "I<errno> に設定される他の値については、 B<mkdir>(2)  を参照すること。"
4577
4578 #. type: Plain text
4579 #: build/C/man3/mkdtemp.3:86
4580 msgid "Available since glibc 2.1.91."
4581 msgstr "OpenBSD 2.2 で導入された。"
4582
4583 #.  As at 2006, this function is being considered for a revision of POSIX.1
4584 #.  Also in NetBSD 1.4.
4585 #. type: Plain text
4586 #: build/C/man3/mkdtemp.3:91
4587 msgid "POSIX.1-2008.  This function is present on the BSDs."
4588 msgstr "POSIX.1-2008.  この関数は BSD に存在する。"
4589
4590 #. type: Plain text
4591 #: build/C/man3/mkdtemp.3:98
4592 msgid ""
4593 "B<mkdir>(2), B<mkstemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), "
4594 "B<tmpnam>(3)"
4595 msgstr ""
4596 "B<mkdir>(2), B<mkstemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), "
4597 "B<tmpnam>(3)"
4598
4599 #. type: TH
4600 #: build/C/man3/mkstemp.3:35
4601 #, no-wrap
4602 msgid "MKSTEMP"
4603 msgstr "MKSTEMP"
4604
4605 #. type: TH
4606 #: build/C/man3/mkstemp.3:35
4607 #, no-wrap
4608 msgid "2013-12-28"
4609 msgstr "2013-12-28"
4610
4611 #. type: Plain text
4612 #: build/C/man3/mkstemp.3:38
4613 msgid "mkstemp, mkostemp, mkstemps, mkostemps - create a unique temporary file"
4614 msgstr ""
4615 "mkstemp, mkostemp, mkstemps, mkostemps - 他と重ならない名前を持つ一時ファイル"
4616 "を作成する"
4617
4618 #. type: Plain text
4619 #: build/C/man3/mkstemp.3:43
4620 #, no-wrap
4621 msgid "B<int mkstemp(char *>I<template>B<);>\n"
4622 msgstr "B<int mkstemp(char *>I<template>B<);>\n"
4623
4624 #. type: Plain text
4625 #: build/C/man3/mkstemp.3:45
4626 #, no-wrap
4627 msgid "B<int mkostemp(char *>I<template>B<, int >I<flags>B<);>\n"
4628 msgstr "B<int mkostemp(char *>I<template>B<, int >I<flags>B<);>\n"
4629
4630 #. type: Plain text
4631 #: build/C/man3/mkstemp.3:47
4632 #, no-wrap
4633 msgid "B<int mkstemps(char *>I<template>B<, int >I<suffixlen>B<);>\n"
4634 msgstr "B<int mkstemps(char *>I<template>B<, int >I<suffixlen>B<);>\n"
4635
4636 #. type: Plain text
4637 #: build/C/man3/mkstemp.3:49
4638 #, no-wrap
4639 msgid "B<int mkostemps(char *>I<template>B<, int >I<suffixlen>B<, int >I<flags>B<);>\n"
4640 msgstr "B<int mkostemps(char *>I<template>B<, int >I<suffixlen>B<, int >I<flags>B<);>\n"
4641
4642 #. type: Plain text
4643 #: build/C/man3/mkstemp.3:57
4644 msgid "B<mkstemp>():"
4645 msgstr "B<mkstemp>():"
4646
4647 #. type: Plain text
4648 #: build/C/man3/mkstemp.3:62 build/C/man3/mktemp.3:63
4649 msgid ""
4650 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
4651 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
4652 msgstr ""
4653 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
4654 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
4655
4656 #. type: Plain text
4657 #: build/C/man3/mkstemp.3:64
4658 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
4659 msgstr "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
4660
4661 #. type: Plain text
4662 #: build/C/man3/mkstemp.3:70
4663 msgid "B<mkostemp>(): _GNU_SOURCE"
4664 msgstr "B<mkostemp>(): _GNU_SOURCE"
4665
4666 #. type: Plain text
4667 #: build/C/man3/mkstemp.3:73
4668 msgid "B<mkstemps>(): _BSD_SOURCE || _SVID_SOURCE"
4669 msgstr "B<mkstemps>(): _BSD_SOURCE || _SVID_SOURCE"
4670
4671 #. type: Plain text
4672 #: build/C/man3/mkstemp.3:76
4673 msgid "B<mkostemps>(): _GNU_SOURCE"
4674 msgstr "B<mkostemps>(): _GNU_SOURCE"
4675
4676 #. type: Plain text
4677 #: build/C/man3/mkstemp.3:83
4678 msgid ""
4679 "The B<mkstemp>()  function generates a unique temporary filename from "
4680 "I<template>, creates and opens the file, and returns an open file descriptor "
4681 "for the file."
4682 msgstr ""
4683 "関数 B<mkstemp>()  は引数 I<template> から他と重ならない一時ファイル名を生成"
4684 "し、 そのファイルの作成とオープンを行い、 そのファイルに対するオープン済みの"
4685 "ファイルディスクリプタを返す。"
4686
4687 #. type: Plain text
4688 #: build/C/man3/mkstemp.3:91
4689 msgid ""
4690 "The last six characters of I<template> must be \"XXXXXX\" and these are "
4691 "replaced with a string that makes the filename unique.  Since it will be "
4692 "modified, I<template> must not be a string constant, but should be declared "
4693 "as a character array."
4694 msgstr ""
4695 "引数 I<template> で指示する文字列の後ろの 6 文字は XXXXXX である必要がある。 "
4696 "この部分がファイル名を他と重ならないようにする文字で置き換えられる。 "
4697 "I<template> は書き換えられるため、文字列定数ではなく文字配列として 宣言するよ"
4698 "うにしなければならない。"
4699
4700 #. type: Plain text
4701 #: build/C/man3/mkstemp.3:99
4702 msgid ""
4703 "The file is created with permissions 0600, that is, read plus write for "
4704 "owner only.  The returned file descriptor provides both read and write "
4705 "access to the file.  The file is opened with the B<open>(2)  B<O_EXCL> flag, "
4706 "guaranteeing that the caller is the process that creates the file."
4707 msgstr ""
4708 "ファイルは許可モード 0600 で作成され、所有者のみが読み書き可能である。返され"
4709 "るファイルディスクリプタで、このファイルへの読み書き両方のアクセスが 可能であ"
4710 "る。 呼び出し者がそのファイルを作成するプロセスであることを保証するために、 "
4711 "ファイルは B<open>(2)  の B<O_EXCL> フラグ付きでオープンされる。"
4712
4713 #.  Reportedly, FreeBSD
4714 #. type: Plain text
4715 #: build/C/man3/mkstemp.3:130
4716 msgid ""
4717 "The B<mkostemp>()  function is like B<mkstemp>(), with the difference that "
4718 "the following bits\\(emwith the same meaning as for B<open>(2)\\(emmay be "
4719 "specified in I<flags>: B<O_APPEND>, B<O_CLOEXEC>, and B<O_SYNC>.  Note that "
4720 "when creating the file, B<mkostemp>()  includes the values B<O_RDWR>, "
4721 "B<O_CREAT>, and B<O_EXCL> in the I<flags> argument given to B<open>(2); "
4722 "including these values in the I<flags> argument given to B<mkostemp>()  is "
4723 "unnecessary, and produces errors on some systems."
4724 msgstr ""
4725 "B<mkostemp>() 関数は B<mkstemp>() と同様だが、 I<flags> に B<O_APPEND>, "
4726 "B<O_CLOEXEC>, B<O_SYNC> のビットを指定できる点が異なる (意味は B<open>(2) と"
4727 "同じである)。ファイルを作成する際、 B<mkostemp>() は B<open>(2) に渡す "
4728 "I<flags> 引き数に B<O_RDWR>, B<O_CREAT>, B<O_EXCL> を含める。そのため、 "
4729 "B<mkostemp>() に渡す I<flags> 引き数にこれらの値を含める必要はなく、システム"
4730 "によってはエラーが発生する点に注意すること。"
4731
4732 #. type: Plain text
4733 #: build/C/man3/mkstemp.3:146
4734 msgid ""
4735 "The B<mkstemps>()  function is like B<mkstemp>(), except that the string in "
4736 "I<template> contains a suffix of I<suffixlen> characters.  Thus, I<template> "
4737 "is of the form I<prefixXXXXXXsuffix>, and the string XXXXXX is modified as "
4738 "for B<mkstemp>()."
4739 msgstr ""
4740 "B<mkstemps>() 関数は B<mkstemp>() と同様だが、 I<template> 内の文字列に長さ\n"
4741 "が I<suffixlen> 文字の接尾辞 (suffix) が含まれる点が異なる。\n"
4742 "したがって、 I<template> は I<prefixXXXXXXsuffix> の形式となる。\n"
4743 "文字列 XXXXXX の部分は B<mkstemp>() により更新される。"
4744
4745 #. type: Plain text
4746 #: build/C/man3/mkstemp.3:155
4747 msgid ""
4748 "The B<mkostemps>()  function is to B<mkstemps>()  as B<mkostemp>()  is to "
4749 "B<mkstemp>()."
4750 msgstr ""
4751 "B<mkostemps>() と B<mkstemps>() の関係は、\n"
4752 "B<mkostemp>() と B<mkstemp>() の関係と同じである。"
4753
4754 #. type: Plain text
4755 #: build/C/man3/mkstemp.3:161
4756 msgid ""
4757 "On success, these functions return the file descriptor of the temporary "
4758 "file.  On error, -1 is returned, and I<errno> is set appropriately."
4759 msgstr ""
4760 "成功すると、これらの関数は一時ファイルのファイルディスクリプタを返す。 エラー"
4761 "の場合は、-1 を返し、 I<errno> を適切に設定する。"
4762
4763 #. type: TP
4764 #: build/C/man3/mkstemp.3:162
4765 #, no-wrap
4766 msgid "B<EEXIST>"
4767 msgstr "B<EEXIST>"
4768
4769 #. type: Plain text
4770 #: build/C/man3/mkstemp.3:166
4771 msgid ""
4772 "Could not create a unique temporary filename.  Now the contents of "
4773 "I<template> are undefined."
4774 msgstr ""
4775 "すでに同じ名前を持つファイルが存在した。 I<template> の内容は不定である。"
4776
4777 #. type: Plain text
4778 #: build/C/man3/mkstemp.3:174
4779 msgid ""
4780 "For B<mkstemp>()  and B<mkostemp>(): The last six characters of I<template> "
4781 "were not XXXXXX; now I<template> is unchanged."
4782 msgstr ""
4783 "B<mkstemp>() と B<mkostemp>() の場合:\n"
4784 "I<template> の最後の 6 文字が XXXXXX でなかった。\n"
4785 "この場合、I<template> は変更されない。"
4786
4787 #. type: Plain text
4788 #: build/C/man3/mkstemp.3:185
4789 msgid ""
4790 "For B<mkstemps>()  and B<mkostemps>(): I<template> is less than I<(6 + "
4791 "suffixlen)> characters long, or the last 6 characters before the suffix in "
4792 "I<template> were not XXXXXX."
4793 msgstr ""
4794 "B<mkstemps>() と B<mkostemps>() の場合:\n"
4795 "I<template> の長さが I<(6 + suffixlen)> 文字より短い、または\n"
4796 "I<template> の接尾辞の直前の 6 文字が XXXXXX ではなかった。"
4797
4798 #. type: Plain text
4799 #: build/C/man3/mkstemp.3:188
4800 msgid ""
4801 "These functions may also fail with any of the errors described for B<open>"
4802 "(2)."
4803 msgstr ""
4804 "これらの関数は B<open>(2) に書かれているエラーのいずれかで失敗することもあ"
4805 "る。"
4806
4807 #. type: Plain text
4808 #: build/C/man3/mkstemp.3:195
4809 msgid ""
4810 "B<mkostemp>()  is available since glibc 2.7.  B<mkstemps>()  and B<mkostemps>"
4811 "()  are available since glibc 2.11."
4812 msgstr ""
4813 "B<mkostemp>() は glibc 2.7 以降で利用できる。\n"
4814 "B<mkstemps>() と B<mkostemps>() は glibc 2.11 以降で利用できる。"
4815
4816 #. type: Plain text
4817 #: build/C/man3/mkstemp.3:198
4818 msgid "B<mkstemp>(): 4.3BSD, POSIX.1-2001."
4819 msgstr "B<mkstemp>(): 4.3BSD, POSIX.1-2001."
4820
4821 #.  mkstemps() appears to be at least on the BSDs, Mac OS X, Solaris,
4822 #.  and Tru64.
4823 #. type: Plain text
4824 #: build/C/man3/mkstemp.3:203
4825 msgid "B<mkstemps>(): unstandardized, but appears on several other systems."
4826 msgstr ""
4827 "B<mkstemps>(): 標準化されていないが、他のいくつかのシステムにも存在する。"
4828
4829 #. type: Plain text
4830 #: build/C/man3/mkstemp.3:208
4831 msgid "B<mkostemp>()  and B<mkostemps>(): are glibc extensions."
4832 msgstr "B<mkostemp>() と B<mkostemps>(): glibc による拡張。"
4833
4834 #. type: Plain text
4835 #: build/C/man3/mkstemp.3:215
4836 msgid ""
4837 "In glibc versions 2.06 and earlier, the file is created with permissions "
4838 "0666, that is, read and write for all users.  This old behavior may be a "
4839 "security risk, especially since other UNIX flavors use 0600, and somebody "
4840 "might overlook this detail when porting programs.  POSIX.1-2008 adds a "
4841 "requirement that the file be created with mode 0600."
4842 msgstr ""
4843 "glibc バージョン 2.06 以前では、ファイルは許可モード 0666 で作成され、全ての"
4844 "ユーザが読み書き可能であった。この古い動作は、 セキュリティ上のリスクになり得"
4845 "る。特に、他の UNIX では許可モードとして 0600 を使うため、プログラムを移植す"
4846 "る際、この細かな違いを見落とす可能性があるからだ。 POSIX.1-2008 では、ファイ"
4847 "ルを許可モード 0600 で作成することが必須要件として追加された。"
4848
4849 #. type: Plain text
4850 #: build/C/man3/mkstemp.3:226
4851 msgid ""
4852 "More generally, the POSIX specification of B<mkstemp>()  does not say "
4853 "anything about file modes, so the application should make sure its file mode "
4854 "creation mask (see B<umask>(2))  is set appropriately before calling "
4855 "B<mkstemp>()  (and B<mkostemp>())."
4856 msgstr ""
4857 "より一般的には、 B<mkstemp>()  の POSIX 規定ではファイルモードについて何も述"
4858 "べていない。 従って、アプリケーションは B<mkstemp>()  (や B<mkostemp>())  を"
4859 "呼び出す前にファイルモード生成マスク (B<umask>(2)  参照) が適切に設定されてい"
4860 "るか確認するべきである。"
4861
4862 #. type: Plain text
4863 #: build/C/man3/mkstemp.3:233
4864 msgid ""
4865 "The prototype for B<mktemp>()  is in I<E<lt>unistd.hE<gt>> for libc4, libc5, "
4866 "glibc1; glibc2 follows POSIX.1 and has the prototype in I<E<lt>stdlib."
4867 "hE<gt>>."
4868 msgstr ""
4869 "B<mktemp>()  のプロトタイプ宣言は、libc4, libc5, glibc1 では I<E<lt>unistd."
4870 "hE<gt>> に含まれる; glibc2 では POSIX.1 に準拠し I<E<lt>stdlib.hE<gt>> に含ま"
4871 "れている。"
4872
4873 #. type: Plain text
4874 #: build/C/man3/mkstemp.3:239
4875 msgid "B<mkdtemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
4876 msgstr ""
4877 "B<mkdtemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
4878
4879 #. type: TH
4880 #: build/C/man3/mktemp.3:34
4881 #, no-wrap
4882 msgid "MKTEMP"
4883 msgstr "MKTEMP"
4884
4885 #. type: TH
4886 #: build/C/man3/mktemp.3:34
4887 #, no-wrap
4888 msgid "2014-02-27"
4889 msgstr "2014-02-27"
4890
4891 #. type: Plain text
4892 #: build/C/man3/mktemp.3:37
4893 msgid "mktemp - make a unique temporary filename"
4894 msgstr "mktemp - 他と重ならないテンポラリファイル名を作成する"
4895
4896 #. type: Plain text
4897 #: build/C/man3/mktemp.3:42
4898 #, no-wrap
4899 msgid "B<char *mktemp(char *>I<template>B<);>\n"
4900 msgstr "B<char *mktemp(char *>I<template>B<);>\n"
4901
4902 #. type: Plain text
4903 #: build/C/man3/mktemp.3:50
4904 msgid "B<mktemp>():"
4905 msgstr "B<mktemp>():"
4906
4907 #. type: Plain text
4908 #: build/C/man3/mktemp.3:59
4909 #, no-wrap
4910 msgid ""
4911 "_BSD_SOURCE || _SVID_SOURCE ||\n"
4912 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
4913 "         _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
4914 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
4915 msgstr ""
4916 "_BSD_SOURCE || _SVID_SOURCE ||\n"
4917 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
4918 "         _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
4919 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
4920
4921 #. type: Plain text
4922 #: build/C/man3/mktemp.3:69
4923 msgid "I<Never use this function>; see NOTES."
4924 msgstr "I<決してこの関数は使用しないこと>。「注意」を参照。"
4925
4926 #. type: Plain text
4927 #: build/C/man3/mktemp.3:80
4928 msgid ""
4929 "The B<mktemp>()  function generates a unique temporary filename from "
4930 "I<template>.  The last six characters of I<template> must be XXXXXX and "
4931 "these are replaced with a string that makes the filename unique.  Since it "
4932 "will be modified, I<template> must not be a string constant, but should be "
4933 "declared as a character array."
4934 msgstr ""
4935 "関数 B<mktemp>()  は引数 I<template> から他と重ならない テンポラリファイル名"
4936 "を作成する。引数 I<template> で指示する文字配列 の後6文字は XXXXXX である必要"
4937 "がある。この部分がファイル名を他と 重ならないにするような文字で置き換えられ"
4938 "る。 I<template> は書き換えられるため、文字列定数ではなく文字配列として宣言す"
4939 "るように しなければならない。"
4940
4941 #. type: Plain text
4942 #: build/C/man3/mktemp.3:91
4943 msgid ""
4944 "The B<mktemp>()  function always returns I<template>.  If a unique name was "
4945 "created, the last six bytes of I<template> will have been modified in such a "
4946 "way that the resulting name is unique (i.e., does not exist already)  If a "
4947 "unique name could not be created, I<template> is made an empty string, and "
4948 "I<errno> is set to indicate the error."
4949 msgstr ""
4950 "関数 B<mktemp>()  は常に I<template> を戻す。 一意な名前が作成された場合、 "
4951 "I<template> の最後の 6 バイトに 他と重ならない名前 (それまでに出ていない名"
4952 "前) になるような値が格納される。 一意な名前が作成できなかった場合には、 "
4953 "I<template> には空文字列がセットされ、 I<errno> にエラーを示す値がセットされ"
4954 "る。"
4955
4956 #. type: Plain text
4957 #: build/C/man3/mktemp.3:95
4958 msgid "The last six characters of I<template> were not XXXXXX."
4959 msgstr "引数 I<template> で指示された文字列の後6文字が XXXXXX でない。"
4960
4961 #. type: Plain text
4962 #: build/C/man3/mktemp.3:99
4963 msgid ""
4964 "4.3BSD, POSIX.1-2001.  POSIX.1-2008 removes the specification of B<mktemp>()."
4965 msgstr ""
4966 "4.3BSD, POSIX.1-2001.  POSIX.1-2008 では B<mktemp>()  の仕様が削除されてい"
4967 "る。"
4968
4969 #. type: Plain text
4970 #: build/C/man3/mktemp.3:105
4971 msgid ""
4972 "The prototype is in I<E<lt>unistd.hE<gt>> for libc4, libc5, glibc1; glibc2 "
4973 "follows the Single UNIX Specification and has the prototype in I<E<lt>stdlib."
4974 "hE<gt>>."
4975 msgstr ""
4976 "libc4, libc5, glibc1 でのプロトタイプ宣言は I<E<lt>unistd.hE<gt>> に含まれ"
4977 "る; glibc2 では Single UNIX Specification に従って I<E<lt>stdlib.hE<gt>> に含"
4978 "まれている。"
4979
4980 #. type: SH
4981 #: build/C/man3/mktemp.3:105 build/C/man3/random.3:189
4982 #: build/C/man3/rpmatch.3:104 build/C/man3/setenv.3:144
4983 #, no-wrap
4984 msgid "BUGS"
4985 msgstr "バグ"
4986
4987 #. type: Plain text
4988 #: build/C/man3/mktemp.3:118
4989 msgid ""
4990 "Never use B<mktemp>().  Some implementations follow 4.3BSD and replace "
4991 "XXXXXX by the current process ID and a single letter, so that at most 26 "
4992 "different names can be returned.  Since on the one hand the names are easy "
4993 "to guess, and on the other hand there is a race between testing whether the "
4994 "name exists and opening the file, every use of B<mktemp>()  is a security "
4995 "risk.  The race is avoided by B<mkstemp>(3)."
4996 msgstr ""
4997 "B<mktemp>()  を決して使わないこと。4.3BSD 系の実装や XXXXXX を プロセス ID と"
4998 "1文字により置き換える方式ではせいぜい26の名前を返す ことができるにすぎない。 "
4999 "この名前は簡単に推測できることや、その名前がすでに存在しているかどうか テスト"
5000 "して、そのファイルをオープンする間に競合がある事から、 B<mktemp>()  を使うの"
5001 "は毎回セキュリティリスクをおかすことになる。 この競合は B<mkstemp>(3)  を使う"
5002 "ことで避けられる。"
5003
5004 #. type: Plain text
5005 #: build/C/man3/mktemp.3:123
5006 msgid "B<mkstemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
5007 msgstr "B<mkstemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
5008
5009 #. type: TH
5010 #: build/C/man3/on_exit.3:31
5011 #, no-wrap
5012 msgid "ON_EXIT"
5013 msgstr "ON_EXIT"
5014
5015 #. type: Plain text
5016 #: build/C/man3/on_exit.3:34
5017 msgid ""
5018 "on_exit - register a function to be called at normal process termination"
5019 msgstr "on_exit - プロセスが正常に終了した際に呼ばれる関数を登録する"
5020
5021 #. type: Plain text
5022 #: build/C/man3/on_exit.3:39
5023 #, no-wrap
5024 msgid "B<int on_exit(void (*>I<function>B<)(int , void *), void *>I<arg>B<);>\n"
5025 msgstr "B<int on_exit(void (*>I<function>B<)(int , void *), void *>I<arg>B<);>\n"
5026
5027 #. type: Plain text
5028 #: build/C/man3/on_exit.3:48
5029 msgid "B<on_exit>(): _BSD_SOURCE || _SVID_SOURCE"
5030 msgstr "B<on_exit>(): _BSD_SOURCE || _SVID_SOURCE"
5031
5032 #. type: Plain text
5033 #: build/C/man3/on_exit.3:66
5034 msgid ""
5035 "The B<on_exit>()  function registers the given I<function> to be called at "
5036 "normal process termination, whether via B<exit>(3)  or via return from the "
5037 "program's I<main>().  The I<function> is passed the status argument given to "
5038 "the last call to B<exit>(3)  and the I<arg> argument from B<on_exit>()."
5039 msgstr ""
5040 "B<on_exit>()  関数は、指定された関数 I<function> を、プロセスが 正常に終了し"
5041 "た際に呼ばれる関数として登録する。正常な終了とは、 B<exit>(3)  またはプログラ"
5042 "ムの I<main>()  関数の中の return 命令による終了である。 関数 I<function> に"
5043 "は、直近の B<exit>(3)  の呼び出しで渡された status 引数と B<on_exit>()  の "
5044 "I<arg> 引数が渡される。"
5045
5046 #. type: Plain text
5047 #: build/C/man3/on_exit.3:81
5048 msgid ""
5049 "The B<on_exit>()  function returns the value 0 if successful; otherwise it "
5050 "returns a nonzero value."
5051 msgstr "B<on_exit>()  関数は、成功したら 0 を、そうでなければ 0 以外を返す。"
5052
5053 #. type: Plain text
5054 #: build/C/man3/on_exit.3:88
5055 msgid ""
5056 "This function comes from SunOS 4, but is also present in libc4, libc5 and "
5057 "glibc.  It no longer occurs in Solaris (SunOS 5).  Avoid this function, and "
5058 "use the standard B<atexit>(3)  instead."
5059 msgstr ""
5060 "この関数は SunOS 4 由来であるが、libc4, libc5, glibc にも存在する。 Solaris "
5061 "(SunOS 5) にはもはや存在しない。 この関数の使用は避け、代わりに標準の "
5062 "B<atexit>(3)  を使うこと。"
5063
5064 #. type: Plain text
5065 #: build/C/man3/on_exit.3:92
5066 msgid "B<_exit>(2), B<atexit>(3), B<exit>(3)"
5067 msgstr "B<_exit>(2), B<atexit>(3), B<exit>(3)"
5068
5069 #. type: TH
5070 #: build/C/man3/putenv.3:36
5071 #, no-wrap
5072 msgid "PUTENV"
5073 msgstr "PUTENV"
5074
5075 #. type: TH
5076 #: build/C/man3/putenv.3:36
5077 #, no-wrap
5078 msgid "2013-04-19"
5079 msgstr "2013-04-19"
5080
5081 #. type: Plain text
5082 #: build/C/man3/putenv.3:39
5083 msgid "putenv - change or add an environment variable"
5084 msgstr "putenv - 環境変数の変更または追加"
5085
5086 #.  Not: const char *
5087 #. type: Plain text
5088 #: build/C/man3/putenv.3:45
5089 #, no-wrap
5090 msgid "B<int putenv(char *>I<string>B<);>\n"
5091 msgstr "B<int putenv(char *>I<string>B<);>\n"
5092
5093 #. type: Plain text
5094 #: build/C/man3/putenv.3:54
5095 msgid "B<putenv>(): _SVID_SOURCE || _XOPEN_SOURCE"
5096 msgstr "B<putenv>(): _SVID_SOURCE || _XOPEN_SOURCE"
5097
5098 #. type: Plain text
5099 #: build/C/man3/putenv.3:67
5100 msgid ""
5101 "The B<putenv>()  function adds or changes the value of environment "
5102 "variables.  The argument I<string> is of the form I<name>=I<value>.  If "
5103 "I<name> does not already exist in the environment, then I<string> is added "
5104 "to the environment.  If I<name> does exist, then the value of I<name> in the "
5105 "environment is changed to I<value>.  The string pointed to by I<string> "
5106 "becomes part of the environment, so altering the string changes the "
5107 "environment."
5108 msgstr ""
5109 "B<putenv>()  関数は、環境変数の追加または値の変更を行う。 引数 I<string> は "
5110 "I<name>=I<value> という形式を取る。 I<name> が環境に存在しない場合は "
5111 "I<string> が環境に追加される。 I<name> が環境に存在する場合は I<name> の値は "
5112 "I<value> に変更される。 I<string> が指している文字列は環境の一部となるので、 "
5113 "文字列を変更すると環境も変更される。"
5114
5115 #. type: Plain text
5116 #: build/C/man3/putenv.3:75
5117 msgid ""
5118 "The B<putenv>()  function returns zero on success, or nonzero if an error "
5119 "occurs.  In the event of an error, I<errno> is set to indicate the cause."
5120 msgstr ""
5121 "B<putenv>() 関数は、成功すると 0 を返し、エラーの場合は 0 以外の値を返す。エ"
5122 "ラーが発生した場合、 I<errno> に原因を示す値が設定される。"
5123
5124 #. type: TP
5125 #: build/C/man3/putenv.3:76 build/C/man3/setenv.3:125
5126 #, no-wrap
5127 msgid "B<ENOMEM>"
5128 msgstr "B<ENOMEM>"
5129
5130 #. type: Plain text
5131 #: build/C/man3/putenv.3:79
5132 msgid "Insufficient space to allocate new environment."
5133 msgstr "新しい環境を割り当てるのに十分な空きがない。"
5134
5135 #. type: Plain text
5136 #: build/C/man3/putenv.3:81
5137 msgid "SVr4, POSIX.1-2001, 4.3BSD."
5138 msgstr "SVr4, POSIX.1-2001, 4.3BSD."
5139
5140 #. type: Plain text
5141 #: build/C/man3/putenv.3:86
5142 msgid ""
5143 "The B<putenv>()  function is not required to be reentrant, and the one in "
5144 "libc4, libc5 and glibc 2.0 is not, but the glibc 2.1 version is."
5145 msgstr ""
5146 "B<putenv>()  はリエントラントであることを求められていない。 libc4, libc5, "
5147 "glibc 2.0 ではリエントラントではない。 glibc 2.1 ではリエントラントである。"
5148
5149 #. type: Plain text
5150 #: build/C/man3/putenv.3:99
5151 msgid ""
5152 "Description for libc4, libc5, glibc: If the argument I<string> is of the "
5153 "form I<name>, and does not contain an \\(aq=\\(aq character, then the "
5154 "variable I<name> is removed from the environment.  If B<putenv>()  has to "
5155 "allocate a new array I<environ>, and the previous array was also allocated "
5156 "by B<putenv>(), then it will be freed.  In no case will the old storage "
5157 "associated to the environment variable itself be freed."
5158 msgstr ""
5159 "libc4, libc5, glibc に関する説明: もし引数 I<string> が I<name> 単独で、 "
5160 "\\(aq=\\(aq 文字を含んでいない場合、環境変数 I<name> は環境から除去される。 "
5161 "もし B<putenv>()  が新しい I<environ> 配列を確保しなければならない時、 以前"
5162 "の I<environ> 配列も B<putenv>()  によって確保されたものならば、 それは解放さ"
5163 "れる。 環境変数そのものに割り当てられた古い記憶領域が解放されることはない。"
5164
5165 #. type: Plain text
5166 #: build/C/man3/putenv.3:115
5167 msgid ""
5168 "The libc4 and libc5 and glibc 2.1.2 versions conform to SUSv2: the pointer "
5169 "I<string> given to B<putenv>()  is used.  In particular, this string becomes "
5170 "part of the environment; changing it later will change the environment.  "
5171 "(Thus, it is an error is to call B<putenv>()  with an automatic variable as "
5172 "the argument, then return from the calling function while I<string> is still "
5173 "part of the environment.)  However, glibc 2.0-2.1.1 differs: a copy of the "
5174 "string is used.  On the one hand this causes a memory leak, and on the other "
5175 "hand it violates SUSv2.  This has been fixed in glibc 2.1.2."
5176 msgstr ""
5177 "libc4 と libc5 と glibc 2.1.2 では SUSv2 に準拠している。 B<putenv>()  で与え"
5178 "られたポインタ I<string> が使われる。 この文字列は環境の一部となり、後で変更"
5179 "すると環境も変わる。 (従って、 B<putenv>()  を自動変数を引数として呼び出し、 "
5180 "I<string>が環境の一部のままで呼び出した関数から return するとエラーになる)  "
5181 "しかし、glibc 2.0-2.1.1 では異なり、文字列のコピーが使われる。 これはメモリ"
5182 "リークを引き起こすだけでなく、 SUSv2 に違反している。 これは glibc2.1.2 で修"
5183 "正された。"
5184
5185 #. type: Plain text
5186 #: build/C/man3/putenv.3:117
5187 msgid "The 4.4BSD version, like glibc 2.0, uses a copy."
5188 msgstr "4.4BSD バージョンでは、glibc 2.0 と同様にコピーを使う。"
5189
5190 #. type: Plain text
5191 #: build/C/man3/putenv.3:119
5192 msgid "SUSv2 removes the I<const> from the prototype, and so does glibc 2.1.3."
5193 msgstr ""
5194 "SUSv2 ではプロトタイプから I<const> が取り除かれており、 glibc 2.1.3 もそのよ"
5195 "うになっている。"
5196
5197 #. type: Plain text
5198 #: build/C/man3/putenv.3:125
5199 msgid ""
5200 "B<clearenv>(3), B<getenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
5201 msgstr ""
5202 "B<clearenv>(3), B<getenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
5203
5204 #. type: TH
5205 #: build/C/man3/qecvt.3:28
5206 #, no-wrap
5207 msgid "QECVT"
5208 msgstr "QECVT"
5209
5210 #. type: TH
5211 #: build/C/man3/qecvt.3:28
5212 #, no-wrap
5213 msgid "2014-03-11"
5214 msgstr "2014-03-11"
5215
5216 #. type: Plain text
5217 #: build/C/man3/qecvt.3:31
5218 msgid "qecvt, qfcvt, qgcvt - convert a floating-point number to a string"
5219 msgstr "qecvt, qfcvt, qgcvt - 浮動小数点数の文字列への変換"
5220
5221 #. type: Plain text
5222 #: build/C/man3/qecvt.3:36
5223 msgid ""
5224 "B<char *qecvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
5225 "> B<int *>I<sign>B<);>"
5226 msgstr ""
5227 "B<char *qecvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
5228 "> B<int *>I<sign>B<);>"
5229
5230 #. type: Plain text
5231 #: build/C/man3/qecvt.3:39
5232 msgid ""
5233 "B<char *qfcvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
5234 "> B<int *>I<sign>B<);>"
5235 msgstr ""
5236 "B<char *qfcvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
5237 "> B<int *>I<sign>B<);>"
5238
5239 #. type: Plain text
5240 #: build/C/man3/qecvt.3:41
5241 msgid ""
5242 "B<char *qgcvt(long double >I<number>B<, int >I<ndigit>B<, char *>I<buf>B<);>"
5243 msgstr ""
5244 "B<char *qgcvt(long double >I<number>B<, int >I<ndigit>B<, char *>I<buf>B<);>"
5245
5246 #. type: Plain text
5247 #: build/C/man3/qecvt.3:52
5248 msgid "B<qecvt>(), B<qfcvt>(), B<qgcvt>(): _SVID_SOURCE"
5249 msgstr "B<qecvt>(), B<qfcvt>(), B<qgcvt>(): _SVID_SOURCE"
5250
5251 #. type: Plain text
5252 #: build/C/man3/qecvt.3:85
5253 msgid ""
5254 "The functions B<qecvt>(), B<qfcvt>()  and B<qgcvt>()  are identical to "
5255 "B<ecvt>(3), B<fcvt>(3)  and B<gcvt>(3)  respectively, except that they use a "
5256 "I<long double> argument I<number>.  See B<ecvt>(3)  and B<gcvt>(3)."
5257 msgstr ""
5258 "関数 B<qecvt>(), B<qfcvt>(), B<qgcvt>()  は、それぞれ B<ecvt>(3), B<fcvt>"
5259 "(3), B<gcvt>(3)  と同じである。 引き数 I<number> が I<long double> 型である点"
5260 "だけが異なる。"
5261
5262 #. type: Plain text
5263 #: build/C/man3/qecvt.3:92
5264 msgid "The B<qecvt>()  and B<qfcvt>()  functions are not thread-safe."
5265 msgstr "関数 B<qecvt>() と B<qfcvt>() はスレッドセーフではない。"
5266
5267 #. type: Plain text
5268 #: build/C/man3/qecvt.3:96
5269 msgid "The B<qgcvt>()  function is thread-safe."
5270 msgstr "関数 B<qgcvt>() はスレッドセーフである。"
5271
5272 #. type: Plain text
5273 #: build/C/man3/qecvt.3:102
5274 msgid ""
5275 "SVr4.  Not seen in most common UNIX implementations, but occurs in SunOS.  "
5276 "Not supported by libc4 and libc5.  Supported by glibc."
5277 msgstr ""
5278 "SVr4.  多くの一般的な UNIX には実装されていないが、SunOS には実装されてい"
5279 "る。 libc4 と libc5 ではサポートされていないが、 glibc ではサポートされてい"
5280 "る。"
5281
5282 #. type: Plain text
5283 #: build/C/man3/qecvt.3:107
5284 msgid "These functions are obsolete.  Instead, B<snprintf>(3)  is recommended."
5285 msgstr "これらの関数は廃止された。代わりに B<snprintf>(3) の使用を推奨する。"
5286
5287 #. type: Plain text
5288 #: build/C/man3/qecvt.3:112
5289 msgid "B<ecvt>(3), B<ecvt_r>(3), B<gcvt>(3), B<sprintf>(3)"
5290 msgstr "B<ecvt>(3), B<ecvt_r>(3), B<gcvt>(3), B<sprintf>(3)"
5291
5292 #. type: TH
5293 #: build/C/man3/rand.3:41
5294 #, no-wrap
5295 msgid "RAND"
5296 msgstr "RAND"
5297
5298 #. type: TH
5299 #: build/C/man3/rand.3:41
5300 #, no-wrap
5301 msgid "2014-01-18"
5302 msgstr "2014-01-18"
5303
5304 #. type: Plain text
5305 #: build/C/man3/rand.3:44
5306 msgid "rand, rand_r, srand - pseudo-random number generator"
5307 msgstr "rand, srand - 乱数を生成する関数"
5308
5309 #. type: Plain text
5310 #: build/C/man3/rand.3:49
5311 #, no-wrap
5312 msgid "B<int rand(void);>\n"
5313 msgstr "B<int rand(void);>\n"
5314
5315 #. type: Plain text
5316 #: build/C/man3/rand.3:51
5317 #, no-wrap
5318 msgid "B<int rand_r(unsigned int *>I<seedp>B<);>\n"
5319 msgstr "B<int rand_r(unsigned int *>I<seedp>B<);>\n"
5320
5321 #. type: Plain text
5322 #: build/C/man3/rand.3:53
5323 #, no-wrap
5324 msgid "B<void srand(unsigned int >I<seed>B<);>\n"
5325 msgstr "B<void srand(unsigned int >I<seed>B<);>\n"
5326
5327 #. type: Plain text
5328 #: build/C/man3/rand.3:62
5329 msgid ""
5330 "B<rand_r>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
5331 msgstr ""
5332 "B<rand_r>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
5333
5334 #. type: Plain text
5335 #: build/C/man3/rand.3:68
5336 msgid ""
5337 "The B<rand>()  function returns a pseudo-random integer in the range 0 to "
5338 "B<RAND_MAX> inclusive (i.e., the mathematical range [0,\\ B<RAND_MAX>])."
5339 msgstr ""
5340 "B<rand>() 関数は 0 以上 B<RAND_MAX> 以下\n"
5341 "(数学的に書くと [0,\\ B<RAND_MAX>]) の範囲の疑似乱数整数を返す。"
5342
5343 #. type: Plain text
5344 #: build/C/man3/rand.3:77
5345 msgid ""
5346 "The B<srand>()  function sets its argument as the seed for a new sequence of "
5347 "pseudo-random integers to be returned by B<rand>().  These sequences are "
5348 "repeatable by calling B<srand>()  with the same seed value."
5349 msgstr ""
5350 "B<srand>()  関数は、 B<rand>()  関数で作られる疑似乱数整数系列の新しい種とし"
5351 "て、 その引き数の値を使用する。 これらの関数を使用して作られた疑似乱数系列"
5352 "は、 同じ値を引き数として B<srand>()  を呼ぶことで、 再現することが可能であ"
5353 "る。"
5354
5355 #. type: Plain text
5356 #: build/C/man3/rand.3:81
5357 msgid ""
5358 "If no seed value is provided, the B<rand>()  function is automatically "
5359 "seeded with a value of 1."
5360 msgstr ""
5361 "種の値が与えられない場合には、 B<rand>()  関数は 自動的に 1 を種とする。"
5362
5363 #. type: Plain text
5364 #: build/C/man3/rand.3:92
5365 msgid ""
5366 "The function B<rand>()  is not reentrant or thread-safe, since it uses "
5367 "hidden state that is modified on each call.  This might just be the seed "
5368 "value to be used by the next call, or it might be something more elaborate.  "
5369 "In order to get reproducible behavior in a threaded application, this state "
5370 "must be made explicit; this can be done using the reentrant function "
5371 "B<rand_r>()."
5372 msgstr ""
5373 "B<rand>() 関数は再入可能 (reentrant) ではない、つまりスレッド・セーフではな"
5374 "い。\n"
5375 "この関数には隠し状態があり、呼び出される度にこの隠し状態が変更されるからであ"
5376 "る。\n"
5377 "ちょうどこの隠し状態が次の呼び出し時の乱数の種として使われるようなものであ"
5378 "る。\n"
5379 "実際にはもう少し複雑かもしれないが。\n"
5380 "スレッドを使用するアプリケーションで再現可能な動作をさせたい場合には、\n"
5381 "この状態を明示的に指定できなければならない。これを行うには、\n"
5382 "再入可能な B<rand_r>() 関数を使用する。"
5383
5384 #. type: Plain text
5385 #: build/C/man3/rand.3:108
5386 msgid ""
5387 "Like B<rand>(), B<rand_r>()  returns a pseudo-random integer in the range [0,"
5388 "\\ B<RAND_MAX>].  The I<seedp> argument is a pointer to an I<unsigned int> "
5389 "that is used to store state between calls.  If B<rand_r>()  is called with "
5390 "the same initial value for the integer pointed to by I<seedp>, and that "
5391 "value is not modified between calls, then the same pseudo-random sequence "
5392 "will result."
5393 msgstr ""
5394 "B<rand>() と同様、 B<rand_r>() は [0,\\ B<RAND_MAX>] の範囲の疑似乱数整数を返"
5395 "す。\n"
5396 "I<seedp> 引き数は、B<rand_r>() の呼び出し間で状態を保持するために使用される\n"
5397 "I<unsigned int> へのポインタである。\n"
5398 "I<seedp> が指す整数に同じ初期値を B<rand_r>() を呼び出し、\n"
5399 "呼び出し間でその値が変更されなければ、同じ疑似乱数系列が得られる。"
5400
5401 #. type: Plain text
5402 #: build/C/man3/rand.3:118
5403 msgid ""
5404 "The value pointed to by the I<seedp> argument of B<rand_r>()  provides only "
5405 "a very small amount of state, so this function will be a weak pseudo-random "
5406 "generator.  Try B<drand48_r>(3)  instead."
5407 msgstr ""
5408 "B<rand_r>() の I<seedp> 引き数が指す値により提供される状態は非常に小さな空"
5409 "間\n"
5410 "なので、この関数は弱い疑似乱数生成器になってしまう。\n"
5411 "代わりに B<drand48_r>(3) を使ってみるとよい。"
5412
5413 #. type: Plain text
5414 #: build/C/man3/rand.3:129
5415 msgid ""
5416 "The B<rand>()  and B<rand_r>()  functions return a value between 0 and "
5417 "B<RAND_MAX> (inclusive).  The B<srand>()  function returns no value."
5418 msgstr ""
5419 "関数 B<rand>() と B<rand_r>() は 0 以上 B<RAND_MAX> 以下の数を返す。\n"
5420 "関数 B<srand>() は値を返さない。"
5421
5422 #. type: Plain text
5423 #: build/C/man3/rand.3:141
5424 msgid ""
5425 "The functions B<rand>()  and B<srand>()  conform to SVr4, 4.3BSD, C89, C99, "
5426 "POSIX.1-2001.  The function B<rand_r>()  is from POSIX.1-2001.  POSIX.1-2008 "
5427 "marks B<rand_r>()  as obsolete."
5428 msgstr ""
5429 "関数 B<rand>()  と B<srand>()  は SVr4, 4.3BSD, C89, C99, POSIX.1-2001 に準拠"
5430 "している。 関数 B<rand_r>()  は POSIX.1-2001 に由来する。 POSIX.1-2008 は、 "
5431 "B<rand_r>()  を廃止予定としている。"
5432
5433 #. type: Plain text
5434 #: build/C/man3/rand.3:160
5435 msgid ""
5436 "The versions of B<rand>()  and B<srand>()  in the Linux C Library use the "
5437 "same random number generator as B<random>(3)  and B<srandom>(3), so the "
5438 "lower-order bits should be as random as the higher-order bits.  However, on "
5439 "older B<rand>()  implementations, and on current implementations on "
5440 "different systems, the lower-order bits are much less random than the higher-"
5441 "order bits.  Do not use this function in applications intended to be "
5442 "portable when good randomness is needed.  (Use B<random>(3)  instead.)"
5443 msgstr ""
5444 "B<rand>()  と B<srand>()  の Linux C Library 版は、 B<random>(3)  と "
5445 "B<srandom>(3)  の両関数と同じ乱数生成 アルゴリズムを使用している。そのため、"
5446 "下位のビットは上位のビットと 同じくらいにランダムである。 しかし、旧版の "
5447 "B<rand>()  の実装や、他のシステムの現在の実装では、下位のビットが上位のビット"
5448 "ほど ランダムになっていない。移植性を高める場合でも、精度の高い乱数が必要な "
5449 "アプリケーションではこの関数は使用してはいけない (代わりに B<random>(3)  を使"
5450 "うこと)。"
5451
5452 #. type: Plain text
5453 #: build/C/man3/rand.3:166
5454 msgid ""
5455 "POSIX.1-2001 gives the following example of an implementation of B<rand>()  "
5456 "and B<srand>(), possibly useful when one needs the same sequence on two "
5457 "different machines."
5458 msgstr ""
5459 "POSIX 1003.1-2003 では、 B<rand>()  と B<srand>()  の実装例として以下を挙げて"
5460 "いる。これは、異なる2つのマシンで同じ乱数系列が 必要な場合には便利であろう。"
5461
5462 #. type: Plain text
5463 #: build/C/man3/rand.3:170
5464 #, no-wrap
5465 msgid "static unsigned long next = 1;\n"
5466 msgstr "static unsigned long next = 1;\n"
5467
5468 #. type: Plain text
5469 #: build/C/man3/rand.3:176
5470 #, no-wrap
5471 msgid ""
5472 "/* RAND_MAX assumed to be 32767 */\n"
5473 "int myrand(void) {\n"
5474 "    next = next * 1103515245 + 12345;\n"
5475 "    return((unsigned)(next/65536) % 32768);\n"
5476 "}\n"
5477 msgstr ""
5478 "/* RAND_MAX を 32767 と仮定 */\n"
5479 "int myrand(void) {\n"
5480 "    next = next * 1103515245 + 12345;\n"
5481 "    return((unsigned)(next/65536) % 32768);\n"
5482 "}\n"
5483
5484 #. type: Plain text
5485 #: build/C/man3/rand.3:180
5486 #, no-wrap
5487 msgid ""
5488 "void mysrand(unsigned int seed) {\n"
5489 "    next = seed;\n"
5490 "}\n"
5491 msgstr ""
5492 "void mysrand(unsigned int seed) {\n"
5493 "    next = seed;\n"
5494 "}\n"
5495
5496 #. type: Plain text
5497 #: build/C/man3/rand.3:187
5498 msgid ""
5499 "The following program can be used to display the pseudo-random sequence "
5500 "produced by B<rand>()  when given a particular seed."
5501 msgstr ""
5502 "以下のプログラムを使うと、特定の乱数の種が与えられた場合に\n"
5503 "B<rand>() が生成する疑似乱数系列を表示することができる。"
5504
5505 #. type: Plain text
5506 #: build/C/man3/rand.3:192
5507 #, no-wrap
5508 msgid ""
5509 "#include E<lt>stdlib.hE<gt>\n"
5510 "#include E<lt>stdio.hE<gt>\n"
5511 msgstr ""
5512 "#include E<lt>stdlib.hE<gt>\n"
5513 "#include E<lt>stdio.hE<gt>\n"
5514
5515 #. type: Plain text
5516 #: build/C/man3/rand.3:198
5517 #, no-wrap
5518 msgid ""
5519 "int\n"
5520 "main(int argc, char *argv[])\n"
5521 "{\n"
5522 "    int j, r, nloops;\n"
5523 "    unsigned int seed;\n"
5524 msgstr ""
5525 "int\n"
5526 "main(int argc, char *argv[])\n"
5527 "{\n"
5528 "    int j, r, nloops;\n"
5529 "    unsigned int seed;\n"
5530
5531 #. type: Plain text
5532 #: build/C/man3/rand.3:203
5533 #, no-wrap
5534 msgid ""
5535 "    if (argc != 3) {\n"
5536 "        fprintf(stderr, \"Usage: %s E<lt>seedE<gt> E<lt>nloopsE<gt>\\en\", argv[0]);\n"
5537 "        exit(EXIT_FAILURE);\n"
5538 "    }\n"
5539 msgstr ""
5540 "    if (argc != 3) {\n"
5541 "        fprintf(stderr, \"Usage: %s E<lt>seedE<gt> E<lt>nloopsE<gt>\\en\", argv[0]);\n"
5542 "        exit(EXIT_FAILURE);\n"
5543 "    }\n"
5544
5545 #. type: Plain text
5546 #: build/C/man3/rand.3:206
5547 #, no-wrap
5548 msgid ""
5549 "    seed = atoi(argv[1]);\n"
5550 "    nloops = atoi(argv[2]);\n"
5551 msgstr ""
5552 "    seed = atoi(argv[1]);\n"
5553 "    nloops = atoi(argv[2]);\n"
5554
5555 #. type: Plain text
5556 #: build/C/man3/rand.3:212
5557 #, no-wrap
5558 msgid ""
5559 "    srand(seed);\n"
5560 "    for (j = 0; j E<lt> nloops; j++) {\n"
5561 "        r =  rand();\n"
5562 "        printf(\"%d\\en\", r);\n"
5563 "    }\n"
5564 msgstr ""
5565 "    srand(seed);\n"
5566 "    for (j = 0; j E<lt> nloops; j++) {\n"
5567 "        r =  rand();\n"
5568 "        printf(\"%d\\en\", r);\n"
5569 "    }\n"
5570
5571 #. type: Plain text
5572 #: build/C/man3/rand.3:220
5573 msgid "B<drand48>(3), B<random>(3)"
5574 msgstr "B<drand48>(3), B<random>(3)"
5575
5576 #. type: TH
5577 #: build/C/man3/random.3:33
5578 #, no-wrap
5579 msgid "RANDOM"
5580 msgstr "RANDOM"
5581
5582 #. type: Plain text
5583 #: build/C/man3/random.3:36
5584 msgid "random, srandom, initstate, setstate - random number generator"
5585 msgstr "random, srandom, initstate, setstate - 乱数を生成する関数"
5586
5587 #. type: Plain text
5588 #: build/C/man3/random.3:41
5589 #, no-wrap
5590 msgid "B<long int random(void);>\n"
5591 msgstr "B<long int random(void);>\n"
5592
5593 #. type: Plain text
5594 #: build/C/man3/random.3:43
5595 #, no-wrap
5596 msgid "B<void srandom(unsigned int >I<seed>B<);>\n"
5597 msgstr "B<void srandom(unsigned int >I<seed>B<);>\n"
5598
5599 #. type: Plain text
5600 #: build/C/man3/random.3:45
5601 #, no-wrap
5602 msgid "B<char *initstate(unsigned int >I<seed>B<, char *>I<state>B<, size_t >I<n>B<);>\n"
5603 msgstr "B<char *initstate(unsigned int >I<seed>B<, char *>I<state>B<, size_t >I<n>B<);>\n"
5604
5605 #. type: Plain text
5606 #: build/C/man3/random.3:47
5607 #, no-wrap
5608 msgid "B<char *setstate(char *>I<state>B<);>\n"
5609 msgstr "B<char *setstate(char *>I<state>B<);>\n"
5610
5611 #. type: Plain text
5612 #: build/C/man3/random.3:59
5613 msgid "B<random>(), B<srandom>(), B<initstate>(), B<setstate>():"
5614 msgstr "B<random>(), B<srandom>(), B<initstate>(), B<setstate>():"
5615
5616 #. type: Plain text
5617 #: build/C/man3/random.3:62
5618 msgid ""
5619 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
5620 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
5621 msgstr ""
5622 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
5623 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
5624
5625 #. type: Plain text
5626 #: build/C/man3/random.3:73
5627 msgid ""
5628 "The B<random>()  function uses a nonlinear additive feedback random number "
5629 "generator employing a default table of size 31 long integers to return "
5630 "successive pseudo-random numbers in the range from 0 to B<RAND_MAX>.  The "
5631 "period of this random number generator is very large, approximately I<16\\ *"
5632 "\\ ((2^31)\\ -\\ 1)>."
5633 msgstr ""
5634 "B<random>()  関数は、非線形加法フィードバックを用いた乱数生成関数である。 こ"
5635 "の関数は、0 から B<RAND_MAX> までの疑似乱数を返す。 そのために 31 個のロング"
5636 "整数からなるデフォルトの表を使用する。 この乱数を生成する関数の周期はとても長"
5637 "く、およそ I<16\\ *\\ ((2^31)\\ -\\ 1)> である。"
5638
5639 #. type: Plain text
5640 #: build/C/man3/random.3:87
5641 msgid ""
5642 "The B<srandom>()  function sets its argument as the seed for a new sequence "
5643 "of pseudo-random integers to be returned by B<random>().  These sequences "
5644 "are repeatable by calling B<srandom>()  with the same seed value.  If no "
5645 "seed value is provided, the B<random>()  function is automatically seeded "
5646 "with a value of 1."
5647 msgstr ""
5648 "B<srandom>()  関数は、 B<random>()  で返される疑似乱数整数系列の種を設定す"
5649 "る。 そのためには新しい種を引数にして B<srandom>()  を呼べばよい。 B<random>"
5650 "()  で生成される系列は、 引数に同じ種の値を用いて B<srandom>()  を呼ぶことで"
5651 "再現可能である。 種の値が与えられない場合には B<random>()  関数は、自動的に "
5652 "1 を種に設定する。"
5653
5654 #. type: Plain text
5655 #: build/C/man3/random.3:102
5656 msgid ""
5657 "The B<initstate>()  function allows a state array I<state> to be initialized "
5658 "for use by B<random>().  The size of the state array I<n> is used by "
5659 "B<initstate>()  to decide how sophisticated a random number generator it "
5660 "should use\\(emthe larger the state array, the better the random numbers "
5661 "will be.  I<seed> is the seed for the initialization, which specifies a "
5662 "starting point for the random number sequence, and provides for restarting "
5663 "at the same point."
5664 msgstr ""
5665 "B<initstate>()  関数は、 B<random>()  で使用される状態配列 I<state> を初期化"
5666 "する。 B<initstate>()  では、状態配列の大きさ I<n> は 使用する関数の乱数生成"
5667 "の性能の程度を決定するために使用される \\(em 状態配列が大きい程、乱数の性能は"
5668 "よくなる。 I<seed> は初期化のための種である。 これは乱数系列の開始位置を決定"
5669 "するものであり、 この値を指定することで同一の開始位置から乱数の生成を 再開す"
5670 "ることができる。"
5671
5672 #. type: Plain text
5673 #: build/C/man3/random.3:118
5674 msgid ""
5675 "The B<setstate>()  function changes the state array used by the B<random>()  "
5676 "function.  The state array I<state> is used for random number generation "
5677 "until the next call to B<initstate>()  or B<setstate>().  I<state> must "
5678 "first have been initialized using B<initstate>()  or be the result of a "
5679 "previous call of B<setstate>()."
5680 msgstr ""
5681 "B<setstate>()  関数は、 B<random>()  で使用される状態配列を変更する。 状態配"
5682 "列 I<state> は、 B<initstate>()  または B<setstate>()  が 次に呼び出されるま"
5683 "で、乱数の生成に使用される。 I<state> は B<initstate>()  を用いて最初に初期化"
5684 "されているか、 以前に呼び出した B<setstate>()  の結果でなければならない。"
5685
5686 #. type: Plain text
5687 #: build/C/man3/random.3:126
5688 msgid ""
5689 "The B<random>()  function returns a value between 0 and B<RAND_MAX>.  The "
5690 "B<srandom>()  function returns no value."
5691 msgstr ""
5692 "関数 B<random>() と B<rand_r>() は 0 以上 B<RAND_MAX> 以下の数を返す。\n"
5693 "関数 B<srandom>() は値を返さない。"
5694
5695 #. type: Plain text
5696 #: build/C/man3/random.3:133
5697 msgid ""
5698 "The B<initstate>()  function returns a pointer to the previous state array.  "
5699 "On error, I<errno> is set to indicate the cause."
5700 msgstr ""
5701 "関数 B<initstate>() は、変更前の状態配列へのポインタを返す。エラーの場合、 "
5702 "I<errno> に原因を示す値が設定される。"
5703
5704 #. type: Plain text
5705 #: build/C/man3/random.3:140
5706 msgid ""
5707 "On success, B<setstate>()  returns a pointer to the previous state array.  "
5708 "On error, it returns NULL, with I<errno> set to indicate the cause of the "
5709 "error."
5710 msgstr ""
5711 "関数 B<setstate>() は、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
5712 "I<errno> にエラーの原因を示す値が設定される。"
5713
5714 #. type: Plain text
5715 #: build/C/man3/random.3:148
5716 msgid "The I<state> argument given to B<setstate>()  was NULL."
5717 msgstr "B<setstate>() の引き数 I<state> が NULL であった。"
5718
5719 #. type: Plain text
5720 #: build/C/man3/random.3:152
5721 msgid "A state array of less than 8 bytes was specified to B<initstate>()."
5722 msgstr "B<initstate>()  で8バイトよりも小さい状態配列を指定した。"
5723
5724 #. type: Plain text
5725 #: build/C/man3/random.3:161
5726 msgid ""
5727 "The B<random>(), B<srandom>(), B<initstate>(), and B<setstate>()  functions "
5728 "are thread-safe."
5729 msgstr ""
5730 "関数 B<random>(), B<srandom>(), B<initstate>(), B<setstate>() はスレッドセー"
5731 "フである。"
5732
5733 #. type: Plain text
5734 #: build/C/man3/random.3:163 build/C/man3/setenv.3:130
5735 msgid "4.3BSD, POSIX.1-2001."
5736 msgstr "4.3BSD, POSIX.1-2001."
5737
5738 #. type: Plain text
5739 #: build/C/man3/random.3:169
5740 msgid ""
5741 "Current \"optimal\" values for the size of the state array I<n> are 8, 32, "
5742 "64, 128, and 256 bytes; other amounts will be rounded down to the nearest "
5743 "known amount.  Using less than 8 bytes will cause an error."
5744 msgstr ""
5745 "状態配列 I<n> の大きさの現在の「最適」値は 8、32、64、128、256 バイトであ"
5746 "る。 その他の量を指定した場合には、指定した量を越えない上述の値に 最も近い値"
5747 "になる。 8 バイト未満の量を指定した場合にはエラーの原因となる。"
5748
5749 #. type: Plain text
5750 #: build/C/man3/random.3:176
5751 msgid ""
5752 "This function should not be used in cases where multiple threads use "
5753 "B<random>()  and the behavior should be reproducible.  Use B<random_r>(3)  "
5754 "for that purpose."
5755 msgstr ""
5756 "複数のスレッドが B<random>()  を使うような状況では、この関数を使用すべきでは"
5757 "ない。 その場合には B<random_r>(3)  を使うこと。"
5758
5759 #. type: Plain text
5760 #: build/C/man3/random.3:183
5761 msgid ""
5762 "Random-number generation is a complex topic.  I<Numerical Recipes in C: The "
5763 "Art of Scientific Computing> (William H. Press, Brian P. Flannery, Saul A. "
5764 "Teukolsky, William T. Vetterling; New York: Cambridge University Press, "
5765 "2007, 3rd ed.)  provides an excellent discussion of practical random-number "
5766 "generation issues in Chapter 7 (Random Numbers)."
5767 msgstr ""
5768 "乱数の生成は複雑な話題である。 I<Numerical Recipes in C: The Art of "
5769 "Scientific Computing> (William H. Press, Brian P. Flannery, Saul A. "
5770 "Teukolsky, William T. Vetterling; New York: Cambridge University Press, "
5771 "2007, 3rd ed.)  では実用的な乱数生成を論点とした優れた議論が第 7 章 (乱数) で"
5772 "展開されている。"
5773
5774 #. type: Plain text
5775 #: build/C/man3/random.3:189
5776 msgid ""
5777 "For a more theoretical discussion which also covers many practical issues in "
5778 "depth, see Chapter 3 (Random Numbers) in Donald E. Knuth's I<The Art of "
5779 "Computer Programming>, volume 2 (Seminumerical Algorithms), 2nd ed.; "
5780 "Reading, Massachusetts: Addison-Wesley Publishing Company, 1981."
5781 msgstr ""
5782 "より理論的な議論については Donald E. Knuth の I<The Art of Computer "
5783 "Programming>, volume 2 (Seminumerical Algorithms), 2nd ed.; Reading, "
5784 "Massachusetts: Addison-Wesley Publishing Company, 1981 の第 3 章 (乱数) を見"
5785 "よ。ここでは、 たくさんの実用的な話題についても深く網羅されている。"
5786
5787 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=15380
5788 #. type: Plain text
5789 #: build/C/man3/random.3:197
5790 msgid ""
5791 "According to POSIX, B<initstate>()  should return NULL on error.  In the "
5792 "glibc implementation, I<errno> is (as specified) set on error, but the "
5793 "function does not return NULL."
5794 msgstr ""
5795 "POSIX では、エラー時に B<initstate>() は NULL を返すべきとされている。 glibc "
5796 "の実装では、エラー時に I<errno> は仕様通りに設定されるが、関数の返り値は "
5797 "NULL ではない。"
5798
5799 #. type: Plain text
5800 #: build/C/man3/random.3:202
5801 msgid "B<drand48>(3), B<rand>(3), B<random_r>(3), B<srand>(3)"
5802 msgstr "B<drand48>(3), B<rand>(3), B<random_r>(3), B<srand>(3)"
5803
5804 #. type: TH
5805 #: build/C/man3/random_r.3:26
5806 #, no-wrap
5807 msgid "RANDOM_R"
5808 msgstr "RANDOM_R"
5809
5810 #. type: Plain text
5811 #: build/C/man3/random_r.3:30
5812 msgid ""
5813 "random_r, srandom_r, initstate_r, setstate_r - reentrant random number "
5814 "generator"
5815 msgstr ""
5816 "random_r, srandom_r, initstate_r, setstate_r - リエントラントな 乱数生成器"
5817
5818 #. type: Plain text
5819 #: build/C/man3/random_r.3:35
5820 #, no-wrap
5821 msgid "B<int random_r(struct random_data *>I<buf>B<, int32_t *>I<result>B<);>\n"
5822 msgstr "B<int random_r(struct random_data *>I<buf>B<, int32_t *>I<result>B<);>\n"
5823
5824 #. type: Plain text
5825 #: build/C/man3/random_r.3:37
5826 #, no-wrap
5827 msgid "B<int srandom_r(unsigned int >I<seed>B<, struct random_data *>I<buf>B<);>\n"
5828 msgstr "B<int srandom_r(unsigned int >I<seed>B<, struct random_data *>I<buf>B<);>\n"
5829
5830 #. type: Plain text
5831 #: build/C/man3/random_r.3:40
5832 #, no-wrap
5833 msgid ""
5834 "B<int initstate_r(unsigned int >I<seed>B<, char *>I<statebuf>B<,>\n"
5835 "B<                size_t >I<statelen>B<, struct random_data *>I<buf>B<);>\n"
5836 msgstr ""
5837 "B<int initstate_r(unsigned int >I<seed>B<, char *>I<statebuf>B<,>\n"
5838 "B<                size_t >I<statelen>B<, struct random_data *>I<buf>B<);>\n"
5839
5840 #. type: Plain text
5841 #: build/C/man3/random_r.3:42
5842 #, no-wrap
5843 msgid "B<int setstate_r(char *>I<statebuf>B<, struct random_data *>I<buf>B<);>\n"
5844 msgstr "B<int setstate_r(char *>I<statebuf>B<, struct random_data *>I<buf>B<);>\n"
5845
5846 #. type: Plain text
5847 #: build/C/man3/random_r.3:54
5848 msgid "B<random_r>(), B<srandom_r>(), B<initstate_r>(), B<setstate_r>():"
5849 msgstr "B<random_r>(), B<srandom_r>(), B<initstate_r>(), B<setstate_r>():"
5850
5851 #. type: Plain text
5852 #: build/C/man3/random_r.3:56
5853 msgid "_SVID_SOURCE || _BSD_SOURCE"
5854 msgstr "_SVID_SOURCE || _BSD_SOURCE"
5855
5856 #. type: Plain text
5857 #: build/C/man3/random_r.3:64
5858 msgid ""
5859 "These functions are the reentrant equivalents of the functions described in "
5860 "B<random>(3).  They are suitable for use in multithreaded programs where "
5861 "each thread needs to obtain an independent, reproducible sequence of random "
5862 "numbers."
5863 msgstr ""
5864 "これらの関数は、 B<random>(3)  で説明されている関数のリエントラント版で、等価"
5865 "な機能を持つ。 これらは、独立した再現可能な乱数列を各スレッドが得る必要がある"
5866 "ような マルチスレッド・プログラムでの使用に適している。"
5867
5868 #. type: Plain text
5869 #: build/C/man3/random_r.3:75
5870 msgid ""
5871 "The B<random_r>()  function is like B<random>(3), except that instead of "
5872 "using state information maintained in a global variable, it uses the state "
5873 "information in the argument pointed to by I<buf>.  The generated random "
5874 "number is returned in the argument I<result>."
5875 msgstr ""
5876 "B<random_r>()  関数は B<random>(3)  と同様だが、 大域変数 (global variable) "
5877 "で管理される状態情報を使うのではなく、 I<buf> が指す引き数に格納された状態情"
5878 "報を使う。 生成された乱数は引き数 I<result> に格納されて返される。"
5879
5880 #. type: Plain text
5881 #: build/C/man3/random_r.3:84
5882 msgid ""
5883 "The B<srandom_r>()  function is like B<srandom>(3), except that it "
5884 "initializes the seed for the random number generator whose state is "
5885 "maintained in the object pointed to by I<buf>, instead of the seed "
5886 "associated with the global state variable."
5887 msgstr ""
5888 "B<srandom_r>()  関数は B<srandom>(3)  と同様だが、 大域変数で管理される状態に"
5889 "対応する乱数生成器の種ではなく、 I<buf> が指すオブジェクトで管理される状態に"
5890 "対応する乱数生成器の種を 初期化する。"
5891
5892 #. type: Plain text
5893 #: build/C/man3/random_r.3:92
5894 msgid ""
5895 "The B<initstate_r>()  function is like B<initstate>(3)  except that it "
5896 "initializes the state in the object pointed to by I<buf>, rather than "
5897 "initializing the global state variable."
5898 msgstr ""
5899 "B<initstate_r>()  関数は B<initstate>(3)  と同様だが、大域変数で管理される状"
5900 "態を初期化するのではなく、 I<buf> が指すオブジェクト内の状態を初期化する。"
5901
5902 #. type: Plain text
5903 #: build/C/man3/random_r.3:100
5904 msgid ""
5905 "The B<setstate_r>()  function is like B<setstate>(3)  except that it "
5906 "modifies the state in the object pointer to by I<buf>, rather than modifying "
5907 "the global state variable."
5908 msgstr ""
5909 "B<setstate_r>()  関数は B<setstate>(3)  と同様だが、大域変数で管理される状態"
5910 "を変更するのではなく、 I<buf> が指すオブジェクト内の状態を変更する。"
5911
5912 #. type: Plain text
5913 #: build/C/man3/random_r.3:105
5914 msgid ""
5915 "All of these functions return 0 on success.  On error, -1 is returned, with "
5916 "I<errno> set to indicate the cause of the error."
5917 msgstr ""
5918 "これらの関数はすべて、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
5919 "I<errno> にエラーの原因を示す値がセットされる。"
5920
5921 #. type: Plain text
5922 #: build/C/man3/random_r.3:110
5923 msgid "A state array of less than 8 bytes was specified to B<initstate_r>()."
5924 msgstr "8 バイトより小さい状態配列が B<initstate_r>()  に指定された。"
5925
5926 #. type: Plain text
5927 #: build/C/man3/random_r.3:119
5928 msgid "The I<statebuf> or I<buf> argument to B<setstate_r>()  was NULL."
5929 msgstr "B<setstate_r>()  の引き数 I<statebuf> か I<buf> が NULL であった。"
5930
5931 #. type: Plain text
5932 #: build/C/man3/random_r.3:128
5933 msgid "The I<buf> or I<result> argument to B<random_r>()  was NULL."
5934 msgstr "B<random_r>()  の引き数 I<buf> か I<result> が NULL であった。"
5935
5936 #. type: Plain text
5937 #: build/C/man3/random_r.3:137
5938 msgid ""
5939 "The B<random_r>(), B<srandom_r>(), B<initstate_r>(), and B<setstate_r>()  "
5940 "functions are thread-safe."
5941 msgstr ""
5942 "関数 B<random_r>(), B<srandom_r>(), B<initstate_r>(), B<setstate_r>() はス"
5943 "レッドセーフである。"
5944
5945 #.  These functions appear to be on Tru64, but don't seem to be on
5946 #.  Solaris, HP-UX, or FreeBSD.
5947 #. type: Plain text
5948 #: build/C/man3/random_r.3:141
5949 msgid "These functions are nonstandard glibc extensions."
5950 msgstr "これらの関数は非標準で glibc による拡張である。"
5951
5952 #. type: TH
5953 #: build/C/man3/rpmatch.3:29
5954 #, no-wrap
5955 msgid "RPMATCH"
5956 msgstr "RPMATCH"
5957
5958 #. type: Plain text
5959 #: build/C/man3/rpmatch.3:32
5960 msgid ""
5961 "rpmatch - determine if the answer to a question is affirmative or negative"
5962 msgstr "rpmatch - 質問への応答が肯定か否定かを判定する"
5963
5964 #. type: Plain text
5965 #: build/C/man3/rpmatch.3:37
5966 #, no-wrap
5967 msgid "B<int rpmatch(const char *>I<response>B<);>\n"
5968 msgstr "B<int rpmatch(const char *>I<response>B<);>\n"
5969
5970 #. type: Plain text
5971 #: build/C/man3/rpmatch.3:46
5972 msgid "B<rpmatch>(): _SVID_SOURCE"
5973 msgstr "B<rpmatch>(): _SVID_SOURCE"
5974
5975 #. type: Plain text
5976 #: build/C/man3/rpmatch.3:50
5977 msgid ""
5978 "B<rpmatch>()  handles a user response to yes or no questions, with support "
5979 "for internationalization."
5980 msgstr ""
5981 "B<rpmatch>()  は yes/no の質問に対するユーザからの応答を処理する。 国際化 "
5982 "(I18N) に対応している。"
5983
5984 #. type: Plain text
5985 #: build/C/man3/rpmatch.3:57
5986 msgid ""
5987 "I<response> should be a null-terminated string containing a user-supplied "
5988 "response, perhaps obtained with B<fgets>(3)  or B<getline>(3)."
5989 msgstr ""
5990 "I<response> にはユーザからの応答を格納した NULL 終端文字列が入っている必要が"
5991 "ある。 たいていは、 B<fgets>(3)  や B<getline>(3)  で取り込んだものであろう。"
5992
5993 #. type: Plain text
5994 #: build/C/man3/rpmatch.3:67
5995 msgid ""
5996 "The user's language preference is taken into account per the environment "
5997 "variables B<LANG>, B<LC_MESSAGES>, and B<LC_ALL>, if the program has called "
5998 "B<setlocale>(3)  to effect their changes."
5999 msgstr ""
6000 "プログラムが B<setlocale>(3)  を呼び出して環境変数の変更を有効にした場合、 環"
6001 "境変数 B<LANG>, B<LC_MESSAGES>, B<LC_ALL> が ユーザの言語設定として考慮され"
6002 "る。"
6003
6004 #. type: Plain text
6005 #: build/C/man3/rpmatch.3:73
6006 msgid ""
6007 "Regardless of the locale, responses matching B<^[Yy]> are always accepted as "
6008 "affirmative, and those matching B<^[Nn]> are always accepted as negative."
6009 msgstr ""
6010 "ロケールに関わらず、B<^[Yy]> にマッチする応答は常に肯定だと解釈され、 B<^[Nn]"
6011 "> にマッチする応答は常に否定だと解釈される。"
6012
6013 #. type: Plain text
6014 #: build/C/man3/rpmatch.3:82
6015 msgid ""
6016 "After examining I<response>, B<rpmatch>()  returns 0 for a recognized "
6017 "negative response (\"no\"), 1 for a recognized positive response (\"yes\"), "
6018 "and -1 when the value of I<response> is unrecognized."
6019 msgstr ""
6020 "I<response> を検査した後、 B<rpmatch>()  は否定的な応答 (\"no\") と認識した場"
6021 "合は 0 を返し、 肯定的な応答 (\"yes\") と認識した場合は 1 を返す。 "
6022 "I<response> の値を解釈できなかった場合は -1 を返す。"
6023
6024 #. type: Plain text
6025 #: build/C/man3/rpmatch.3:86
6026 msgid ""
6027 "A return value of -1 may indicate either an invalid input, or some other "
6028 "error.  It is incorrect to only test if the return value is nonzero."
6029 msgstr ""
6030 "返り値 -1 が返った場合、入力が不正であったか、他の何らかのエラーが あったこと"
6031 "を意味する。返り値が 0 以外かどうかを確認するだけでは 十分ではない。"
6032
6033 #. type: Plain text
6034 #: build/C/man3/rpmatch.3:99
6035 msgid ""
6036 "B<rpmatch>()  can fail for any of the reasons that B<regcomp>(3)  or "
6037 "B<regexec>(3)  can fail; the cause of the error is not available from "
6038 "I<errno> or anywhere else, but indicates a failure of the regex engine (but "
6039 "this case is indistinguishable from that of an unrecognized value of "
6040 "I<response>)."
6041 msgstr ""
6042 "B<rpmatch>()  は、 B<regcomp>(3)  や B<regexec>(3)  が失敗する理由のどれかで"
6043 "失敗することがある。 エラーの原因を I<errno> や他の何かで知ることはできない"
6044 "が、 I<errno> は正規表現エンジンの失敗の原因を示している (但し、このケースと "
6045 "I<response> の値を認識できずに失敗した場合を区別することはできない)。"
6046
6047 #.  It is available on at least AIX 5.1 and FreeBSD 6.0.
6048 #. type: Plain text
6049 #: build/C/man3/rpmatch.3:104
6050 msgid ""
6051 "B<rpmatch>()  is not required by any standard, but is available on a few "
6052 "other systems."
6053 msgstr ""
6054 "B<rpmatch>()  はどの標準でも必須となっていないが、 Linux 以外にも利用できるシ"
6055 "ステムもいくつかは存在する。"
6056
6057 #. type: Plain text
6058 #: build/C/man3/rpmatch.3:119
6059 msgid ""
6060 "The B<rpmatch>()  implementation looks at only the first character of "
6061 "I<response>.  As a consequence, \"nyes\" returns 0, and \"ynever; not in a "
6062 "million years\" returns 1.  It would be preferable to accept input strings "
6063 "much more strictly, for example (using the extended regular expression "
6064 "notation described in B<regex>(7)): B<^([yY]|yes|YES)$> and B<^([nN]|no|"
6065 "NO)$>."
6066 msgstr ""
6067 "B<rpmatch>()  の実装は I<response> の最初の 1 文字だけを見ているようである。"
6068 "その結果、 \"nyes\" は 0 を返し、 \"ynever; not in a million years\" は 1 を"
6069 "返すことになる。 入力文字列をもっと厳密に解釈した方がよいだろう。 例えば、 "
6070 "(B<regex>(7)  で説明されている拡張正規表現を使って)  B<^([yY]|yes|YES)$> や "
6071 "B<^([nN]|no|NO)$> で解釈するなど。"
6072
6073 #. type: Plain text
6074 #: build/C/man3/rpmatch.3:123
6075 msgid ""
6076 "The following program displays the results when B<rpmatch>()  is applied to "
6077 "the string given in the program's command-line argument."
6078 msgstr ""
6079 "以下のプログラムは、コマンドライン引き数で 指定された文字列を B<rpmatch>()  "
6080 "に渡した場合の結果を表示する。"
6081
6082 #. type: Plain text
6083 #: build/C/man3/rpmatch.3:130
6084 #, no-wrap
6085 msgid ""
6086 "#define _SVID_SOURCE\n"
6087 "#include E<lt>locale.hE<gt>\n"
6088 "#include E<lt>stdlib.hE<gt>\n"
6089 "#include E<lt>string.hE<gt>\n"
6090 "#include E<lt>stdio.hE<gt>\n"
6091 msgstr ""
6092 "#define _SVID_SOURCE\n"
6093 "#include E<lt>locale.hE<gt>\n"
6094 "#include E<lt>stdlib.hE<gt>\n"
6095 "#include E<lt>string.hE<gt>\n"
6096 "#include E<lt>stdio.hE<gt>\n"
6097
6098 #. type: Plain text
6099 #: build/C/man3/rpmatch.3:138
6100 #, no-wrap
6101 msgid ""
6102 "int\n"
6103 "main(int argc, char *argv[])\n"
6104 "{\n"
6105 "    if (argc != 2 || strcmp(argv[1], \"--help\") == 0) {\n"
6106 "        fprintf(stderr, \"%s response\\en\", argv[0]);\n"
6107 "        exit(EXIT_FAILURE);\n"
6108 "    }\n"
6109 msgstr ""
6110 "int\n"
6111 "main(int argc, char *argv[])\n"
6112 "{\n"
6113 "    if (argc != 2 || strcmp(argv[1], \"--help\") == 0) {\n"
6114 "        fprintf(stderr, \"%s response\\en\", argv[0]);\n"
6115 "        exit(EXIT_FAILURE);\n"
6116 "    }\n"
6117
6118 #. type: Plain text
6119 #: build/C/man3/rpmatch.3:143
6120 #, no-wrap
6121 msgid ""
6122 "    setlocale(LC_ALL, \"\");\n"
6123 "    printf(\"rpmatch() returns: %d\\en\", rpmatch(argv[1]));\n"
6124 "    exit(EXIT_SUCCESS);\n"
6125 "}\n"
6126 msgstr ""
6127 "    setlocale(LC_ALL, \"\");\n"
6128 "    printf(\"rpmatch() returns: %d\\en\", rpmatch(argv[1]));\n"
6129 "    exit(EXIT_SUCCESS);\n"
6130 "}\n"
6131
6132 #. type: Plain text
6133 #: build/C/man3/rpmatch.3:150
6134 msgid ""
6135 "B<fgets>(3), B<getline>(3), B<nl_langinfo>(3), B<regcomp>(3), B<setlocale>(3)"
6136 msgstr ""
6137 "B<fgets>(3), B<getline>(3), B<nl_langinfo>(3), B<regcomp>(3), B<setlocale>(3)"
6138
6139 #. type: TH
6140 #: build/C/man3/setenv.3:37
6141 #, no-wrap
6142 msgid "SETENV"
6143 msgstr "SETENV"
6144
6145 #. type: TH
6146 #: build/C/man3/setenv.3:37
6147 #, no-wrap
6148 msgid "2013-10-11"
6149 msgstr "2013-10-11"
6150
6151 #. type: Plain text
6152 #: build/C/man3/setenv.3:40
6153 msgid "setenv - change or add an environment variable"
6154 msgstr "setenv - 環境変数を変更または追加する"
6155
6156 #. type: Plain text
6157 #: build/C/man3/setenv.3:45
6158 #, no-wrap
6159 msgid "B<int setenv(const char *>I<name>B<, const char *>I<value>B<, int >I<overwrite>B<);>\n"
6160 msgstr "B<int setenv(const char *>I<name>B<, const char *>I<value>B<, int >I<overwrite>B<);>\n"
6161
6162 #. type: Plain text
6163 #: build/C/man3/setenv.3:47
6164 #, no-wrap
6165 msgid "B<int unsetenv(const char *>I<name>B<);>\n"
6166 msgstr "B<int unsetenv(const char *>I<name>B<);>\n"
6167
6168 #. type: Plain text
6169 #: build/C/man3/setenv.3:57
6170 msgid "B<setenv>(), B<unsetenv>():"
6171 msgstr "B<setenv>(), B<unsetenv>():"
6172
6173 #. type: Plain text
6174 #: build/C/man3/setenv.3:59
6175 msgid ""
6176 "_BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>="
6177 "\\ 600"
6178 msgstr ""
6179 "_BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>="
6180 "\\ 600"
6181
6182 #. type: Plain text
6183 #: build/C/man3/setenv.3:94
6184 msgid ""
6185 "The B<setenv>()  function adds the variable I<name> to the environment with "
6186 "the value I<value>, if I<name> does not already exist.  If I<name> does "
6187 "exist in the environment, then its value is changed to I<value> if "
6188 "I<overwrite> is nonzero; if I<overwrite> is zero, then the value of I<name> "
6189 "is not changed (and B<setenv>()  returns a success status).  This function "
6190 "makes copies of the strings pointed to by I<name> and I<value> (by contrast "
6191 "with B<putenv>(3))."
6192 msgstr ""
6193 "B<setenv>()  関数は、I<name> が存在しない場合 環境変数 I<name> に値 I<value> "
6194 "を設定し、環境に追加する。 I<name> が環境に存在する場合、I<overwrite> が 0 以"
6195 "外ならば その値を I<value> に変更し、I<overwrite> が 0 ならば I<name> の値を"
6196 "変更しない (B<setenv>() は成功のステータスを返す)。 この関数は、 (B<putenv>"
6197 "(3)  と違い)  I<name> と I<value> により参照される文字列のコピーを行う。"
6198
6199 #. type: Plain text
6200 #: build/C/man3/setenv.3:105
6201 msgid ""
6202 "The B<unsetenv>()  function deletes the variable I<name> from the "
6203 "environment.  If I<name> does not exist in the environment, then the "
6204 "function succeeds, and the environment is unchanged."
6205 msgstr ""
6206 "B<unsetenv>()  関数は、変数 I<name> を環境から削除する。 I<name> が環境にない"
6207 "場合、この関数は成功し、環境は変更されない。"
6208
6209 #. type: Plain text
6210 #: build/C/man3/setenv.3:112
6211 msgid ""
6212 "The B<setenv>()  function returns zero on success, or -1 on error, with "
6213 "I<errno> set to indicate the cause of the error."
6214 msgstr ""
6215 "B<setenv>()  関数は、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
6216 "I<errno> にエラーの原因を示す値がセットされる。"
6217
6218 #. type: Plain text
6219 #: build/C/man3/setenv.3:119
6220 msgid ""
6221 "The B<unsetenv>()  function returns zero on success, or -1 on error, with "
6222 "I<errno> set to indicate the cause of the error."
6223 msgstr ""
6224 "B<unsetenv>()  関数は、成功すると 0 を返す。 エラーの場合は -1 を返し、 "
6225 "I<errno> を設定してエラーの原因を示す。"
6226
6227 #. type: Plain text
6228 #: build/C/man3/setenv.3:125
6229 msgid ""
6230 "I<name> is NULL, points to a string of length 0, or contains an \\(aq=\\(aq "
6231 "character."
6232 msgstr ""
6233 "I<name> が NULL であるか、長さが 0 の文字列を指しているか、 \\(aq=\\(aq 文字"
6234 "が含まれている。"
6235
6236 #. type: Plain text
6237 #: build/C/man3/setenv.3:128
6238 msgid "Insufficient memory to add a new variable to the environment."
6239 msgstr "環境に新しい変数を追加するのに十分なメモリがない。"
6240
6241 #. type: Plain text
6242 #: build/C/man3/setenv.3:136
6243 msgid ""
6244 "POSIX.1-2001 does not require B<setenv>()  or B<unsetenv>()  to be reentrant."
6245 msgstr ""
6246 "POSIX.1-2001 は、 B<setenv>()  や B<unsetenv>()  がリエントラント (再入可能) "
6247 "であることを要求していない。"
6248
6249 #. type: Plain text
6250 #: build/C/man3/setenv.3:144
6251 msgid ""
6252 "Prior to glibc 2.2.2, B<unsetenv>()  was prototyped as returning I<void>; "
6253 "more recent glibc versions follow the POSIX.1-2001-compliant prototype shown "
6254 "in the SYNOPSIS."
6255 msgstr ""
6256 "glibc 2.2.2 以前では、 B<unsetenv>()  は 返り値が I<void> のプロトタイプで"
6257 "あった。 もっと最近の glibc 版は、「書式」セクションで示しているように "
6258 "POSIX.1-2001 互換のプロトタイプである。"
6259
6260 #. type: Plain text
6261 #: build/C/man3/setenv.3:153
6262 msgid ""
6263 "POSIX.1-2001 specifies that if I<name> contains an \\(aq=\\(aq character, "
6264 "then B<setenv>()  should fail with the error B<EINVAL>; however, versions of "
6265 "glibc before 2.3.4 allowed an \\(aq=\\(aq sign in I<name>."
6266 msgstr ""
6267 "POSIX.1-2001 では 「I<name> に \\(aq=\\(aq 文字が含まれる場合、 B<setenv>()  "
6268 "はエラー B<EINVAL> で失敗すべきである」と述べられている。 しかし 2.3.4 より前"
6269 "のバージョンの glibc では、 I<name> に \\(aq=\\(aq 文字が含まれるのを許してい"
6270 "る。"
6271
6272 #. type: Plain text
6273 #: build/C/man3/setenv.3:158
6274 msgid "B<clearenv>(3), B<getenv>(3), B<putenv>(3), B<environ>(7)"
6275 msgstr "B<clearenv>(3), B<getenv>(3), B<putenv>(3), B<environ>(7)"
6276
6277 #. type: TH
6278 #: build/C/man3/strtod.3:45
6279 #, no-wrap
6280 msgid "STRTOD"
6281 msgstr "STRTOD"
6282
6283 #. type: Plain text
6284 #: build/C/man3/strtod.3:48
6285 msgid "strtod, strtof, strtold - convert ASCII string to floating-point number"
6286 msgstr "strtod, strtof, strtold - ASCII 文字列を浮動小数点実数に変換する"
6287
6288 #. type: Plain text
6289 #: build/C/man3/strtod.3:52
6290 msgid "B<double strtod(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6291 msgstr "B<double strtod(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6292
6293 #. type: Plain text
6294 #: build/C/man3/strtod.3:54
6295 msgid "B<float strtof(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6296 msgstr "B<float strtof(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6297
6298 #. type: Plain text
6299 #: build/C/man3/strtod.3:56
6300 msgid "B<long double strtold(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6301 msgstr "B<long double strtold(const char *>I<nptr>B<, char **>I<endptr>B<);>"
6302
6303 #. type: Plain text
6304 #: build/C/man3/strtod.3:65
6305 msgid "B<strtof>(), B<strtold>():"
6306 msgstr "B<strtof>(), B<strtold>():"
6307
6308 #. type: Plain text
6309 #: build/C/man3/strtod.3:87
6310 msgid ""
6311 "The B<strtod>(), B<strtof>(), and B<strtold>()  functions convert the "
6312 "initial portion of the string pointed to by I<nptr> to I<double>, I<float>, "
6313 "and I<long double> representation, respectively."
6314 msgstr ""
6315 "B<strtod>(), B<strtof>(), B<strtold>()  関数は、 I<nptr> が指し示す文字列のは"
6316 "じめの部分を I<double>, I<float>, I<long double> 型の値にそれぞれ変換する。"
6317
6318 #. type: Plain text
6319 #: build/C/man3/strtod.3:94
6320 msgid ""
6321 "The expected form of the (initial portion of the) string is optional leading "
6322 "white space as recognized by B<isspace>(3), an optional plus (\\(aq+\\(aq) "
6323 "or minus sign (\\(aq-\\(aq) and then either (i) a decimal number, or (ii) a "
6324 "hexadecimal number, or (iii) an infinity, or (iv) a NAN (not-a-number)."
6325 msgstr ""
6326 "入力する文字列 (の先頭部分) は以下の形式が期待されている。 先頭にホワイトス"
6327 "ペース、 次にプラス (\\(aq+\\(aq) またはマイナス (\\(aq-\\(aq) の記号、 その"
6328 "後に (i) 10 進数、(ii) 16 進数、(iii) 無限、 (iv) NAN (計算できない数、not-a-"
6329 "number) のいずれかがある (ホワイトスペース、符号は省略可能。 ホワイトスペース"
6330 "は B<isspace>(3)  で識別される)。"
6331
6332 #. type: Plain text
6333 #: build/C/man3/strtod.3:103
6334 msgid ""
6335 "A I<decimal number> consists of a nonempty sequence of decimal digits "
6336 "possibly containing a radix character (decimal point, locale-dependent, "
6337 "usually \\(aq.\\(aq), optionally followed by a decimal exponent.  A decimal "
6338 "exponent consists of an \\(aqE\\(aq or \\(aqe\\(aq, followed by an optional "
6339 "plus or minus sign, followed by a nonempty sequence of decimal digits, and "
6340 "indicates multiplication by a power of 10."
6341 msgstr ""
6342 "I<10 進数> は 1 文字以上の 10 進の数字の列からなり、 基を表す文字 (radix "
6343 "charater)  (小数点。ロケールに依存するが、通常は \\(aq.\\(aq) が含まれること"
6344 "もある。 この後に 10 進の指数部が続いても良い。 10 進の指数部は \\(aqE\\(aq "
6345 "または \\(aqe\\(aq と、その後に置かれる正負記号 (省略可)、 およびその後に続"
6346 "く 1 文字以上の 10 進の数字の列からなり、 10 の何乗であるかを表す。"
6347
6348 #. type: Plain text
6349 #: build/C/man3/strtod.3:114
6350 msgid ""
6351 "A I<hexadecimal number> consists of a \"0x\" or \"0X\" followed by a "
6352 "nonempty sequence of hexadecimal digits possibly containing a radix "
6353 "character, optionally followed by a binary exponent.  A binary exponent "
6354 "consists of a \\(aqP\\(aq or \\(aqp\\(aq, followed by an optional plus or "
6355 "minus sign, followed by a nonempty sequence of decimal digits, and indicates "
6356 "multiplication by a power of 2.  At least one of radix character and binary "
6357 "exponent must be present."
6358 msgstr ""
6359 "I<16 進数> は、\"0x\" または \"0X\" とその後に続く 1 文字以上の 16 進の数字の"
6360 "列からなり、 基を表す文字が含まれることもある。 この後に 2 進の指数部が続いて"
6361 "も良い。 2 進の指数部は \\(aqP\\(aq または \\(aqp\\(aq と、その後に置かれる正"
6362 "負記号 (省略可)、 およびその後に続く 1 文字以上の 10 進の数字の列から構成さ"
6363 "れ、 2 の何乗であるかを表す。 基を表す文字と 2 進の指数部は、どちらか一方しか"
6364 "存在してはならない。"
6365
6366 #. type: Plain text
6367 #: build/C/man3/strtod.3:118
6368 msgid "An I<infinity> is either \"INF\" or \"INFINITY\", disregarding case."
6369 msgstr ""
6370 "I<無限> は \"INF\" または \"INFINITY\" で表され、大文字小文字は区別されない。"
6371
6372 #.  From glibc 2.8's stdlib/strtod_l.c:
6373 #.      We expect it to be a number which is put in the
6374 #.      mantissa of the number.
6375 #. type: Plain text
6376 #: build/C/man3/strtod.3:128
6377 msgid ""
6378 "A I<NAN> is \"NAN\" (disregarding case) optionally followed by \\(aq(\\(aq, "
6379 "a sequence of characters, followed by \\(aq)\\(aq.  The character string "
6380 "specifies in an implementation-dependent way the type of NAN."
6381 msgstr ""
6382 "I<NAN> は \"NAN\" (大文字小文字は区別されない) で表され、 その後に \\(aq"
6383 "(\\(aq 文字列 \\(aq)\\(aq が続く場合もある。 この文字列は実装に依存する NAN "
6384 "を指定する。"
6385
6386 #. type: Plain text
6387 #: build/C/man3/strtod.3:130
6388 msgid "These functions return the converted value, if any."
6389 msgstr "これらの関数は、変換された値があれば、それを返す。"
6390
6391 #. type: Plain text
6392 #: build/C/man3/strtod.3:137
6393 msgid ""
6394 "If I<endptr> is not NULL, a pointer to the character after the last "
6395 "character used in the conversion is stored in the location referenced by "
6396 "I<endptr>."
6397 msgstr ""
6398 "I<endptr> が NULL でないときは、変換に使われた最終文字の次の文字へのポイン"
6399 "ターが I<endptr> で参照される場所へ保存される。"
6400
6401 #. type: Plain text
6402 #: build/C/man3/strtod.3:142
6403 msgid ""
6404 "If no conversion is performed, zero is returned and the value of I<nptr> is "
6405 "stored in the location referenced by I<endptr>."
6406 msgstr ""
6407 "変換が行われなかったときには 0 が返る。そして I<endptr> が参照している場所に "
6408 "I<nptr> の値 (変換対象である文字列の開始アドレス) が保存される。"
6409
6410 #. type: Plain text
6411 #: build/C/man3/strtod.3:156
6412 msgid ""
6413 "If the correct value would cause overflow, plus or minus B<HUGE_VAL> "
6414 "(B<HUGE_VALF>, B<HUGE_VALL>)  is returned (according to the sign of the "
6415 "value), and B<ERANGE> is stored in I<errno>.  If the correct value would "
6416 "cause underflow, zero is returned and B<ERANGE> is stored in I<errno>."
6417 msgstr ""
6418 "正しい形式の数値文字列であるが、変換結果がオーバーフローを起こした場合 には、"
6419 "プラスまたはマイナスの B<HUGE_VAL> (B<HUGE_VALF>, B<HUGE_VALL>)  が返り (値の"
6420 "符号による)、 B<ERANGE> が I<errno> に代入される。変換結果がアンダーフローを"
6421 "起こした場合には 0 が返り、 B<ERANGE> が I<errno> に代入される。"
6422
6423 #. type: TP
6424 #: build/C/man3/strtod.3:157 build/C/man3/strtol.3:151
6425 #: build/C/man3/strtoul.3:155
6426 #, no-wrap
6427 msgid "B<ERANGE>"
6428 msgstr "B<ERANGE>"
6429
6430 #. type: Plain text
6431 #: build/C/man3/strtod.3:160
6432 msgid "Overflow or underflow occurred."
6433 msgstr "オーバーフローまたはアンダーフローが起こった。"
6434
6435 #. type: Plain text
6436 #: build/C/man3/strtod.3:172
6437 msgid ""
6438 "The B<strtod>(), B<strtof>(), and B<strtold>()  functions are thread-safe "
6439 "with exceptions.  These functions can be safely used in multithreaded "
6440 "applications, as long as B<setlocale>(3)  is not called to change the locale "
6441 "during their execution."
6442 msgstr ""
6443 "関数 B<strtod>(), B<strtof>(), B<strtold>() は、例外付きのスレッドセーフであ"
6444 "る。実行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチス"
6445 "レッドアプリケーションで安全に使用することができる。"
6446
6447 #. type: Plain text
6448 #: build/C/man3/strtod.3:177
6449 msgid "C89 describes B<strtod>(), C99 describes the other two functions."
6450 msgstr "C89 では B<strtod>()  が、C99 では残りの 2 つの関数が記述されている。"
6451
6452 #. type: Plain text
6453 #: build/C/man3/strtod.3:186
6454 msgid ""
6455 "Since 0 can legitimately be returned on both success and failure, the "
6456 "calling program should set I<errno> to 0 before the call, and then determine "
6457 "if an error occurred by checking whether I<errno> has a nonzero value after "
6458 "the call."
6459 msgstr ""
6460 "成功、失敗どちらの場合でも 0 を返す可能性があるので、 プログラムは呼び出す前"
6461 "に I<errno> を 0 に設定し、呼び出し後に I<errno> が 0 以外の値かどうかを確認"
6462 "しエラーが発生したかどうかを判断する 必要がある。"
6463
6464 #. type: Plain text
6465 #: build/C/man3/strtod.3:191 build/C/man3/strtoul.3:225
6466 msgid ""
6467 "See the example on the B<strtol>(3)  manual page; the use of the functions "
6468 "described in this manual page is similar."
6469 msgstr ""
6470 "B<strtol>(3)  のマニュアルページの例を参照。 このページで説明した関数の使用方"
6471 "法も同様である。"
6472
6473 #. type: Plain text
6474 #: build/C/man3/strtod.3:197
6475 msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtol>(3), B<strtoul>(3)"
6476 msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtol>(3), B<strtoul>(3)"
6477
6478 #. type: TH
6479 #: build/C/man3/strtoimax.3:24
6480 #, no-wrap
6481 msgid "STRTOIMAX"
6482 msgstr "STRTOIMAX"
6483
6484 #. type: Plain text
6485 #: build/C/man3/strtoimax.3:27
6486 msgid "strtoimax, strtoumax - convert string to integer"
6487 msgstr "strtoimax, strtoumax - 文字列を整数に変換する"
6488
6489 #. type: Plain text
6490 #: build/C/man3/strtoimax.3:30
6491 #, no-wrap
6492 msgid "B<#include E<lt>inttypes.hE<gt>>\n"
6493 msgstr "B<#include E<lt>inttypes.hE<gt>>\n"
6494
6495 #. type: Plain text
6496 #: build/C/man3/strtoimax.3:32
6497 #, no-wrap
6498 msgid "B<intmax_t strtoimax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6499 msgstr "B<intmax_t strtoimax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6500
6501 #. type: Plain text
6502 #: build/C/man3/strtoimax.3:34
6503 #, no-wrap
6504 msgid "B<uintmax_t strtoumax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6505 msgstr "B<uintmax_t strtoumax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6506
6507 #. type: Plain text
6508 #: build/C/man3/strtoimax.3:45
6509 msgid ""
6510 "These functions are just like B<strtol>(3)  and B<strtoul>(3), except that "
6511 "they return a value of type I<intmax_t> and I<uintmax_t>, respectively."
6512 msgstr ""
6513 "これらの関数はちょうど B<strtol>(3)  と B<strtoul>(3)  に似ているが、それぞ"
6514 "れ I<intmax_t> と I<uintmax_t> 型の値を返す。"
6515
6516 #. type: Plain text
6517 #: build/C/man3/strtoimax.3:58
6518 msgid ""
6519 "On success, the converted value is returned.  If nothing was found to "
6520 "convert, zero is returned.  On overflow or underflow B<INTMAX_MAX> or "
6521 "B<INTMAX_MIN> or B<UINTMAX_MAX> is returned, and I<errno> is set to "
6522 "B<ERANGE>."
6523 msgstr ""
6524 "成功した場合、変換された値が返される。 変換するものが見つからなかった場合、0 "
6525 "が返される。 オーバーフローまたはアンダーフローの場合、 B<INTMAX_MAX> または "
6526 "B<INTMAX_MIN> または B<UINTMAX_MAX> が返され、 I<errno> が B<ERANGE> に設定さ"
6527 "れる。"
6528
6529 #. type: Plain text
6530 #: build/C/man3/strtoimax.3:69
6531 msgid ""
6532 "The B<strtoimax>()  and B<strtoumax>()  functions are thread-safe with "
6533 "exceptions.  These functions can be safely used in multithreaded "
6534 "applications, as long as B<setlocale>(3)  is not called to change the locale "
6535 "during their execution."
6536 msgstr ""
6537 "関数 B<strtoimax>() と B<strtoumax>() は、例外付きのスレッドセーフである。実"
6538 "行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチスレッドア"
6539 "プリケーションで安全に使用することができる。"
6540
6541 #. type: Plain text
6542 #: build/C/man3/strtoimax.3:77
6543 msgid ""
6544 "B<imaxabs>(3), B<imaxdiv>(3), B<strtol>(3), B<strtoul>(3), B<wcstoimax>(3)"
6545 msgstr ""
6546 "B<imaxabs>(3), B<imaxdiv>(3), B<strtol>(3), B<strtoul>(3), B<wcstoimax>(3)"
6547
6548 #. type: TH
6549 #: build/C/man3/strtol.3:31
6550 #, no-wrap
6551 msgid "STRTOL"
6552 msgstr "STRTOL"
6553
6554 #. type: Plain text
6555 #: build/C/man3/strtol.3:34
6556 msgid "strtol, strtoll, strtoq - convert a string to a long integer"
6557 msgstr "strtol, strtoll, strtoq - 文字列を long int に変換する"
6558
6559 #. type: Plain text
6560 #: build/C/man3/strtol.3:39
6561 #, no-wrap
6562 msgid "B<long int strtol(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6563 msgstr "B<long int strtol(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6564
6565 #. type: Plain text
6566 #: build/C/man3/strtol.3:42
6567 #, no-wrap
6568 msgid "B<long long int strtoll(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6569 msgstr "B<long long int strtoll(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6570
6571 #. type: Plain text
6572 #: build/C/man3/strtol.3:51
6573 msgid "B<strtoll>():"
6574 msgstr "B<strtoll>():"
6575
6576 #. type: Plain text
6577 #: build/C/man3/strtol.3:54 build/C/man3/strtoul.3:57
6578 msgid ""
6579 "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || "
6580 "_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
6581 msgstr ""
6582 "XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE "
6583 "|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
6584
6585 #. type: Plain text
6586 #: build/C/man3/strtol.3:68
6587 msgid ""
6588 "The B<strtol>()  function converts the initial part of the string in I<nptr> "
6589 "to a long integer value according to the given I<base>, which must be "
6590 "between 2 and 36 inclusive, or be the special value 0."
6591 msgstr ""
6592 "B<strtol>()  関数は、 I<nptr> の文字列の最初の部分を、 I<base> を基数として "
6593 "long int に変換する。 この I<base> は 2 から 36 までの値 あるいは特別な意味を"
6594 "持つ値 0 でなければならない。"
6595
6596 #. type: Plain text
6597 #: build/C/man3/strtol.3:81 build/C/man3/strtoul.3:89
6598 msgid ""
6599 "The string may begin with an arbitrary amount of white space (as determined "
6600 "by B<isspace>(3))  followed by a single optional \\(aq+\\(aq or \\(aq-\\(aq "
6601 "sign.  If I<base> is zero or 16, the string may then include a \"0x\" "
6602 "prefix, and the number will be read in base 16; otherwise, a zero I<base> is "
6603 "taken as 10 (decimal) unless the next character is \\(aq0\\(aq, in which "
6604 "case it is taken as 8 (octal)."
6605 msgstr ""
6606 "文字列の先頭には、任意の数の空白があってもよく (空白は B<isspace>(3) で判定さ"
6607 "れる)、また数字の直前には \\(aq+\\(aq か \\(aq-\\(aq の 符号があってもよい。 "
6608 "I<base> が 0 または 16 の場合には、文字列の先頭に \"0x\" を置くことが でき、"
6609 "その場合には文字列は 16進数として扱われる。 これ以外の文字列で I<base> が 0 "
6610 "の場合は、 文字列が \\(aq0\\(aq で始まるときは 8進数として、 それ以外のとき"
6611 "は 10進数として扱われる。"
6612
6613 #. type: Plain text
6614 #: build/C/man3/strtol.3:90
6615 msgid ""
6616 "The remainder of the string is converted to a I<long int> value in the "
6617 "obvious manner, stopping at the first character which is not a valid digit "
6618 "in the given base.  (In bases above 10, the letter \\(aqA\\(aq in either "
6619 "uppercase or lowercase represents 10, \\(aqB\\(aq represents 11, and so "
6620 "forth, with \\(aqZ\\(aq representing 35.)"
6621 msgstr ""
6622 "数字を表す文字列は I<long int> に変換されるが、基数に対して 有効でない数字が"
6623 "現れた時点で変換は終了する。(11進数以上では \\(aqA\\(aq は 大文字・小文字に関"
6624 "わらず 10 を表し、 \\(aqB\\(aq は 11 を表現し、 以下同様に、 \\(aqZ\\(aq は "
6625 "35 を表す。)"
6626
6627 #. type: Plain text
6628 #: build/C/man3/strtol.3:111
6629 msgid ""
6630 "If I<endptr> is not NULL, B<strtol>()  stores the address of the first "
6631 "invalid character in I<*endptr>.  If there were no digits at all, B<strtol>"
6632 "()  stores the original value of I<nptr> in I<*endptr> (and returns 0).  In "
6633 "particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is \\(aq"
6634 "\\e0\\(aq on return, the entire string is valid."
6635 msgstr ""
6636 "I<endptr> がヌル値 (NULL) でない場合は、最初に現れた不正な文字が B<strtol>"
6637 "()  によって I<*endptr> に保存されている。 文字列に有効な数字がひとつもなけれ"
6638 "ば、 B<strtol>()  は I<nptr> の元の値を I<*endptr> に代入する (そして 0 を返"
6639 "す)。 特に、I<*nptr> が \\(aq\\e0\\(aq 以外で、返された I<**endptr> が \\(aq"
6640 "\\e0\\(aq ならば、文字列全体が有効だったことになる。"
6641
6642 #. type: Plain text
6643 #: build/C/man3/strtol.3:117
6644 msgid ""
6645 "The B<strtoll>()  function works just like the B<strtol>()  function but "
6646 "returns a long long integer value."
6647 msgstr ""
6648 "B<strtoll>()  関数は B<strtol>()  と同様だが、long long int 型の値を返す。"
6649
6650 #. type: Plain text
6651 #: build/C/man3/strtol.3:144
6652 msgid ""
6653 "The B<strtol>()  function returns the result of the conversion, unless the "
6654 "value would underflow or overflow.  If an underflow occurs, B<strtol>()  "
6655 "returns B<LONG_MIN>.  If an overflow occurs, B<strtol>()  returns "
6656 "B<LONG_MAX>.  In both cases, I<errno> is set to B<ERANGE>.  Precisely the "
6657 "same holds for B<strtoll>()  (with B<LLONG_MIN> and B<LLONG_MAX> instead of "
6658 "B<LONG_MIN> and B<LONG_MAX>)."
6659 msgstr ""
6660 "アンダーフローもオーバーフローも起きなかった場合、 B<strtol>()  関数は 変換さ"
6661 "れた値を返す。オーバーフローした場合には B<LONG_MAX> が返り、 アンダーフロー"
6662 "した場合には B<LONG_MIN> が返る。オーバーフロー、 アンダーフローのいずれの場"
6663 "合にも 大域変数 I<errno> には B<ERANGE> が設定される。 B<strtoll>()  も同様で"
6664 "あるが、 B<LONG_MIN> と B<LONG_MAX> の代わりに B<LLONG_MIN> と B<LLONG_MAX> "
6665 "が返される。"
6666
6667 #. type: Plain text
6668 #: build/C/man3/strtol.3:151 build/C/man3/strtoul.3:155
6669 msgid "(not in C99)  The given I<base> contains an unsupported value."
6670 msgstr "(C99 にはない) 指定された I<base> がサポートされていない値である。"
6671
6672 #. type: Plain text
6673 #: build/C/man3/strtol.3:154 build/C/man3/strtoul.3:158
6674 msgid "The resulting value was out of range."
6675 msgstr "結果の値が範囲外である。"
6676
6677 #. type: Plain text
6678 #: build/C/man3/strtol.3:161 build/C/man3/strtoul.3:165
6679 msgid ""
6680 "The implementation may also set I<errno> to B<EINVAL> in case no conversion "
6681 "was performed (no digits seen, and 0 returned)."
6682 msgstr ""
6683 "実装によっては、変換が行われなかった場合 (数字がなく、0 を返した場合)、 "
6684 "I<errno> に B<EINVAL> が設定される場合がある。"
6685
6686 #. type: Plain text
6687 #: build/C/man3/strtol.3:173
6688 msgid ""
6689 "The B<strtol>(), B<strtoll>(), and B<strtoq>()  functions are thread-safe "
6690 "with exceptions.  These functions can be safely used in multithreaded "
6691 "applications, as long as B<setlocale>(3)  is not called to change the locale "
6692 "during their execution."
6693 msgstr ""
6694 "関数 B<strtol>(), B<strtoll>(), B<strtoq>() は、例外付きのスレッドセーフであ"
6695 "る。実行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチス"
6696 "レッドアプリケーションで安全に使用することができる。"
6697
6698 #. type: Plain text
6699 #: build/C/man3/strtol.3:178
6700 msgid ""
6701 "B<strtol>()  conforms to SVr4, 4.3BSD, C89, C99, and POSIX.1-2001, and "
6702 "B<strtoll>()  to C99 and POSIX.1-2001."
6703 msgstr ""
6704 "B<strtol>()  は SVr4, 4.3BSD, C89, C99 と POSIX.1-2001 に準拠している。 "
6705 "B<strtoll>()  は C99 と POSIX.1-2001 に準拠している。"
6706
6707 #. type: Plain text
6708 #: build/C/man3/strtol.3:196
6709 msgid ""
6710 "Since B<strtol>()  can legitimately return 0, B<LONG_MAX>, or B<LONG_MIN> "
6711 "(B<LLONG_MAX> or B<LLONG_MIN> for B<strtoll>())  on both success and "
6712 "failure, the calling program should set I<errno> to 0 before the call, and "
6713 "then determine if an error occurred by checking whether I<errno> has a "
6714 "nonzero value after the call."
6715 msgstr ""
6716 "B<strtol ()> からは成功、失敗どちらの場合でも 0, B<LONG_MAX>, B<LONG_MIN> "
6717 "(B<strtoll>()  では B<LLONG_MAX>, B<LLONG_MIN>)  が返る可能性があるので、 プ"
6718 "ログラムは関数を呼び出す前に I<errno> を 0 に設定し、呼び出し後に I<errno> "
6719 "が 0 以外の値かどうかを確認しエラーが発生したかどうかを判断する 必要がある。"
6720
6721 #. type: Plain text
6722 #: build/C/man3/strtol.3:201
6723 msgid ""
6724 "According to POSIX.1-2001, in locales other than the \"C\" and \"POSIX\", "
6725 "these functions may accept other, implementation-defined numeric strings."
6726 msgstr ""
6727 "POSIX.1-2001 では、 \"C\" と \"POSIX\" 以外のロケールでは、これらの関数は、他"
6728 "の実装時に定義される数字を示す文字列を受け付けるとされている。"
6729
6730 #. type: Plain text
6731 #: build/C/man3/strtol.3:203 build/C/man3/strtoul.3:202
6732 msgid "BSD also has"
6733 msgstr "BSD には、"
6734
6735 #. type: Plain text
6736 #: build/C/man3/strtol.3:207
6737 #, no-wrap
6738 msgid "B<quad_t strtoq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6739 msgstr "B<quad_t strtoq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6740
6741 #. type: Plain text
6742 #: build/C/man3/strtol.3:216
6743 msgid ""
6744 "with completely analogous definition.  Depending on the wordsize of the "
6745 "current architecture, this may be equivalent to B<strtoll>()  or to B<strtol>"
6746 "()."
6747 msgstr ""
6748 "という完全に同様の定義を持つ関数がある。 使用中のアーキテクチャのワード長次第"
6749 "であるが、この関数は B<strtoll>()  か B<strtol>()  と等価となることもある。"
6750
6751 #. type: Plain text
6752 #: build/C/man3/strtol.3:230
6753 msgid ""
6754 "The program shown below demonstrates the use of B<strtol>().  The first "
6755 "command-line argument specifies a string from which B<strtol>()  should "
6756 "parse a number.  The second (optional) argument specifies the base to be "
6757 "used for the conversion.  (This argument is converted to numeric form using "
6758 "B<atoi>(3), a function that performs no error checking and has a simpler "
6759 "interface than B<strtol>().)  Some examples of the results produced by this "
6760 "program are the following:"
6761 msgstr ""
6762 "以下のプログラムは B<strtol>()  の使用例である。 最初のコマンドライン引き数に"
6763 "は B<strtol>()  が数字として解釈する文字列を指定する。 (省略可能な) 二番目の"
6764 "引き数には 変換に使用される基数を指定する (この引き数は B<atoi>(3)  を使って"
6765 "数値に変換される。 B<atoi>(3)  は B<strtol>()  よりも簡単なインタフェースを持"
6766 "つ関数で、 その中ではエラーチェックは行われない)。 このプログラムの実行例をい"
6767 "くつか以下に示す:"
6768
6769 #. type: Plain text
6770 #: build/C/man3/strtol.3:246
6771 #, no-wrap
6772 msgid ""
6773 "$B< ./a.out 123>\n"
6774 "strtol() returned 123\n"
6775 "$B< ./a.out \\(aq    123\\(aq>\n"
6776 "strtol() returned 123\n"
6777 "$B< ./a.out 123abc>\n"
6778 "strtol() returned 123\n"
6779 "Further characters after number: abc\n"
6780 "$B< ./a.out 123abc 55>\n"
6781 "strtol: Invalid argument\n"
6782 "$B< ./a.out \\(aq\\(aq>\n"
6783 "No digits were found\n"
6784 "$B< ./a.out 4000000000>\n"
6785 "strtol: Numerical result out of range\n"
6786 msgstr ""
6787 "$B< ./a.out 123>\n"
6788 "strtol() returned 123\n"
6789 "$B< ./a.out \\(aq    123\\(aq>\n"
6790 "strtol() returned 123\n"
6791 "$B< ./a.out 123abc>\n"
6792 "strtol() returned 123\n"
6793 "Further characters after number: abc\n"
6794 "$B< ./a.out 123abc 55>\n"
6795 "strtol: Invalid argument\n"
6796 "$B< ./a.out \\(aq\\(aq>\n"
6797 "No digits were found\n"
6798 "$B< ./a.out 4000000000>\n"
6799 "strtol: Numerical result out of range\n"
6800
6801 #. type: Plain text
6802 #: build/C/man3/strtol.3:255
6803 #, no-wrap
6804 msgid ""
6805 "#include E<lt>stdlib.hE<gt>\n"
6806 "#include E<lt>limits.hE<gt>\n"
6807 "#include E<lt>stdio.hE<gt>\n"
6808 "#include E<lt>errno.hE<gt>\n"
6809 msgstr ""
6810 "#include E<lt>stdlib.hE<gt>\n"
6811 "#include E<lt>limits.hE<gt>\n"
6812 "#include E<lt>stdio.hE<gt>\n"
6813 "#include E<lt>errno.hE<gt>\n"
6814
6815 #. type: Plain text
6816 #: build/C/man3/strtol.3:262
6817 #, no-wrap
6818 msgid ""
6819 "int\n"
6820 "main(int argc, char *argv[])\n"
6821 "{\n"
6822 "    int base;\n"
6823 "    char *endptr, *str;\n"
6824 "    long val;\n"
6825 msgstr ""
6826 "int\n"
6827 "main(int argc, char *argv[])\n"
6828 "{\n"
6829 "    int base;\n"
6830 "    char *endptr, *str;\n"
6831 "    long val;\n"
6832
6833 #. type: Plain text
6834 #: build/C/man3/strtol.3:267
6835 #, no-wrap
6836 msgid ""
6837 "    if (argc E<lt> 2) {\n"
6838 "        fprintf(stderr, \"Usage: %s str [base]\\en\", argv[0]);\n"
6839 "        exit(EXIT_FAILURE);\n"
6840 "    }\n"
6841 msgstr ""
6842 "    if (argc E<lt> 2) {\n"
6843 "        fprintf(stderr, \"Usage: %s str [base]\\en\", argv[0]);\n"
6844 "        exit(EXIT_FAILURE);\n"
6845 "    }\n"
6846
6847 #. type: Plain text
6848 #: build/C/man3/strtol.3:270
6849 #, no-wrap
6850 msgid ""
6851 "    str = argv[1];\n"
6852 "    base = (argc E<gt> 2) ? atoi(argv[2]) : 10;\n"
6853 msgstr ""
6854 "    str = argv[1];\n"
6855 "    base = (argc E<gt> 2) ? atoi(argv[2]) : 10;\n"
6856
6857 #. type: Plain text
6858 #: build/C/man3/strtol.3:273
6859 #, no-wrap
6860 msgid ""
6861 "    errno = 0;    /* To distinguish success/failure after call */\n"
6862 "    val = strtol(str, &endptr, base);\n"
6863 msgstr ""
6864 "    errno = 0;    /* To distinguish success/failure after call */\n"
6865 "    val = strtol(str, &endptr, base);\n"
6866
6867 #. type: Plain text
6868 #: build/C/man3/strtol.3:275
6869 #, no-wrap
6870 msgid "    /* Check for various possible errors */\n"
6871 msgstr "    /* Check for various possible errors */\n"
6872
6873 #. type: Plain text
6874 #: build/C/man3/strtol.3:281
6875 #, no-wrap
6876 msgid ""
6877 "    if ((errno == ERANGE && (val == LONG_MAX || val == LONG_MIN))\n"
6878 "            || (errno != 0 && val == 0)) {\n"
6879 "        perror(\"strtol\");\n"
6880 "        exit(EXIT_FAILURE);\n"
6881 "    }\n"
6882 msgstr ""
6883 "    if ((errno == ERANGE && (val == LONG_MAX || val == LONG_MIN))\n"
6884 "            || (errno != 0 && val == 0)) {\n"
6885 "        perror(\"strtol\");\n"
6886 "        exit(EXIT_FAILURE);\n"
6887 "    }\n"
6888
6889 #. type: Plain text
6890 #: build/C/man3/strtol.3:286
6891 #, no-wrap
6892 msgid ""
6893 "    if (endptr == str) {\n"
6894 "        fprintf(stderr, \"No digits were found\\en\");\n"
6895 "        exit(EXIT_FAILURE);\n"
6896 "    }\n"
6897 msgstr ""
6898 "    if (endptr == str) {\n"
6899 "        fprintf(stderr, \"No digits were found\\en\");\n"
6900 "        exit(EXIT_FAILURE);\n"
6901 "    }\n"
6902
6903 #. type: Plain text
6904 #: build/C/man3/strtol.3:288
6905 #, no-wrap
6906 msgid "    /* If we got here, strtol() successfully parsed a number */\n"
6907 msgstr "    /* If we got here, strtol() successfully parsed a number */\n"
6908
6909 #. type: Plain text
6910 #: build/C/man3/strtol.3:290
6911 #, no-wrap
6912 msgid "    printf(\"strtol() returned %ld\\en\", val);\n"
6913 msgstr "    printf(\"strtol() returned %ld\\en\", val);\n"
6914
6915 #. type: Plain text
6916 #: build/C/man3/strtol.3:293
6917 #, no-wrap
6918 msgid ""
6919 "    if (*endptr != \\(aq\\e0\\(aq)        /* Not necessarily an error... */\n"
6920 "        printf(\"Further characters after number: %s\\en\", endptr);\n"
6921 msgstr ""
6922 "    if (*endptr != \\(aq\\e0\\(aq)        /* Not necessarily an error... */\n"
6923 "        printf(\"Further characters after number: %s\\en\", endptr);\n"
6924
6925 #. type: Plain text
6926 #: build/C/man3/strtol.3:303
6927 msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtoul>(3)"
6928 msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtoul>(3)"
6929
6930 #. type: TH
6931 #: build/C/man3/strtoul.3:33
6932 #, no-wrap
6933 msgid "STRTOUL"
6934 msgstr "STRTOUL"
6935
6936 #. type: Plain text
6937 #: build/C/man3/strtoul.3:36
6938 msgid ""
6939 "strtoul, strtoull, strtouq - convert a string to an unsigned long integer"
6940 msgstr "strtoul, strtoull, strtouq - 文字列を unsigned long int に変換する"
6941
6942 #. type: Plain text
6943 #: build/C/man3/strtoul.3:42
6944 #, no-wrap
6945 msgid "B<unsigned long int strtoul(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6946 msgstr "B<unsigned long int strtoul(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
6947
6948 #. type: Plain text
6949 #: build/C/man3/strtoul.3:45
6950 #, no-wrap
6951 msgid ""
6952 "B<unsigned long long int strtoull(const char *>I<nptr>B<, char **>I<endptr>B<,>\n"
6953 "B<                                int >I<base>B<);>\n"
6954 msgstr ""
6955 "B<unsigned long long int strtoull(const char *>I<nptr>B<, char **>I<endptr>B<,>\n"
6956 "B<                                int >I<base>B<);>\n"
6957
6958 #. type: Plain text
6959 #: build/C/man3/strtoul.3:54
6960 msgid "B<strtoull>():"
6961 msgstr "B<strtoull>():"
6962
6963 #. type: Plain text
6964 #: build/C/man3/strtoul.3:75
6965 msgid ""
6966 "The B<strtoul>()  function converts the initial part of the string in "
6967 "I<nptr> to an I<unsigned long int> value according to the given I<base>, "
6968 "which must be between 2 and 36 inclusive, or be the special value 0."
6969 msgstr ""
6970 "B<strtoul>()  関数は、 I<nptr> の文字列の最初の部分を、 I<base> を基数として "
6971 "I<unsigned long int> に変換する。 この I<base> は 2 から 36 までの値 あるいは"
6972 "特別な意味を持つ値 0 でなければならない。"
6973
6974 #. type: Plain text
6975 #: build/C/man3/strtoul.3:98
6976 msgid ""
6977 "The remainder of the string is converted to an I<unsigned long int> value in "
6978 "the obvious manner, stopping at the first character which is not a valid "
6979 "digit in the given base.  (In bases above 10, the letter \\(aqA\\(aq in "
6980 "either uppercase or lowercase represents 10, \\(aqB\\(aq represents 11, and "
6981 "so forth, with \\(aqZ\\(aq representing 35.)"
6982 msgstr ""
6983 "文字列の残りの部分は I<unsigned long int> に変換されるが、基数に対して 有効で"
6984 "ない数字が現れた時点で変換は終了する。(11進数以上では \\(aqA\\(aq は 大文字・"
6985 "小文字に関わらず 10 を表し、 \\(aqB\\(aq は 11 を表現し, 以下同様に、 \\(aqZ"
6986 "\\(aq は 35 を表す。)"
6987
6988 #. type: Plain text
6989 #: build/C/man3/strtoul.3:119
6990 msgid ""
6991 "If I<endptr> is not NULL, B<strtoul>()  stores the address of the first "
6992 "invalid character in I<*endptr>.  If there were no digits at all, B<strtoul>"
6993 "()  stores the original value of I<nptr> in I<*endptr> (and returns 0).  In "
6994 "particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is \\(aq"
6995 "\\e0\\(aq on return, the entire string is valid."
6996 msgstr ""
6997 "I<endptr> がヌル値 (NULL) でない場合、 B<strtoul>()  は最初に不正な文字が現れ"
6998 "たアドレスを I<*endptr> に格納している。 文字列に有効な数字がひとつもなけれ"
6999 "ば、 B<strtoul>()  は I<nptr> の元の値を I<*endptr> に代入する(そして 0 を返"
7000 "す)。 特に、 I<*nptr> が \\(aq\\e0\\(aq 以外で、返された I<**endptr> が \\(aq"
7001 "\\e0\\(aq ならば、文字列全体が有効だったことになる。"
7002
7003 #. type: Plain text
7004 #: build/C/man3/strtoul.3:127
7005 msgid ""
7006 "The B<strtoull>()  function works just like the B<strtoul>()  function but "
7007 "returns an I<unsigned long long int> value."
7008 msgstr ""
7009 "B<strtoull>()  関数は B<strtoul>()  関数と同様だが、 I<unsigned long long "
7010 "int> 型の値を返す。"
7011
7012 #. type: Plain text
7013 #: build/C/man3/strtoul.3:148
7014 msgid ""
7015 "The B<strtoul>()  function returns either the result of the conversion or, "
7016 "if there was a leading minus sign, the negation of the result of the "
7017 "conversion represented as an unsigned value, unless the original "
7018 "(nonnegated) value would overflow; in the latter case, B<strtoul>()  returns "
7019 "B<ULONG_MAX> and sets I<errno> to B<ERANGE>.  Precisely the same holds for "
7020 "B<strtoull>()  (with B<ULLONG_MAX> instead of B<ULONG_MAX>)."
7021 msgstr ""
7022 "B<strtoul>()  関数は変換結果を返す。文字列がマイナス符号から始まっていた場 合"
7023 "は、(符号反転前の値がオーバーフローしていなければ) 変換結果を符号反転した 値"
7024 "を unsigned 型で返す。変換でオーバーフローが発生した場合は B<ULONG_MAX> を返"
7025 "し、 I<errno> に B<ERANGE> を設定する。 (B<ULONG_MAX> を B<ULLONG_MAX> と読み"
7026 "替えれば)  B<strtoull>()  は B<strtoul>()  と全く同じである。"
7027
7028 #. type: Plain text
7029 #: build/C/man3/strtoul.3:177
7030 msgid ""
7031 "The B<strtoul>(), B<strtoull>(), and B<strtouq>()  functions are thread-safe "
7032 "with exceptions.  These functions can be safely used in multithreaded "
7033 "applications, as long as B<setlocale>(3)  is not called to change the locale "
7034 "during their execution."
7035 msgstr ""
7036 "関数 B<strtoul>(), B<strtoull>(), B<strtouq>() は、例外付きのスレッドセーフで"
7037 "ある。実行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチス"
7038 "レッドアプリケーションで安全に使用することができる。"
7039
7040 #. type: Plain text
7041 #: build/C/man3/strtoul.3:182
7042 msgid ""
7043 "B<strtoul>()  conforms to SVr4, C89, C99, and POSIX-2001, and B<strtoull>()  "
7044 "to C99 and POSIX.1-2001."
7045 msgstr ""
7046 "B<strtoul>()  は SVr4, C89, C99 と POSIX-2001 に準拠している。 B<strtoull>"
7047 "()  は C99 と POSIX.1-2001 に準拠している。"
7048
7049 #. type: Plain text
7050 #: build/C/man3/strtoul.3:196
7051 msgid ""
7052 "Since B<strtoul>()  can legitimately return 0 or B<ULONG_MAX> (B<ULLONG_MAX> "
7053 "for B<strtoull>())  on both success and failure, the calling program should "
7054 "set I<errno> to 0 before the call, and then determine if an error occurred "
7055 "by checking whether I<errno> has a nonzero value after the call."
7056 msgstr ""
7057 "B<strtoul ()> からは成功、失敗どちらの場合でも 0 や B<ULONG_MAX> (B<strtoull>"
7058 "()  では B<ULLONG_MAX>)  が返る可能性があるので、 プログラムは関数を呼び出す"
7059 "前に I<errno> を 0 に設定し、呼び出し後に I<errno> が 0 以外の値かどうかを確"
7060 "認しエラーが発生したかどうかを判断する 必要がある。"
7061
7062 #. type: Plain text
7063 #: build/C/man3/strtoul.3:200
7064 msgid ""
7065 "In locales other than the \"C\" locale, other strings may be accepted.  (For "
7066 "example, the thousands separator of the current locale may be supported.)"
7067 msgstr ""
7068 "\"C\" 以外のロケールの場合、その他の文字列も受け付けられるかもしれない。 (例"
7069 "えば、現在のロケールの 1000 毎の区切り文字に対応しているかもしれない。)"
7070
7071 #. type: Plain text
7072 #: build/C/man3/strtoul.3:206
7073 #, no-wrap
7074 msgid "B<u_quad_t strtouq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
7075 msgstr "B<u_quad_t strtouq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
7076
7077 #. type: Plain text
7078 #: build/C/man3/strtoul.3:215
7079 msgid ""
7080 "with completely analogous definition.  Depending on the wordsize of the "
7081 "current architecture, this may be equivalent to B<strtoull>()  or to "
7082 "B<strtoul>()."
7083 msgstr ""
7084 "という完全に同様の定義を持つ関数がある。 使用中のアーキテクチャのワード長次第"
7085 "であるが、この関数は B<strtoull>()  や B<stroul>()  と等価な場合もありえる。"
7086
7087 #. type: Plain text
7088 #: build/C/man3/strtoul.3:220
7089 msgid ""
7090 "Negative values are considered valid input and are silently converted to the "
7091 "equivalent I<unsigned long int> value."
7092 msgstr ""
7093 "負の値も正当な入力とみなされ、エラーもなく、 対応する I<unsigned long int> 型"
7094 "の値に変換される。"
7095
7096 #. type: Plain text
7097 #: build/C/man3/strtoul.3:231
7098 msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3)"
7099 msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3)"
7100
7101 #. type: TH
7102 #: build/C/man3/system.3:30
7103 #, no-wrap
7104 msgid "SYSTEM"
7105 msgstr "SYSTEM"
7106
7107 #. type: TH
7108 #: build/C/man3/system.3:30
7109 #, no-wrap
7110 msgid "2010-09-10"
7111 msgstr "2010-09-10"
7112
7113 #. type: Plain text
7114 #: build/C/man3/system.3:33
7115 msgid "system - execute a shell command"
7116 msgstr "system - シェルコマンドの実行"
7117
7118 #. type: Plain text
7119 #: build/C/man3/system.3:38
7120 #, no-wrap
7121 msgid "B<int system(const char *>I<command>B<);>\n"
7122 msgstr "B<int system(const char *>I<command>B<);>\n"
7123
7124 #. type: Plain text
7125 #: build/C/man3/system.3:54
7126 msgid ""
7127 "B<system>()  executes a command specified in I<command> by calling B</bin/sh "
7128 "-c> I<command>, and returns after the command has been completed.  During "
7129 "execution of the command, B<SIGCHLD> will be blocked, and B<SIGINT> and "
7130 "B<SIGQUIT> will be ignored."
7131 msgstr ""
7132 "B<system>()  は I<command> で指定したコマンドを B</bin/sh -c> I<command> の形"
7133 "で実行する。指定したコマンドが終了すればこの関数も終了する。 コマンド実行中"
7134 "は、 B<SIGCHLD> はブロックされ、 B<SIGINT> と B<SIGQUIT> は無視される。"
7135
7136 #. type: Plain text
7137 #: build/C/man3/system.3:69
7138 msgid ""
7139 "The value returned is -1 on error (e.g., B<fork>(2)  failed), and the return "
7140 "status of the command otherwise.  This latter return status is in the format "
7141 "specified in B<wait>(2).  Thus, the exit code of the command will be "
7142 "I<WEXITSTATUS(status)>.  In case I</bin/sh> could not be executed, the exit "
7143 "status will be that of a command that does I<exit(127)>."
7144 msgstr ""
7145 "エラーが発生した場合 (B<fork>(2)  に失敗した場合など)、-1 を返す。 そうでなけ"
7146 "れば、コマンドのステータスを返す。 後者の場合、ステータスは B<wait>(2)  で定"
7147 "義されているフォーマットで返ってくる。 従って、コマンドの終了コードは "
7148 "I<WEXITSTATUS(status)> で得ることが出来る。 I</bin/sh> が実行出来なかった場"
7149 "合、 終了ステータスはコマンドが I<exit(127)> を実行した場合と同じになる。"
7150
7151 #. type: Plain text
7152 #: build/C/man3/system.3:75
7153 msgid ""
7154 "If the value of I<command> is NULL, B<system>()  returns nonzero if the "
7155 "shell is available, and zero if not."
7156 msgstr ""
7157 "I<command> の値が NULL のときは、 B<system>()  はシェルが利用可能ならゼロ以外"
7158 "の値を返し、利用不可ならゼロを返す。"
7159
7160 #. type: Plain text
7161 #: build/C/man3/system.3:78
7162 msgid "B<system>()  does not affect the wait status of any other children."
7163 msgstr "B<system>()  は他の子プロセスのウエイトステータスには影響を与えない。"
7164
7165 #. type: Plain text
7166 #: build/C/man3/system.3:80
7167 msgid "C89, C99, POSIX.1-2001."
7168 msgstr "C89, C99, POSIX.1-2001."
7169
7170 #. type: Plain text
7171 #: build/C/man3/system.3:93
7172 msgid ""
7173 "If the B<_XOPEN_SOURCE> feature test macro is defined (before including "
7174 "I<any> header files), then the macros described in B<wait>(2)  "
7175 "(B<WEXITSTATUS>(), etc.) are made available when including I<E<lt>stdlib."
7176 "hE<gt>>."
7177 msgstr ""
7178 "(「どの」ヘッダファイルをインクルードするよりも前に)  機能検査マクロ "
7179 "B<_XOPEN_SOURCE> が定義された場合には、 B<wait>(2)  で説明されているマクロ群 "
7180 "(B<WEXITSTATUS>()  等) が I<E<lt>stdlib.hE<gt>> をインクルードすると利用可能"
7181 "になる。"
7182
7183 #. type: Plain text
7184 #: build/C/man3/system.3:104
7185 msgid ""
7186 "As mentioned, B<system>()  ignores B<SIGINT> and B<SIGQUIT>.  This may make "
7187 "programs that call it from a loop uninterruptible, unless they take care "
7188 "themselves to check the exit status of the child.  E.g."
7189 msgstr ""
7190 "既に述べたように、 B<system>()  は B<SIGINT> と B<SIGQUIT> を無視する。 よっ"
7191 "てループから B<system>()  を呼ぶプログラムは、 以下の例のように子プロセスの終"
7192 "了状態を自分でチェックしておかないと、 中断できなくなるかもしれない。"
7193
7194 #. type: Plain text
7195 #: build/C/man3/system.3:109
7196 #, no-wrap
7197 msgid ""
7198 "    while (something) {\n"
7199 "        int ret = system(\"foo\");\n"
7200 msgstr ""
7201 "    while (something) {\n"
7202 "        int ret = system(\"foo\");\n"
7203
7204 #. type: Plain text
7205 #: build/C/man3/system.3:114
7206 #, no-wrap
7207 msgid ""
7208 "        if (WIFSIGNALED(ret) &&\n"
7209 "            (WTERMSIG(ret) == SIGINT || WTERMSIG(ret) == SIGQUIT))\n"
7210 "                break;\n"
7211 "    }\n"
7212 msgstr ""
7213 "        if (WIFSIGNALED(ret) &&\n"
7214 "            (WTERMSIG(ret) == SIGINT || WTERMSIG(ret) == SIGQUIT))\n"
7215 "                break;\n"
7216 "    }\n"
7217
7218 #. type: Plain text
7219 #: build/C/man3/system.3:134
7220 msgid ""
7221 "Do not use B<system>()  from a program with set-user-ID or set-group-ID "
7222 "privileges, because strange values for some environment variables might be "
7223 "used to subvert system integrity.  Use the B<exec>(3)  family of functions "
7224 "instead, but not B<execlp>(3)  or B<execvp>(3).  B<system>()  will not, in "
7225 "fact, work properly from programs with set-user-ID or set-group-ID "
7226 "privileges on systems on which I</bin/sh> is bash version 2, since bash 2 "
7227 "drops privileges on startup.  (Debian uses a modified bash which does not do "
7228 "this when invoked as B<sh>.)"
7229 msgstr ""
7230 "set-user-ID や set-group-ID の特権をもつプログラムの中では B<system>()  を"
7231 "使ってはいけない。なぜなら、ある環境変数の未知の値によって システムの安全が損"
7232 "なわれるからである。代わりに B<exec>(3)  関連の関数群の中で B<execlp>(3)  と "
7233 "B<execvp>(3)  以外の関数を使用すべきである。 実際のところ、 B<system>()  は "
7234 "I</bin/sh> が bash バージョン 2 であるシステムでは、 set-user-ID や set-"
7235 "group-ID の特権を持つプログラムからは正しく動作しない。 なぜなら、bash バー"
7236 "ジョン 2 はスタートアップ時に特権を落とすからである。 (Debian では、sh として"
7237 "起動された時にはこのような動作を行なわないように 修正された bash を用いてい"
7238 "る)"
7239
7240 #. type: Plain text
7241 #: build/C/man3/system.3:148
7242 msgid ""
7243 "In versions of glibc before 2.1.3, the check for the availability of I</bin/"
7244 "sh> was not actually performed if I<command> was NULL; instead it was always "
7245 "assumed to be available, and B<system>()  always returned 1 in this case.  "
7246 "Since glibc 2.1.3, this check is performed because, even though POSIX.1-2001 "
7247 "requires a conforming implementation to provide a shell, that shell may not "
7248 "be available or executable if the calling program has previously called "
7249 "B<chroot>(2)  (which is not specified by POSIX.1-2001)."
7250 msgstr ""
7251 "glibc 2.1.3 より前のバージョンでは、 I<command> が NULL の場合に I</bin/sh> "
7252 "が利用可能かどうかのチェックは実際には行わず、 いつでも利用可能であるとみなし"
7253 "ていた。 B<system>()  はこの場合に常に 1 を返していた。 POSIX.1-2001 ではシェ"
7254 "ルが提供されているという標準に準拠した実装を 要求しているが、glibc 2.1.3 以降"
7255 "ではシェルのチェックを実行している。 なぜなら、呼び出し元のプログラムが "
7256 "B<system>()  を呼び出すより前に (POSIX.1-2001 では規定されていない)  "
7257 "B<chroot>(2)  を呼び出していた時には、シェルが利用可能でない場合や実行可能"
7258 "ファイル でない場合があるからである。"
7259
7260 #. type: Plain text
7261 #: build/C/man3/system.3:153
7262 msgid ""
7263 "It is possible for the shell command to return 127, so that code is not a "
7264 "sure indication that the B<execve>(2)  call failed."
7265 msgstr ""
7266 "実行したシェルコマンドが 127 (B</bin/sh> の呼び出しに失敗した時に返す値) を返"
7267 "すことも考えられる。 そのため、プログラムは (リターンコードを見るだけでは)  "
7268 "B<execve>(2)  の呼び出しが失敗したことを確実に知ることはできない。"
7269
7270 #. type: Plain text
7271 #: build/C/man3/system.3:158
7272 msgid "B<sh>(1), B<signal>(2), B<wait>(2), B<exec>(3)"
7273 msgstr "B<sh>(1), B<signal>(2), B<wait>(2), B<exec>(3)"
7274
7275 #. type: TH
7276 #: build/C/man7/vdso.7:13
7277 #, no-wrap
7278 msgid "VDSO"
7279 msgstr "VDSO"
7280
7281 #. type: TH
7282 #: build/C/man7/vdso.7:13
7283 #, no-wrap
7284 msgid "2014-02-01"
7285 msgstr "2014-02-01"
7286
7287 #. type: Plain text
7288 #: build/C/man7/vdso.7:16
7289 msgid "vDSO - overview of the virtual ELF dynamic shared object"
7290 msgstr ""
7291
7292 #. type: Plain text
7293 #: build/C/man7/vdso.7:18
7294 msgid "B<#include E<lt>sys/auxv.hE<gt>>"
7295 msgstr "B<#include E<lt>sys/auxv.hE<gt>>"
7296
7297 #. type: Plain text
7298 #: build/C/man7/vdso.7:20
7299 msgid "B<void *vdso = (uintptr_t) getauxval(AT_SYSINFO_EHDR);>"
7300 msgstr "B<void *vdso = (uintptr_t) getauxval(AT_SYSINFO_EHDR);>"
7301
7302 #. type: Plain text
7303 #: build/C/man7/vdso.7:29
7304 msgid ""
7305 "The \"vDSO\" (virtual dynamic shared object) is a small shared library that "
7306 "the kernel automatically maps into the address space of all user-space "
7307 "applications.  Applications usually do not need to concern themselves with "
7308 "these details as the vDSO is most commonly called by the C library.  This "
7309 "way you can code in the normal way using standard functions and the C "
7310 "library will take care of using any functionality that is available via the "
7311 "vDSO."
7312 msgstr ""
7313
7314 #. type: Plain text
7315 #: build/C/man7/vdso.7:37
7316 msgid ""
7317 "Why does the vDSO exist at all? There are some system calls the kernel "
7318 "provides that user-space code ends up using frequently, to the point that "
7319 "such calls can dominate overall performance.  This is due both to the "
7320 "frequency of the call as well as the context-switch overhead that results "
7321 "from exiting user space and entering the kernel."
7322 msgstr ""
7323
7324 #. type: Plain text
7325 #: build/C/man7/vdso.7:42
7326 msgid ""
7327 "The rest of this documentation is geared toward the curious and/or C library "
7328 "writers rather than general developers.  If you're trying to call the vDSO "
7329 "in your own application rather than using the C library, you're most likely "
7330 "doing it wrong."
7331 msgstr ""
7332
7333 #. type: SS
7334 #: build/C/man7/vdso.7:42
7335 #, no-wrap
7336 msgid "Example background"
7337 msgstr ""
7338
7339 #. type: Plain text
7340 #: build/C/man7/vdso.7:56
7341 msgid ""
7342 "Making system calls can be slow.  In x86 32-bit systems, you can trigger a "
7343 "software interrupt (I<int $0x80>)  to tell the kernel you wish to make a "
7344 "system call.  However, this instruction is expensive: it goes through the "
7345 "full interrupt-handling paths in the processor's microcode as well as in the "
7346 "kernel.  Newer processors have faster (but backward incompatible) "
7347 "instructions to initiate system calls.  Rather than require the C library to "
7348 "figure out if this functionality is available at run time, the C library can "
7349 "use functions provided by the kernel in the vDSO."
7350 msgstr ""
7351
7352 #. type: Plain text
7353 #: build/C/man7/vdso.7:63
7354 msgid ""
7355 "Note that the terminology can be confusing.  On x86 systems, the vDSO "
7356 "function used to determine the preferred method of making a system call is "
7357 "named \"__kernel_vsyscall\", but on x86_64, the term \"vsyscall\" also "
7358 "refers to an obsolete way to ask the kernel what time it is or what CPU the "
7359 "caller is on."
7360 msgstr ""
7361
7362 #. type: Plain text
7363 #: build/C/man7/vdso.7:79
7364 msgid ""
7365 "One frequently used system call is B<gettimeofday>(2).  This system call is "
7366 "called both directly by user-space applications as well as indirectly by the "
7367 "C library.  Think timestamps or timing loops or polling\\(emall of these "
7368 "frequently need to know what time it is right now.  This information is also "
7369 "not secret\\(emany application in any privilege mode (root or any "
7370 "unprivileged user) will get the same answer.  Thus the kernel arranges for "
7371 "the information required to answer this question to be placed in memory the "
7372 "process can access.  Now a call to B<gettimeofday>(2)  changes from a system "
7373 "call to a normal function call and a few memory accesses."
7374 msgstr ""
7375
7376 #. type: SS
7377 #: build/C/man7/vdso.7:79
7378 #, no-wrap
7379 msgid "Finding the vDSO"
7380 msgstr ""
7381
7382 #. type: Plain text
7383 #: build/C/man7/vdso.7:86
7384 msgid ""
7385 "The base address of the vDSO (if one exists) is passed by the kernel to each "
7386 "program in the initial auxiliary vector (see B<getauxval>(3)), via the "
7387 "B<AT_SYSINFO_EHDR> tag."
7388 msgstr ""
7389
7390 #. type: Plain text
7391 #: build/C/man7/vdso.7:95
7392 msgid ""
7393 "You must not assume the vDSO is mapped at any particular location in the "
7394 "user's memory map.  The base address will usually be randomized at run time "
7395 "every time a new process image is created (at B<execve>(2)  time).  This is "
7396 "done for security reasons, to prevent \"return-to-libc\" attacks."
7397 msgstr ""
7398
7399 #. type: Plain text
7400 #: build/C/man7/vdso.7:104
7401 msgid ""
7402 "For some architectures, there is also an B<AT_SYSINFO> tag.  This is used "
7403 "only for locating the vsyscall entry point and is frequently omitted or set "
7404 "to 0 (meaning it's not available).  This tag is a throwback to the initial "
7405 "vDSO work (see I<History> below) and its use should be avoided."
7406 msgstr ""
7407
7408 #. type: SS
7409 #: build/C/man7/vdso.7:104
7410 #, no-wrap
7411 msgid "File format"
7412 msgstr ""
7413
7414 #. type: Plain text
7415 #: build/C/man7/vdso.7:111
7416 msgid ""
7417 "Since the vDSO is a fully formed ELF image, you can do symbol lookups on "
7418 "it.  This allows new symbols to be added with newer kernel releases, and "
7419 "allows the C library to detect available functionality at run time when "
7420 "running under different kernel versions.  Oftentimes the C library will do "
7421 "detection with the first call and then cache the result for subsequent calls."
7422 msgstr ""
7423
7424 #. type: Plain text
7425 #: build/C/man7/vdso.7:120
7426 msgid ""
7427 "All symbols are also versioned (using the GNU version format).  This allows "
7428 "the kernel to update the function signature without breaking backward "
7429 "compatibility.  This means changing the arguments that the function accepts "
7430 "as well as the return value.  Thus, when looking up a symbol in the vDSO, "
7431 "you must always include the version to match the ABI you expect."
7432 msgstr ""
7433
7434 #. type: Plain text
7435 #: build/C/man7/vdso.7:125
7436 msgid ""
7437 "Typically the vDSO follows the naming convention of prefixing all symbols "
7438 "with \"__vdso_\" or \"__kernel_\" so as to distinguish them from other "
7439 "standard symbols.  For example, the \"gettimeofday\" function is named "
7440 "\"__vdso_gettimeofday\"."
7441 msgstr ""
7442
7443 #. type: Plain text
7444 #: build/C/man7/vdso.7:129
7445 msgid ""
7446 "You use the standard C calling conventions when calling any of these "
7447 "functions.  No need to worry about weird register or stack behavior."
7448 msgstr ""
7449
7450 #. type: SS
7451 #: build/C/man7/vdso.7:130
7452 #, no-wrap
7453 msgid "Source"
7454 msgstr ""
7455
7456 #. type: Plain text
7457 #: build/C/man7/vdso.7:134
7458 msgid ""
7459 "When you compile the kernel, it will automatically compile and link the vDSO "
7460 "code for you.  You will frequently find it under the architecture-specific "
7461 "directory:"
7462 msgstr ""
7463
7464 #. type: Plain text
7465 #: build/C/man7/vdso.7:136
7466 #, no-wrap
7467 msgid "    find arch/$ARCH/ -name '*vdso*.so*' -o -name '*gate*.so*'\n"
7468 msgstr ""
7469
7470 #. type: SS
7471 #: build/C/man7/vdso.7:137
7472 #, no-wrap
7473 msgid "vDSO names"
7474 msgstr ""
7475
7476 #. type: Plain text
7477 #: build/C/man7/vdso.7:143
7478 msgid ""
7479 "The name of the vDSO varies across architectures.  It will often show up in "
7480 "things like glibc's B<ldd>(1)  output.  The exact name should not matter to "
7481 "any code, so do not hardcode it."
7482 msgstr ""
7483
7484 #. type: tbl table
7485 #: build/C/man7/vdso.7:148
7486 #, no-wrap
7487 msgid "user ABI\tvDSO name\n"
7488 msgstr ""
7489
7490 #. type: tbl table
7491 #: build/C/man7/vdso.7:149 build/C/man7/vdso.7:198 build/C/man7/vdso.7:235
7492 #: build/C/man7/vdso.7:263 build/C/man7/vdso.7:299 build/C/man7/vdso.7:333
7493 #: build/C/man7/vdso.7:359 build/C/man7/vdso.7:384 build/C/man7/vdso.7:402
7494 #: build/C/man7/vdso.7:420 build/C/man7/vdso.7:438 build/C/man7/vdso.7:458
7495 #: build/C/man7/vdso.7:477
7496 #, no-wrap
7497 msgid "_\n"
7498 msgstr "_\n"
7499
7500 #. type: tbl table
7501 #: build/C/man7/vdso.7:150
7502 #, no-wrap
7503 msgid "aarch64\tlinux-vdso.so.1\n"
7504 msgstr "aarch64\tlinux-vdso.so.1\n"
7505
7506 #. type: tbl table
7507 #: build/C/man7/vdso.7:151
7508 #, no-wrap
7509 msgid "ia64\tlinux-gate.so.1\n"
7510 msgstr "ia64\tlinux-gate.so.1\n"
7511
7512 #. type: tbl table
7513 #: build/C/man7/vdso.7:152
7514 #, no-wrap
7515 msgid "ppc/32\tlinux-vdso32.so.1\n"
7516 msgstr "ppc/32\tlinux-vdso32.so.1\n"
7517
7518 #. type: tbl table
7519 #: build/C/man7/vdso.7:153
7520 #, no-wrap
7521 msgid "ppc/64\tlinux-vdso64.so.1\n"
7522 msgstr "ppc/64\tlinux-vdso64.so.1\n"
7523
7524 #. type: tbl table
7525 #: build/C/man7/vdso.7:154
7526 #, no-wrap
7527 msgid "s390\tlinux-vdso32.so.1\n"
7528 msgstr "s390\tlinux-vdso32.so.1\n"
7529
7530 #. type: tbl table
7531 #: build/C/man7/vdso.7:155
7532 #, no-wrap
7533 msgid "s390x\tlinux-vdso64.so.1\n"
7534 msgstr "s390x\tlinux-vdso64.so.1\n"
7535
7536 #. type: tbl table
7537 #: build/C/man7/vdso.7:156
7538 #, no-wrap
7539 msgid "sh\tlinux-gate.so.1\n"
7540 msgstr "sh\tlinux-gate.so.1\n"
7541
7542 #. type: tbl table
7543 #: build/C/man7/vdso.7:157
7544 #, no-wrap
7545 msgid "i386\tlinux-gate.so.1\n"
7546 msgstr "i386\tlinux-gate.so.1\n"
7547
7548 #. type: tbl table
7549 #: build/C/man7/vdso.7:158
7550 #, no-wrap
7551 msgid "x86_64\tlinux-vdso.so.1\n"
7552 msgstr "x86_64\tlinux-vdso.so.1\n"
7553
7554 #. type: tbl table
7555 #: build/C/man7/vdso.7:159
7556 #, no-wrap
7557 msgid "x86/x32\tlinux-vdso.so.1\n"
7558 msgstr "x86/x32\tlinux-vdso.so.1\n"
7559
7560 #. type: SH
7561 #: build/C/man7/vdso.7:165
7562 #, no-wrap
7563 msgid "ARCHITECTURE-SPECIFIC NOTES"
7564 msgstr ""
7565
7566 #. type: Plain text
7567 #: build/C/man7/vdso.7:168
7568 msgid "The subsections below provide architecture-specific notes on the vDSO."
7569 msgstr ""
7570
7571 #. type: Plain text
7572 #: build/C/man7/vdso.7:177
7573 msgid ""
7574 "Note that the vDSO that is used is based on the ABI of your user-space code "
7575 "and not the ABI of the kernel.  Thus, for example, when you run an i386 32-"
7576 "bit ELF binary, you'll get the same vDSO regardless of whether you run it "
7577 "under an i386 32-bit kernel or under an x86_64 64-bit kernel.  Therefore, "
7578 "the name of the user-space ABI should be used to determine which of the "
7579 "sections below is relevant."
7580 msgstr ""
7581
7582 #. type: SS
7583 #: build/C/man7/vdso.7:177
7584 #, no-wrap
7585 msgid "ARM functions"
7586 msgstr ""
7587
7588 #.  See linux/arch/arm/kernel/entry-armv.S
7589 #.  See linux/Documentation/arm/kernel_user_helpers.txt
7590 #. type: Plain text
7591 #: build/C/man7/vdso.7:184
7592 msgid ""
7593 "The ARM port has a code page full of utility functions.  Since it's just a "
7594 "raw page of code, there is no ELF information for doing symbol lookups or "
7595 "versioning.  It does provide support for different versions though."
7596 msgstr ""
7597
7598 #. type: Plain text
7599 #: build/C/man7/vdso.7:189
7600 msgid ""
7601 "For information on this code page, it's best to refer to the kernel "
7602 "documentation as it's extremely detailed and covers everything you need to "
7603 "know: I<Documentation/arm/kernel_user_helpers.txt>."
7604 msgstr ""
7605
7606 #. type: SS
7607 #: build/C/man7/vdso.7:189
7608 #, no-wrap
7609 msgid "aarch64 functions"
7610 msgstr ""
7611
7612 #.  See linux/arch/x86/vdso/vdso32.lds.S
7613 #. type: Plain text
7614 #: build/C/man7/vdso.7:192 build/C/man7/vdso.7:229 build/C/man7/vdso.7:353
7615 #: build/C/man7/vdso.7:378 build/C/man7/vdso.7:396 build/C/man7/vdso.7:414
7616 #: build/C/man7/vdso.7:432 build/C/man7/vdso.7:471
7617 msgid "The table below lists the symbols exported by the vDSO."
7618 msgstr ""
7619
7620 #. type: tbl table
7621 #: build/C/man7/vdso.7:197 build/C/man7/vdso.7:234 build/C/man7/vdso.7:332
7622 #: build/C/man7/vdso.7:358 build/C/man7/vdso.7:383 build/C/man7/vdso.7:401
7623 #: build/C/man7/vdso.7:419 build/C/man7/vdso.7:437 build/C/man7/vdso.7:457
7624 #: build/C/man7/vdso.7:476
7625 #, no-wrap
7626 msgid "symbol\tversion\n"
7627 msgstr ""
7628
7629 #. type: tbl table
7630 #: build/C/man7/vdso.7:199
7631 #, no-wrap
7632 msgid "__kernel_rt_sigreturn\tLINUX_2.6.39\n"
7633 msgstr "__kernel_rt_sigreturn\tLINUX_2.6.39\n"
7634
7635 #. type: tbl table
7636 #: build/C/man7/vdso.7:200
7637 #, no-wrap
7638 msgid "__kernel_gettimeofday\tLINUX_2.6.39\n"
7639 msgstr "__kernel_gettimeofday\tLINUX_2.6.39\n"
7640
7641 #. type: tbl table
7642 #: build/C/man7/vdso.7:201
7643 #, no-wrap
7644 msgid "__kernel_clock_gettime\tLINUX_2.6.39\n"
7645 msgstr "__kernel_clock_gettime\tLINUX_2.6.39\n"
7646
7647 #. type: tbl table
7648 #: build/C/man7/vdso.7:202
7649 #, no-wrap
7650 msgid "__kernel_clock_getres\tLINUX_2.6.39\n"
7651 msgstr "__kernel_clock_getres\tLINUX_2.6.39\n"
7652
7653 #. type: SS
7654 #: build/C/man7/vdso.7:208
7655 #, no-wrap
7656 msgid "bfin (Blackfin) functions"
7657 msgstr ""
7658
7659 #.  See linux/arch/blackfin/kernel/fixed_code.S
7660 #.  See http://docs.blackfin.uclinux.org/doku.php?id=linux-kernel:fixed-code
7661 #. type: Plain text
7662 #: build/C/man7/vdso.7:220
7663 msgid ""
7664 "As this CPU lacks a memory management unit (MMU), it doesn't set up a vDSO "
7665 "in the normal sense.  Instead, it maps at boot time a few raw functions into "
7666 "a fixed location in memory.  User-space applications then call directly into "
7667 "that region.  There is no provision for backward compatibility beyond "
7668 "sniffing raw opcodes, but as this is an embedded CPU, it can get away with "
7669 "things\\(emsome of the object formats it runs aren't even ELF based (they're "
7670 "bFLT/FLAT)."
7671 msgstr ""
7672
7673 #. type: Plain text
7674 #: build/C/man7/vdso.7:223
7675 msgid ""
7676 "For information on this code page, it's best to refer to the public "
7677 "documentation:"
7678 msgstr ""
7679
7680 #. type: Plain text
7681 #: build/C/man7/vdso.7:225
7682 msgid "http://docs.blackfin.uclinux.org/doku.php?id=linux-kernel:fixed-code"
7683 msgstr ""
7684
7685 #. type: SS
7686 #: build/C/man7/vdso.7:225
7687 #, no-wrap
7688 msgid "ia64 (Itanium) functions"
7689 msgstr ""
7690
7691 #. type: tbl table
7692 #: build/C/man7/vdso.7:236
7693 #, no-wrap
7694 msgid "__kernel_sigtramp\tLINUX_2.5\n"
7695 msgstr "__kernel_sigtramp\tLINUX_2.5\n"
7696
7697 #. type: tbl table
7698 #: build/C/man7/vdso.7:237
7699 #, no-wrap
7700 msgid "__kernel_syscall_via_break\tLINUX_2.5\n"
7701 msgstr "__kernel_syscall_via_break\tLINUX_2.5\n"
7702
7703 #. type: tbl table
7704 #: build/C/man7/vdso.7:238
7705 #, no-wrap
7706 msgid "__kernel_syscall_via_epc\tLINUX_2.5\n"
7707 msgstr "__kernel_syscall_via_epc\tLINUX_2.5\n"
7708
7709 #. type: Plain text
7710 #: build/C/man7/vdso.7:257
7711 msgid ""
7712 "The Itanium port is somewhat tricky.  In addition to the vDSO above, it also "
7713 "has \"light-weight system calls\" (also known as \"fast syscalls\" or \"fsys"
7714 "\").  You can invoke these via the I<__kernel_syscall_via_epc> vDSO helper.  "
7715 "The system calls listed here have the same semantics as if you called them "
7716 "directly via B<syscall>(2), so refer to the relevant documentation for "
7717 "each.  The table below lists the functions available via this mechanism."
7718 msgstr ""
7719
7720 #. type: tbl table
7721 #: build/C/man7/vdso.7:262
7722 #, no-wrap
7723 msgid "function\n"
7724 msgstr ""
7725
7726 #. type: tbl table
7727 #: build/C/man7/vdso.7:264
7728 #, no-wrap
7729 msgid "clock_gettime\n"
7730 msgstr ""
7731
7732 #. type: tbl table
7733 #: build/C/man7/vdso.7:265
7734 #, no-wrap
7735 msgid "getcpu\n"
7736 msgstr ""
7737
7738 #. type: tbl table
7739 #: build/C/man7/vdso.7:266
7740 #, no-wrap
7741 msgid "getpid\n"
7742 msgstr ""
7743
7744 #. type: tbl table
7745 #: build/C/man7/vdso.7:267
7746 #, no-wrap
7747 msgid "getppid\n"
7748 msgstr ""
7749
7750 #. type: tbl table
7751 #: build/C/man7/vdso.7:268
7752 #, no-wrap
7753 msgid "gettimeofday\n"
7754 msgstr ""
7755
7756 #. type: tbl table
7757 #: build/C/man7/vdso.7:269
7758 #, no-wrap
7759 msgid "set_tid_address\n"
7760 msgstr ""
7761
7762 #. type: SS
7763 #: build/C/man7/vdso.7:275
7764 #, no-wrap
7765 msgid "parisc (hppa) functions"
7766 msgstr ""
7767
7768 #.  See linux/arch/parisc/kernel/syscall.S
7769 #.  See linux/Documentation/parisc/registers
7770 #. type: Plain text
7771 #: build/C/man7/vdso.7:286
7772 msgid ""
7773 "The parisc port has a code page full of utility functions called a gateway "
7774 "page.  Rather than use the normal ELF auxiliary vector approach, it passes "
7775 "the address of the page to the process via the SR2 register.  The "
7776 "permissions on the page are such that merely executing those addresses "
7777 "automatically executes with kernel privileges and not in user space.  This "
7778 "is done to match the way HP-UX works."
7779 msgstr ""
7780
7781 #. type: Plain text
7782 #: build/C/man7/vdso.7:291
7783 msgid ""
7784 "Since it's just a raw page of code, there is no ELF information for doing "
7785 "symbol lookups or versioning.  Simply call into the appropriate offset via "
7786 "the branch instruction, for example:"
7787 msgstr ""
7788
7789 #. type: Plain text
7790 #: build/C/man7/vdso.7:293
7791 #, no-wrap
7792 msgid "    ble E<lt>offsetE<gt>(%sr2, %r0)\n"
7793 msgstr ""
7794
7795 #. type: tbl table
7796 #: build/C/man7/vdso.7:298
7797 #, no-wrap
7798 msgid "offset\tfunction\n"
7799 msgstr ""
7800
7801 #. type: tbl table
7802 #: build/C/man7/vdso.7:300
7803 #, no-wrap
7804 msgid "00b0\tlws_entry\n"
7805 msgstr ""
7806
7807 #. type: tbl table
7808 #: build/C/man7/vdso.7:301
7809 #, no-wrap
7810 msgid "00e0\tset_thread_pointer\n"
7811 msgstr ""
7812
7813 #. type: tbl table
7814 #: build/C/man7/vdso.7:302
7815 #, no-wrap
7816 msgid "0100\tlinux_gateway_entry (syscall)\n"
7817 msgstr ""
7818
7819 #. type: tbl table
7820 #: build/C/man7/vdso.7:303
7821 #, no-wrap
7822 msgid "0268\tsyscall_nosys\n"
7823 msgstr ""
7824
7825 #. type: tbl table
7826 #: build/C/man7/vdso.7:304
7827 #, no-wrap
7828 msgid "0274\ttracesys\n"
7829 msgstr ""
7830
7831 #. type: tbl table
7832 #: build/C/man7/vdso.7:305
7833 #, no-wrap
7834 msgid "0324\ttracesys_next\n"
7835 msgstr ""
7836
7837 #. type: tbl table
7838 #: build/C/man7/vdso.7:306
7839 #, no-wrap
7840 msgid "0368\ttracesys_exit\n"
7841 msgstr ""
7842
7843 #. type: tbl table
7844 #: build/C/man7/vdso.7:307
7845 #, no-wrap
7846 msgid "03a0\ttracesys_sigexit\n"
7847 msgstr ""
7848
7849 #. type: tbl table
7850 #: build/C/man7/vdso.7:308
7851 #, no-wrap
7852 msgid "03b8\tlws_start\n"
7853 msgstr ""
7854
7855 #. type: tbl table
7856 #: build/C/man7/vdso.7:309
7857 #, no-wrap
7858 msgid "03dc\tlws_exit_nosys\n"
7859 msgstr ""
7860
7861 #. type: tbl table
7862 #: build/C/man7/vdso.7:310
7863 #, no-wrap
7864 msgid "03e0\tlws_exit\n"
7865 msgstr ""
7866
7867 #. type: tbl table
7868 #: build/C/man7/vdso.7:311
7869 #, no-wrap
7870 msgid "03e4\tlws_compare_and_swap64\n"
7871 msgstr ""
7872
7873 #. type: tbl table
7874 #: build/C/man7/vdso.7:312
7875 #, no-wrap
7876 msgid "03e8\tlws_compare_and_swap\n"
7877 msgstr ""
7878
7879 #. type: tbl table
7880 #: build/C/man7/vdso.7:313
7881 #, no-wrap
7882 msgid "0404\tcas_wouldblock\n"
7883 msgstr ""
7884
7885 #. type: tbl table
7886 #: build/C/man7/vdso.7:314
7887 #, no-wrap
7888 msgid "0410\tcas_action\n"
7889 msgstr ""
7890
7891 #. type: SS
7892 #: build/C/man7/vdso.7:320
7893 #, no-wrap
7894 msgid "ppc/32 functions"
7895 msgstr ""
7896
7897 #.  See linux/arch/powerpc/kernel/vdso32/vdso32.lds.S
7898 #. type: Plain text
7899 #: build/C/man7/vdso.7:327
7900 msgid ""
7901 "The table below lists the symbols exported by the vDSO.  The functions "
7902 "marked with a I<*> are available only when the kernel is a PowerPC64 (64-"
7903 "bit) kernel."
7904 msgstr ""
7905
7906 #. type: tbl table
7907 #: build/C/man7/vdso.7:334 build/C/man7/vdso.7:360
7908 #, no-wrap
7909 msgid "__kernel_clock_getres\tLINUX_2.6.15\n"
7910 msgstr ""
7911
7912 #. type: tbl table
7913 #: build/C/man7/vdso.7:335 build/C/man7/vdso.7:361
7914 #, no-wrap
7915 msgid "__kernel_clock_gettime\tLINUX_2.6.15\n"
7916 msgstr ""
7917
7918 #. type: tbl table
7919 #: build/C/man7/vdso.7:336 build/C/man7/vdso.7:362
7920 #, no-wrap
7921 msgid "__kernel_datapage_offset\tLINUX_2.6.15\n"
7922 msgstr ""
7923
7924 #. type: tbl table
7925 #: build/C/man7/vdso.7:337 build/C/man7/vdso.7:363
7926 #, no-wrap
7927 msgid "__kernel_get_syscall_map\tLINUX_2.6.15\n"
7928 msgstr ""
7929
7930 #. type: tbl table
7931 #: build/C/man7/vdso.7:338 build/C/man7/vdso.7:364
7932 #, no-wrap
7933 msgid "__kernel_get_tbfreq\tLINUX_2.6.15\n"
7934 msgstr ""
7935
7936 #. type: tbl table
7937 #: build/C/man7/vdso.7:339
7938 #, no-wrap
7939 msgid "__kernel_getcpu I<*>\tLINUX_2.6.15\n"
7940 msgstr ""
7941
7942 #. type: tbl table
7943 #: build/C/man7/vdso.7:340 build/C/man7/vdso.7:366
7944 #, no-wrap
7945 msgid "__kernel_gettimeofday\tLINUX_2.6.15\n"
7946 msgstr ""
7947
7948 #. type: tbl table
7949 #: build/C/man7/vdso.7:341
7950 #, no-wrap
7951 msgid "__kernel_sigtramp_rt32\tLINUX_2.6.15\n"
7952 msgstr ""
7953
7954 #. type: tbl table
7955 #: build/C/man7/vdso.7:342
7956 #, no-wrap
7957 msgid "__kernel_sigtramp32\tLINUX_2.6.15\n"
7958 msgstr ""
7959
7960 #. type: tbl table
7961 #: build/C/man7/vdso.7:343 build/C/man7/vdso.7:368
7962 #, no-wrap
7963 msgid "__kernel_sync_dicache\tLINUX_2.6.15\n"
7964 msgstr ""
7965
7966 #. type: tbl table
7967 #: build/C/man7/vdso.7:344 build/C/man7/vdso.7:369
7968 #, no-wrap
7969 msgid "__kernel_sync_dicache_p5\tLINUX_2.6.15\n"
7970 msgstr ""
7971
7972 #. type: SS
7973 #: build/C/man7/vdso.7:350
7974 #, no-wrap
7975 msgid "ppc/64 functions"
7976 msgstr ""
7977
7978 #. type: tbl table
7979 #: build/C/man7/vdso.7:365
7980 #, no-wrap
7981 msgid "__kernel_getcpu\tLINUX_2.6.15\n"
7982 msgstr ""
7983
7984 #. type: tbl table
7985 #: build/C/man7/vdso.7:367
7986 #, no-wrap
7987 msgid "__kernel_sigtramp_rt64\tLINUX_2.6.15\n"
7988 msgstr ""
7989
7990 #. type: SS
7991 #: build/C/man7/vdso.7:375
7992 #, no-wrap
7993 msgid "s390 functions"
7994 msgstr ""
7995
7996 #. type: tbl table
7997 #: build/C/man7/vdso.7:385 build/C/man7/vdso.7:403
7998 #, no-wrap
7999 msgid "__kernel_clock_getres\tLINUX_2.6.29\n"
8000 msgstr ""
8001
8002 #. type: tbl table
8003 #: build/C/man7/vdso.7:386 build/C/man7/vdso.7:404
8004 #, no-wrap
8005 msgid "__kernel_clock_gettime\tLINUX_2.6.29\n"
8006 msgstr ""
8007
8008 #. type: tbl table
8009 #: build/C/man7/vdso.7:387 build/C/man7/vdso.7:405
8010 #, no-wrap
8011 msgid "__kernel_gettimeofday\tLINUX_2.6.29\n"
8012 msgstr ""
8013
8014 #. type: SS
8015 #: build/C/man7/vdso.7:393
8016 #, no-wrap
8017 msgid "s390x functions"
8018 msgstr ""
8019
8020 #. type: SS
8021 #: build/C/man7/vdso.7:411
8022 #, no-wrap
8023 msgid "sh (SuperH) functions"
8024 msgstr ""
8025
8026 #. type: tbl table
8027 #: build/C/man7/vdso.7:421
8028 #, no-wrap
8029 msgid "__kernel_rt_sigreturn\tLINUX_2.6\n"
8030 msgstr ""
8031
8032 #. type: tbl table
8033 #: build/C/man7/vdso.7:422
8034 #, no-wrap
8035 msgid "__kernel_sigreturn\tLINUX_2.6\n"
8036 msgstr ""
8037
8038 #. type: tbl table
8039 #: build/C/man7/vdso.7:423
8040 #, no-wrap
8041 msgid "__kernel_vsyscall\tLINUX_2.6\n"
8042 msgstr ""
8043
8044 #. type: SS
8045 #: build/C/man7/vdso.7:429
8046 #, no-wrap
8047 msgid "i386 functions"
8048 msgstr ""
8049
8050 #. type: tbl table
8051 #: build/C/man7/vdso.7:439
8052 #, no-wrap
8053 msgid "__kernel_sigreturn\tLINUX_2.5\n"
8054 msgstr ""
8055
8056 #. type: tbl table
8057 #: build/C/man7/vdso.7:440
8058 #, no-wrap
8059 msgid "__kernel_rt_sigreturn\tLINUX_2.5\n"
8060 msgstr ""
8061
8062 #. type: tbl table
8063 #: build/C/man7/vdso.7:441
8064 #, no-wrap
8065 msgid "__kernel_vsyscall\tLINUX_2.5\n"
8066 msgstr ""
8067
8068 #. type: SS
8069 #: build/C/man7/vdso.7:447
8070 #, no-wrap
8071 msgid "x86_64 functions"
8072 msgstr ""
8073
8074 #.  See linux/arch/x86/vdso/vdso.lds.S
8075 #. type: Plain text
8076 #: build/C/man7/vdso.7:452
8077 msgid ""
8078 "The table below lists the symbols exported by the vDSO.  All of these "
8079 "symbols are also available without the \"__vdso_\" prefix, but you should "
8080 "ignore those and stick to the names below."
8081 msgstr ""
8082
8083 #. type: tbl table
8084 #: build/C/man7/vdso.7:459 build/C/man7/vdso.7:478
8085 #, no-wrap
8086 msgid "__vdso_clock_gettime\tLINUX_2.6\n"
8087 msgstr ""
8088
8089 #. type: tbl table
8090 #: build/C/man7/vdso.7:460 build/C/man7/vdso.7:479
8091 #, no-wrap
8092 msgid "__vdso_getcpu\tLINUX_2.6\n"
8093 msgstr ""
8094
8095 #. type: tbl table
8096 #: build/C/man7/vdso.7:461 build/C/man7/vdso.7:480
8097 #, no-wrap
8098 msgid "__vdso_gettimeofday\tLINUX_2.6\n"
8099 msgstr ""
8100
8101 #. type: tbl table
8102 #: build/C/man7/vdso.7:462 build/C/man7/vdso.7:481
8103 #, no-wrap
8104 msgid "__vdso_time\tLINUX_2.6\n"
8105 msgstr ""
8106
8107 #. type: SS
8108 #: build/C/man7/vdso.7:468
8109 #, no-wrap
8110 msgid "x86/x32 functions"
8111 msgstr ""
8112
8113 #. type: SS
8114 #: build/C/man7/vdso.7:487
8115 #, no-wrap
8116 msgid "History"
8117 msgstr ""
8118
8119 #. type: Plain text
8120 #: build/C/man7/vdso.7:494
8121 msgid ""
8122 "The vDSO was originally just a single function\\(emthe vsyscall.  In older "
8123 "kernels, you might see that name in a process's memory map rather than \"vdso"
8124 "\".  Over time, people realized that this mechanism was a great way to pass "
8125 "more functionality to user space, so it was reconceived as a vDSO in the "
8126 "current format."
8127 msgstr ""
8128
8129 #. type: Plain text
8130 #: build/C/man7/vdso.7:498
8131 msgid "B<syscalls>(2), B<getauxval>(3), B<proc>(5)"
8132 msgstr "B<syscalls>(2), B<getauxval>(3), B<proc>(5)"
8133
8134 #. type: Plain text
8135 #: build/C/man7/vdso.7:500
8136 msgid "The documents, examples, and source code in the Linux source code tree:"
8137 msgstr ""
8138
8139 #. type: Plain text
8140 #: build/C/man7/vdso.7:506
8141 #, no-wrap
8142 msgid ""
8143 "Documentation/ABI/stable/vdso\n"
8144 "Documentation/ia64/fsys.txt\n"
8145 "Documentation/vDSO/* (includes examples of using the vDSO)\n"
8146 msgstr ""
8147
8148 #. type: Plain text
8149 #: build/C/man7/vdso.7:508
8150 #, no-wrap
8151 msgid "find arch/ -iname '*vdso*' -o -iname '*gate*'\n"
8152 msgstr "find arch/ -iname '*vdso*' -o -iname '*gate*'\n"
8153
8154 #. type: TH
8155 #: build/C/man3/wcstombs.3:16
8156 #, no-wrap
8157 msgid "WCSTOMBS"
8158 msgstr "WCSTOMBS"
8159
8160 #. type: Plain text
8161 #: build/C/man3/wcstombs.3:19
8162 msgid "wcstombs - convert a wide-character string to a multibyte string"
8163 msgstr "wcstombs - ワイド文字列をマルチバイト文字列に変換する"
8164
8165 #. type: Plain text
8166 #: build/C/man3/wcstombs.3:24
8167 #, no-wrap
8168 msgid "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
8169 msgstr "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
8170
8171 #. type: Plain text
8172 #: build/C/man3/wcstombs.3:42
8173 msgid ""
8174 "If I<dest> is not NULL, the B<wcstombs>()  function converts the wide-"
8175 "character string I<src> to a multibyte string starting at I<dest>.  At most "
8176 "I<n> bytes are written to I<dest>.  The conversion starts in the initial "
8177 "state.  The conversion can stop for three reasons:"
8178 msgstr ""
8179 "I<dest> が NULL でない場合、 B<wcstombs>()  関数は ワイド文字列 I<src> を "
8180 "I<dest> から始まるマルチバイト文字列に 変換する。I<dest> には最大で I<n> バイ"
8181 "トが書き込まれる。 変換は初期状態で開始される。変換は以下の3つの理由により停"
8182 "止する。"
8183
8184 #. type: Plain text
8185 #: build/C/man3/wcstombs.3:48
8186 msgid ""
8187 "1. A wide character has been encountered that can not be represented as a "
8188 "multibyte sequence (according to the current locale).  In this case, I<"
8189 "(size_t)\\ -1> is returned."
8190 msgstr ""
8191 "1. (現在のロケールにおける)マルチバイト列で表現できないワイド文字に 遭遇した"
8192 "場合。この場合には I<(size_t)\\ -1> が返される。"
8193
8194 #. type: Plain text
8195 #: build/C/man3/wcstombs.3:53
8196 msgid ""
8197 "2. The length limit forces a stop.  In this case, the number of bytes "
8198 "written to I<dest> is returned, but the shift state at this point is lost."
8199 msgstr ""
8200 "2. 長さ制限によって強制停止させられた場合。この場合には I<dest> に 書き込まれ"
8201 "たバイト数が返される。しかしこの時点でのシフト状態は失われる。"
8202
8203 #. type: Plain text
8204 #: build/C/man3/wcstombs.3:60
8205 msgid ""
8206 "3. The wide-character string has been completely converted, including the "
8207 "terminating null wide character (L\\(aq\\e0\\(aq).  In this case, the "
8208 "conversion ends in the initial state.  The number of bytes written to "
8209 "I<dest>, excluding the terminating null byte (\\(aq\\e0\\(aq), is returned."
8210 msgstr ""
8211 "3. ワイド文字列が終端の NULL ワイド文字 (L\\(aq\\e0\\(aq) を含めて完全に変換"
8212 "された場合。 この場合には変換は初期状態で終了し、 I<dest> に書き込まれたバイ"
8213 "ト数を返す (終端の NULL バイト (\\(aq\\e0\\(aq) は含まれない)。"
8214
8215 #. type: Plain text
8216 #: build/C/man3/wcstombs.3:66
8217 msgid ""
8218 "The programmer must ensure that there is room for at least I<n> bytes at "
8219 "I<dest>."
8220 msgstr ""
8221 "プログラマーは I<dest> に最低でも I<n> バイトの空きがあることを 保証しなけれ"
8222 "ばならない。"
8223
8224 #. type: Plain text
8225 #: build/C/man3/wcstombs.3:74
8226 msgid ""
8227 "If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
8228 "except that the converted bytes are not written out to memory, and no length "
8229 "limit exists."
8230 msgstr ""
8231 "I<dest> が NULL の場合、I<n> は無視される。上記と同様に変換が行 なわれるが変"
8232 "換結果のバイト列はメモリには書き込まれない。 また長さの上限が存在しない。"
8233
8234 #. type: Plain text
8235 #: build/C/man3/wcstombs.3:79
8236 msgid ""
8237 "In order to avoid the case 2 above, the programmer should make sure I<n> is "
8238 "greater than or equal to I<wcstombs(NULL,src,0)+1>."
8239 msgstr ""
8240 "上記の 2. の場合を避けるために、プログラマーは I<n> が I<wcstombs(NULL,"
8241 "src,0)+1> 以上であることを保証しなければならない。"
8242
8243 #. type: Plain text
8244 #: build/C/man3/wcstombs.3:89
8245 msgid ""
8246 "The B<wcstombs>()  function returns the number of bytes that make up the "
8247 "converted part of a multibyte sequence, not including the terminating null "
8248 "byte.  If a wide character was encountered which could not be converted, I<"
8249 "(size_t)\\ -1> is returned."
8250 msgstr ""
8251 "B<wcstombs>()  関数は生成したマルチバイト列のバイト数を返す。終端の ナル文字"
8252 "は含まない。もし変換できないワイド文字に遭遇した場合には I<(size_t)\\ -1> を"
8253 "返す。"
8254
8255 #. type: Plain text
8256 #: build/C/man3/wcstombs.3:98
8257 msgid ""
8258 "The behavior of B<wcstombs>()  depends on the B<LC_CTYPE> category of the "
8259 "current locale."
8260 msgstr ""
8261 "B<wcstombs>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
8262
8263 #. type: Plain text
8264 #: build/C/man3/wcstombs.3:103
8265 msgid ""
8266 "The function B<wcsrtombs>(3)  provides a thread safe interface to the same "
8267 "functionality."
8268 msgstr ""
8269 "B<wcsrtombs>()  関数は同じ機能のためのスレッド・セーフな インターフェースを提"
8270 "供する。"
8271
8272 #. type: Plain text
8273 #: build/C/man3/wcstombs.3:109
8274 msgid "B<mblen>(3), B<mbtowc>(3), B<mbstowcs>(3), B<wcsrtombs>(3)  B<wctom>(3)"
8275 msgstr ""
8276 "B<mblen>(3), B<mbtowc>(3), B<mbstowcs>(3), B<wcsrtombs>(3)  B<wctom>(3)"
8277
8278 #. type: TH
8279 #: build/C/man3/wctomb.3:16
8280 #, no-wrap
8281 msgid "WCTOMB"
8282 msgstr "WCTOMB"
8283
8284 #. type: Plain text
8285 #: build/C/man3/wctomb.3:19
8286 msgid "wctomb - convert a wide character to a multibyte sequence"
8287 msgstr "wctomb - ワイド文字をマルチバイト列に変換する。"
8288
8289 #. type: Plain text
8290 #: build/C/man3/wctomb.3:24
8291 #, no-wrap
8292 msgid "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
8293 msgstr "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
8294
8295 #. type: Plain text
8296 #: build/C/man3/wctomb.3:45
8297 msgid ""
8298 "If I<s> is not NULL, the B<wctomb>()  function converts the wide character "
8299 "I<wc> to its multibyte representation and stores it at the beginning of the "
8300 "character array pointed to by I<s>.  It updates the shift state, which is "
8301 "stored in a static anonymous variable known only to the B<wctomb>()  "
8302 "function, and returns the length of said multibyte representation, that is, "
8303 "the number of bytes written at I<s>."
8304 msgstr ""
8305 "I<s> が NULL でなければ、 B<wctomb>()  関数はワイド文字 I<wc> を マルチバイト"
8306 "表現に変換して I<s> の指す文字配列に格納する。 同時に wctomb 関数のみが使用す"
8307 "る静的で名前のないシフト状態を更新する。 この関数はマルチバイト表現の長さ、す"
8308 "なわち I<s> に書き込まれた バイト数を返す。"
8309
8310 #. type: Plain text
8311 #: build/C/man3/wctomb.3:51
8312 msgid ""
8313 "The programmer must ensure that there is room for at least B<MB_CUR_MAX> "
8314 "bytes at I<s>."
8315 msgstr ""
8316 "プログラマーは I<s> に少なくとも B<MB_CUR_MAX> バイトの空きがあることを保証し"
8317 "なければならない。"
8318
8319 #.  The Dinkumware doc and the Single UNIX specification say this, but
8320 #.  glibc doesn't implement this.
8321 #. type: Plain text
8322 #: build/C/man3/wctomb.3:63
8323 msgid ""
8324 "If I<s> is NULL, the B<wctomb>()  function resets the shift state, known "
8325 "only to this function, to the initial state, and returns nonzero if the "
8326 "encoding has nontrivial shift state, or zero if the encoding is stateless."
8327 msgstr ""
8328 "I<s> が NULL ならば、 B<wctomb>()  関数は自分のみが使用するシフト状態を 初期"
8329 "状態に戻して、文字符号がシフト状態に依存しているならばゼロ以外を シフト状態に"
8330 "依存しない場合にはゼロを返す。"
8331
8332 #. type: Plain text
8333 #: build/C/man3/wctomb.3:77
8334 msgid ""
8335 "If I<s> is not NULL, the B<wctomb>()  function returns the number of bytes "
8336 "that have been written to the byte array at I<s>.  If I<wc> can not be "
8337 "represented as a multibyte sequence (according to the current locale), -1 is "
8338 "returned."
8339 msgstr ""
8340 "I<s> が NULL でない場合 B<wctomb>()  関数はバイト配列 I<s> に 書き込まれたバ"
8341 "イト数を返す。I<wc> が(現在のロケールにおいて)  マルチバイト列で表現できない"
8342 "場合には -1 を返す。"
8343
8344 #. type: Plain text
8345 #: build/C/man3/wctomb.3:84
8346 msgid ""
8347 "If I<s> is NULL, the B<wctomb>()  function returns nonzero if the encoding "
8348 "has nontrivial shift state, or zero if the encoding is stateless."
8349 msgstr ""
8350 "I<s> が NULL の場合 B<wctomb>()  関数は文字符号がシフト状態に 依存している場"
8351 "合にはゼロ以外、シフト状態に依存しない場合はゼロを返す。"
8352
8353 #. type: Plain text
8354 #: build/C/man3/wctomb.3:89
8355 msgid "The B<wctomb>()  function is not thread-safe."
8356 msgstr "B<wctomb>() 関数はスレッドセーフではない。"
8357
8358 #. type: Plain text
8359 #: build/C/man3/wctomb.3:98
8360 msgid ""
8361 "The behavior of B<wctomb>()  depends on the B<LC_CTYPE> category of the "
8362 "current locale."
8363 msgstr ""
8364 "B<wctomb>()  関数の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存してい"
8365 "る。"
8366
8367 #. type: Plain text
8368 #: build/C/man3/wctomb.3:103
8369 msgid ""
8370 "The function B<wcrtomb>(3)  provides a better interface to the same "
8371 "functionality."
8372 msgstr "B<wcrtomb>(3)  関数は同じ機能のより良いインタフェースを提供する。"
8373
8374 #. type: Plain text
8375 #: build/C/man3/wctomb.3:110
8376 msgid ""
8377 "B<MB_CUR_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcrtomb>(3), "
8378 "B<wcstombs>(3)"
8379 msgstr ""
8380 "B<MB_CUR_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcrtomb>(3), "
8381 "B<wcstombs>(3)"
8382
8383 #~ msgid "2014-01-11"
8384 #~ msgstr "2014-01-11"
8385
8386 #~ msgid ""
8387 #~ "The B<mkostemp>()  function is like B<mkstemp>(), with the difference "
8388 #~ "that flags as for B<open>(2)  may be specified in I<flags> (e.g., "
8389 #~ "B<O_APPEND>, B<O_SYNC>)."
8390 #~ msgstr ""
8391 #~ "B<mkostemp>() 関数は B<mkstemp>() と同様だが、B<open>(2) に渡される\n"
8392 #~ "フラグ O_APPENDB<,> B<O_SYNC> など) を I<flags> で指定できる点が異なる"
8393
8394 #~ msgid ""
8395 #~ "This function is not multithread safe.  The function B<wcrtomb>(3)  "
8396 #~ "provides a better interface to the same functionality."
8397 #~ msgstr ""
8398 #~ "この関数はマルチスレッドでは安全ではない。 B<wcrtomb>(3)  関数は 同じ機能"
8399 #~ "のより良いインターフェースを提供する。"
8400
8401 #~ msgid ""
8402 #~ "The B<putenv>()  function returns zero on success, or nonzero if an error "
8403 #~ "occurs."
8404 #~ msgstr ""
8405 #~ "B<putenv>()  関数は、成功した場合 0 を、 エラーが発生した場合 0 以外を返"
8406 #~ "す。"
8407
8408 #~ msgid ""
8409 #~ "The B<random>()  function returns a value between 0 and B<RAND_MAX>.  The "
8410 #~ "B<srandom>()  function returns no value.  The B<initstate>()  function "
8411 #~ "returns a pointer to the previous state array.  The B<setstate>()  "
8412 #~ "function returns a pointer to the previous state array, or NULL on error."
8413 #~ msgstr ""
8414 #~ "B<random>()  関数は 0 と B<RAND_MAX> の間の値を返す。 B<srandom>()  関数は"
8415 #~ "値を返さない。 B<initstate>()  関数は直前の状態配列へのポインタを返す。 "
8416 #~ "B<setstate>()  関数は直前の状態配列へのポインタを返し、 エラーの場合は "
8417 #~ "NULL を返す。"
8418
8419 #~ msgid "All of these functions return 0 on success, or -1 on error."
8420 #~ msgstr "これらの関数は、成功すると 0 を返し、 エラーの場合は -1 を返す。"
8421
8422 #~ msgid ""
8423 #~ "In locales other than the \"C\" locale, other strings may also be "
8424 #~ "accepted.  (For example, the thousands separator of the current locale "
8425 #~ "may be supported.)"
8426 #~ msgstr ""
8427 #~ "\"C\" 以外のロケールの場合、その他の文字列も受け付けられるかもしれない。 "
8428 #~ "(例えば、現在のロケールの 1000 毎の区切り文字がサポートされているかもしれ"
8429 #~ "ない。)"
8430
8431 #~ msgid ""
8432 #~ "Recent versions of Linux libc (later than 5.4.23) and glibc (2.x)  "
8433 #~ "include a B<malloc>()  implementation which is tunable via environment "
8434 #~ "variables.  When B<MALLOC_CHECK_> is set, a special (less efficient) "
8435 #~ "implementation is used which is designed to be tolerant against simple "
8436 #~ "errors, such as double calls of B<free>()  with the same argument, or "
8437 #~ "overruns of a single byte (off-by-one bugs).  Not all such errors can be "
8438 #~ "protected against, however, and memory leaks can result.  If "
8439 #~ "B<MALLOC_CHECK_> is set to 0, any detected heap corruption is silently "
8440 #~ "ignored; if set to 1, a diagnostic message is printed on I<stderr>; if "
8441 #~ "set to 2, B<abort>(3)  is called immediately; if set to 3, a diagnostic "
8442 #~ "message is printed on I<stderr> and the program is aborted.  Using a "
8443 #~ "nonzero B<MALLOC_CHECK_> value can be useful because otherwise a crash "
8444 #~ "may happen much later, and the true cause for the problem is then very "
8445 #~ "hard to track down."
8446 #~ msgstr ""
8447 #~ "最近のバージョンの Linux libc (5.4.23 以降) と glibc (2.x) では、 "
8448 #~ "B<malloc>()  の動作を環境変数によって制御できるような実装がされている。 "
8449 #~ "B<MALLOC_CHECK_> が設定されていると、特殊な実装が用いられ、 単純なエラーに"
8450 #~ "は耐えることができるようになる (効率は悪くなる)。例えば、 B<free>()  を同"
8451 #~ "じ引き数で二度呼び出してしまう、 1 バイトだけ行きすぎてしまう (off-by-one "
8452 #~ "バグ) などがこれに当たる。 しかし、これらのエラーの全てを防ぐことができる"
8453 #~ "わけではなく、 その場合にはメモリリークが起こってしまう。 "
8454 #~ "B<MALLOC_CHECK_> が 0 にセットされていると、ヒープの破壊を黙って無視す"
8455 #~ "る。 1 にセットされていると、診断メッセージが標準エラー出力に表示される。 "
8456 #~ "2 にセットされていると、ただちに B<abort>(3)  が呼び出される。 3 にセット"
8457 #~ "されていると、診断メッセージが標準エラー出力に表示され、 プログラムは強制"
8458 #~ "終了 (abort) される。 B<MALLOC_CHECK_> に 0 以外の値をセットして役に立つ状"
8459 #~ "況としては、 実際のプロセスのクラッシュがずっと後に起こり、 本当の原因を探"
8460 #~ "し出すのが非常に困難な場合などが挙げられるだろう。"