# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR Free Software Foundation, Inc.
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-05-01 04:22+0900\n"
"PO-Revision-Date: 2012-05-01 05:18+0900\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. type: TH
#: build/C/man3/MB_CUR_MAX.3:15
#, no-wrap
msgid "MB_CUR_MAX"
msgstr "MB_CUR_MAX"

#. type: TH
#: build/C/man3/MB_CUR_MAX.3:15 build/C/man3/MB_LEN_MAX.3:15
#, no-wrap
msgid "1999-07-04"
msgstr "1999-07-04"

#. type: TH
#: build/C/man3/MB_CUR_MAX.3:15 build/C/man3/MB_LEN_MAX.3:15
#: build/C/man2/_exit.2:29 build/C/man3/atexit.3:31 build/C/man3/clearenv.3:24
#: build/C/man3/exit.3:23 build/C/man3/getloadavg.3:32
#: build/C/man3/strtod.3:43
#, no-wrap
msgid "Linux"
msgstr "Linux"

#. type: TH
#: build/C/man3/MB_CUR_MAX.3:15 build/C/man3/MB_LEN_MAX.3:15
#: build/C/man2/_exit.2:29 build/C/man3/a64l.3:6 build/C/man3/atexit.3:31
#: build/C/man3/atof.3:29 build/C/man3/atoi.3:31
#: build/C/man3/canonicalize_file_name.3:5 build/C/man3/cfree.3:23
#: build/C/man3/clearenv.3:24 build/C/man3/drand48.3:28
#: build/C/man3/drand48_r.3:25 build/C/man3/ecvt.3:30 build/C/man3/ecvt_r.3:28
#: build/C/man3/exit.3:23 build/C/man3/gcvt.3:28 build/C/man3/getenv.3:31
#: build/C/man3/getloadavg.3:32 build/C/man3/getsubopt.3:23
#: build/C/man3/malloc.3:28 build/C/man3/mblen.3:14 build/C/man3/mbstowcs.3:14
#: build/C/man3/mbtowc.3:14 build/C/man3/mkdtemp.3:24
#: build/C/man3/mkstemp.3:33 build/C/man3/mktemp.3:32
#: build/C/man3/on_exit.3:29 build/C/man3/putenv.3:34 build/C/man3/qecvt.3:26
#: build/C/man3/rand.3:39 build/C/man3/random.3:31 build/C/man3/random_r.3:24
#: build/C/man3/rpmatch.3:27 build/C/man3/setenv.3:35 build/C/man3/strtod.3:43
#: build/C/man3/strtoimax.3:23 build/C/man3/strtol.3:29
#: build/C/man3/strtoul.3:31 build/C/man3/system.3:28
#: build/C/man3/wcstombs.3:14 build/C/man3/wctomb.3:14
#, no-wrap
msgid "Linux Programmer's Manual"
msgstr "Linux Programmer's Manual"

#. type: SH
#: build/C/man3/MB_CUR_MAX.3:16 build/C/man3/MB_LEN_MAX.3:16
#: build/C/man2/_exit.2:30 build/C/man3/a64l.3:7 build/C/man3/atexit.3:32
#: build/C/man3/atof.3:30 build/C/man3/atoi.3:32
#: build/C/man3/canonicalize_file_name.3:6 build/C/man3/cfree.3:24
#: build/C/man3/clearenv.3:25 build/C/man3/drand48.3:29
#: build/C/man3/drand48_r.3:26 build/C/man3/ecvt.3:31 build/C/man3/ecvt_r.3:29
#: build/C/man3/exit.3:24 build/C/man3/gcvt.3:29 build/C/man3/getenv.3:32
#: build/C/man3/getloadavg.3:33 build/C/man3/getsubopt.3:24
#: build/C/man3/malloc.3:29 build/C/man3/mblen.3:15 build/C/man3/mbstowcs.3:15
#: build/C/man3/mbtowc.3:15 build/C/man3/mkdtemp.3:25
#: build/C/man3/mkstemp.3:34 build/C/man3/mktemp.3:33
#: build/C/man3/on_exit.3:30 build/C/man3/putenv.3:35 build/C/man3/qecvt.3:27
#: build/C/man3/rand.3:40 build/C/man3/random.3:32 build/C/man3/random_r.3:25
#: build/C/man3/rpmatch.3:28 build/C/man3/setenv.3:36 build/C/man3/strtod.3:44
#: build/C/man3/strtoimax.3:24 build/C/man3/strtol.3:30
#: build/C/man3/strtoul.3:32 build/C/man3/system.3:29
#: build/C/man3/wcstombs.3:15 build/C/man3/wctomb.3:15
#, no-wrap
msgid "NAME"
msgstr "名前"

#. type: Plain text
#: build/C/man3/MB_CUR_MAX.3:18
msgid ""
"MB_CUR_MAX - maximum length of a multibyte character in the current locale"
msgstr "MB_CUR_MAX - 現在のロケールでのマルチバイト文字の最大長"

#. type: SH
#: build/C/man3/MB_CUR_MAX.3:18 build/C/man3/MB_LEN_MAX.3:18
#: build/C/man2/_exit.2:32 build/C/man3/a64l.3:9 build/C/man3/atexit.3:34
#: build/C/man3/atof.3:32 build/C/man3/atoi.3:34
#: build/C/man3/canonicalize_file_name.3:8 build/C/man3/cfree.3:26
#: build/C/man3/clearenv.3:27 build/C/man3/drand48.3:32
#: build/C/man3/drand48_r.3:30 build/C/man3/ecvt.3:33 build/C/man3/ecvt_r.3:31
#: build/C/man3/exit.3:26 build/C/man3/gcvt.3:31 build/C/man3/getenv.3:34
#: build/C/man3/getloadavg.3:35 build/C/man3/getsubopt.3:26
#: build/C/man3/malloc.3:31 build/C/man3/mblen.3:17 build/C/man3/mbstowcs.3:17
#: build/C/man3/mbtowc.3:17 build/C/man3/mkdtemp.3:27
#: build/C/man3/mkstemp.3:36 build/C/man3/mktemp.3:35
#: build/C/man3/on_exit.3:32 build/C/man3/putenv.3:37 build/C/man3/qecvt.3:29
#: build/C/man3/rand.3:42 build/C/man3/random.3:34 build/C/man3/random_r.3:28
#: build/C/man3/rpmatch.3:30 build/C/man3/setenv.3:38 build/C/man3/strtod.3:46
#: build/C/man3/strtoimax.3:26 build/C/man3/strtol.3:32
#: build/C/man3/strtoul.3:34 build/C/man3/system.3:31
#: build/C/man3/wcstombs.3:17 build/C/man3/wctomb.3:17
#, no-wrap
msgid "SYNOPSIS"
msgstr "書式"

#. type: Plain text
#: build/C/man3/MB_CUR_MAX.3:21 build/C/man3/atexit.3:37
#: build/C/man3/atof.3:35 build/C/man3/atoi.3:37 build/C/man3/cfree.3:30
#: build/C/man3/clearenv.3:30 build/C/man3/drand48.3:35
#: build/C/man3/drand48_r.3:33 build/C/man3/ecvt_r.3:34 build/C/man3/exit.3:29
#: build/C/man3/gcvt.3:34 build/C/man3/getenv.3:37 build/C/man3/malloc.3:34
#: build/C/man3/mblen.3:20 build/C/man3/mbstowcs.3:20 build/C/man3/mbtowc.3:20
#: build/C/man3/mkdtemp.3:30 build/C/man3/mkstemp.3:39
#: build/C/man3/mktemp.3:38 build/C/man3/on_exit.3:35 build/C/man3/putenv.3:40
#: build/C/man3/rand.3:45 build/C/man3/random.3:37 build/C/man3/random_r.3:31
#: build/C/man3/rpmatch.3:33 build/C/man3/setenv.3:41 build/C/man3/strtol.3:35
#: build/C/man3/strtoul.3:37 build/C/man3/system.3:34
#: build/C/man3/wcstombs.3:20 build/C/man3/wctomb.3:20
#, no-wrap
msgid "B<#include E<lt>stdlib.hE<gt>>\n"
msgstr "B<#include E<lt>stdlib.hE<gt>>\n"

#. type: SH
#: build/C/man3/MB_CUR_MAX.3:22 build/C/man3/MB_LEN_MAX.3:22
#: build/C/man2/_exit.2:56 build/C/man3/a64l.3:30 build/C/man3/atexit.3:40
#: build/C/man3/atof.3:38 build/C/man3/atoi.3:62
#: build/C/man3/canonicalize_file_name.3:14 build/C/man3/cfree.3:51
#: build/C/man3/clearenv.3:41 build/C/man3/drand48.3:73
#: build/C/man3/drand48_r.3:81 build/C/man3/ecvt.3:67 build/C/man3/ecvt_r.3:62
#: build/C/man3/exit.3:32 build/C/man3/gcvt.3:62 build/C/man3/getenv.3:40
#: build/C/man3/getloadavg.3:42 build/C/man3/getsubopt.3:48
#: build/C/man3/malloc.3:40 build/C/man3/mblen.3:23 build/C/man3/mbstowcs.3:23
#: build/C/man3/mbtowc.3:23 build/C/man3/mkdtemp.3:53
#: build/C/man3/mkstemp.3:74 build/C/man3/mktemp.3:64
#: build/C/man3/on_exit.3:46 build/C/man3/putenv.3:52 build/C/man3/qecvt.3:51
#: build/C/man3/rand.3:60 build/C/man3/random.3:62 build/C/man3/random_r.3:56
#: build/C/man3/rpmatch.3:44 build/C/man3/setenv.3:59 build/C/man3/strtod.3:71
#: build/C/man3/strtoimax.3:34 build/C/man3/strtol.3:57
#: build/C/man3/strtoul.3:60 build/C/man3/system.3:37
#: build/C/man3/wcstombs.3:23 build/C/man3/wctomb.3:23
#, no-wrap
msgid "DESCRIPTION"
msgstr "説明"

#. type: Plain text
#: build/C/man3/MB_CUR_MAX.3:29
msgid ""
"The B<MB_CUR_MAX> macro defines an integer expression giving the maximum "
"number of bytes needed to represent a single wide character in the current "
"locale.  It is locale dependent and therefore not a compile-time constant."
msgstr ""
"B<MB_CUR_MAX> マクロは、現在のロケールで一つのワイド文字を表現するために必要"
"な 最大バイト数を表す整数表現を定義する。 これはロケール依存であり、コンパイ"
"ル時に決まる定数ではない。"

#. type: SH
#: build/C/man3/MB_CUR_MAX.3:29 build/C/man3/MB_LEN_MAX.3:27
#: build/C/man2/_exit.2:79 build/C/man3/atexit.3:66 build/C/man3/atof.3:53
#: build/C/man3/atoi.3:89 build/C/man3/cfree.3:95 build/C/man3/clearenv.3:48
#: build/C/man3/drand48_r.3:94 build/C/man3/ecvt.3:97 build/C/man3/ecvt_r.3:84
#: build/C/man3/exit.3:80 build/C/man3/gcvt.3:70 build/C/man3/getenv.3:49
#: build/C/man3/getloadavg.3:53 build/C/man3/getsubopt.3:108
#: build/C/man3/malloc.3:127 build/C/man3/mblen.3:58
#: build/C/man3/mbstowcs.3:58 build/C/man3/mbtowc.3:64
#: build/C/man3/mkdtemp.3:66 build/C/man3/mkstemp.3:136
#: build/C/man3/mktemp.3:75 build/C/man3/on_exit.3:67 build/C/man3/putenv.3:65
#: build/C/man3/rand.3:116 build/C/man3/random.3:116
#: build/C/man3/random_r.3:98 build/C/man3/rpmatch.3:64
#: build/C/man3/setenv.3:84 build/C/man3/strtod.3:126
#: build/C/man3/strtoimax.3:44 build/C/man3/strtol.3:99
#: build/C/man3/strtoul.3:108 build/C/man3/system.3:52
#: build/C/man3/wcstombs.3:59 build/C/man3/wctomb.3:50
#, no-wrap
msgid "RETURN VALUE"
msgstr "返り値"

#. type: Plain text
#: build/C/man3/MB_CUR_MAX.3:33
msgid ""
"An integer in the range [1, B<MB_LEN_MAX>].  The value 1 denotes traditional "
"8-bit encoded characters."
msgstr ""
"[1, B<MB_LEN_MAX>] の範囲の整数を返す。 1 という値は伝統的な (traditional) 8-"
"bit エンコードされた文字を意味する。"

#. type: SH
#: build/C/man3/MB_CUR_MAX.3:33 build/C/man3/MB_LEN_MAX.3:29
#: build/C/man2/_exit.2:81 build/C/man3/a64l.3:59 build/C/man3/atexit.3:71
#: build/C/man3/atof.3:55 build/C/man3/atoi.3:91
#: build/C/man3/canonicalize_file_name.3:19 build/C/man3/cfree.3:111
#: build/C/man3/clearenv.3:58 build/C/man3/drand48.3:202
#: build/C/man3/drand48_r.3:96 build/C/man3/ecvt.3:108
#: build/C/man3/ecvt_r.3:86 build/C/man3/exit.3:84 build/C/man3/gcvt.3:75
#: build/C/man3/getenv.3:54 build/C/man3/getloadavg.3:63
#: build/C/man3/getsubopt.3:127 build/C/man3/malloc.3:166
#: build/C/man3/mblen.3:68 build/C/man3/mbstowcs.3:68 build/C/man3/mbtowc.3:76
#: build/C/man3/mkdtemp.3:84 build/C/man3/mkstemp.3:176
#: build/C/man3/mktemp.3:88 build/C/man3/on_exit.3:72 build/C/man3/putenv.3:74
#: build/C/man3/qecvt.3:70 build/C/man3/rand.3:127 build/C/man3/random.3:135
#: build/C/man3/random_r.3:123 build/C/man3/rpmatch.3:85
#: build/C/man3/setenv.3:107 build/C/man3/strtod.3:158
#: build/C/man3/strtoimax.3:57 build/C/man3/strtol.3:137
#: build/C/man3/strtoul.3:140 build/C/man3/system.3:76
#: build/C/man3/wcstombs.3:68 build/C/man3/wctomb.3:64
#, no-wrap
msgid "CONFORMING TO"
msgstr "準拠"

#. type: Plain text
#: build/C/man3/MB_CUR_MAX.3:35 build/C/man3/MB_LEN_MAX.3:31
#: build/C/man3/strtoimax.3:59
msgid "C99, POSIX.1-2001."
msgstr "C99, POSIX.1-2001."

#. type: SH
#: build/C/man3/MB_CUR_MAX.3:35 build/C/man3/MB_LEN_MAX.3:42
#: build/C/man2/_exit.2:124 build/C/man3/a64l.3:81 build/C/man3/atexit.3:156
#: build/C/man3/atof.3:57 build/C/man3/atoi.3:111
#: build/C/man3/canonicalize_file_name.3:21 build/C/man3/cfree.3:116
#: build/C/man3/clearenv.3:95 build/C/man3/drand48.3:208
#: build/C/man3/drand48_r.3:98 build/C/man3/ecvt.3:126
#: build/C/man3/ecvt_r.3:93 build/C/man3/exit.3:165 build/C/man3/gcvt.3:84
#: build/C/man3/getenv.3:77 build/C/man3/getloadavg.3:67
#: build/C/man3/getsubopt.3:224 build/C/man3/malloc.3:257
#: build/C/man3/mblen.3:82 build/C/man3/mbstowcs.3:82 build/C/man3/mbtowc.3:91
#: build/C/man3/mkdtemp.3:89 build/C/man3/mkstemp.3:211
#: build/C/man3/mktemp.3:111 build/C/man3/on_exit.3:79
#: build/C/man3/putenv.3:114 build/C/man3/qecvt.3:81 build/C/man3/rand.3:215
#: build/C/man3/random.3:163 build/C/man3/random_r.3:127
#: build/C/man3/rpmatch.3:127 build/C/man3/setenv.3:130
#: build/C/man3/strtod.3:177 build/C/man3/strtoimax.3:59
#: build/C/man3/strtol.3:260 build/C/man3/strtoul.3:188
#: build/C/man3/system.3:151 build/C/man3/wcstombs.3:82
#: build/C/man3/wctomb.3:79
#, no-wrap
msgid "SEE ALSO"
msgstr "関連項目"

#. type: Plain text
#: build/C/man3/MB_CUR_MAX.3:42
msgid ""
"B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>(3), "
"B<wctomb>(3)"
msgstr ""
"B<MB_LEN_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcstombs>(3), "
"B<wctomb>(3)"

#. type: SH
#: build/C/man3/MB_CUR_MAX.3:42 build/C/man3/MB_LEN_MAX.3:44
#: build/C/man2/_exit.2:136 build/C/man3/a64l.3:85 build/C/man3/atexit.3:160
#: build/C/man3/atof.3:63 build/C/man3/atoi.3:116
#: build/C/man3/canonicalize_file_name.3:23 build/C/man3/cfree.3:118
#: build/C/man3/clearenv.3:101 build/C/man3/drand48.3:211
#: build/C/man3/drand48_r.3:102 build/C/man3/ecvt.3:132
#: build/C/man3/ecvt_r.3:97 build/C/man3/exit.3:172 build/C/man3/gcvt.3:88
#: build/C/man3/getenv.3:83 build/C/man3/getloadavg.3:70
#: build/C/man3/getsubopt.3:226 build/C/man3/malloc.3:278
#: build/C/man3/mblen.3:84 build/C/man3/mbstowcs.3:85 build/C/man3/mbtowc.3:95
#: build/C/man3/mkdtemp.3:96 build/C/man3/mkstemp.3:217
#: build/C/man3/mktemp.3:116 build/C/man3/on_exit.3:83
#: build/C/man3/putenv.3:120 build/C/man3/qecvt.3:86 build/C/man3/rand.3:218
#: build/C/man3/random.3:168 build/C/man3/random_r.3:131
#: build/C/man3/rpmatch.3:133 build/C/man3/setenv.3:135
#: build/C/man3/strtod.3:183 build/C/man3/strtoimax.3:65
#: build/C/man3/strtol.3:266 build/C/man3/strtoul.3:194
#: build/C/man3/system.3:156 build/C/man3/wcstombs.3:85
#: build/C/man3/wctomb.3:83
#, no-wrap
msgid "COLOPHON"
msgstr "この文書について"

#. type: Plain text
#: build/C/man3/MB_CUR_MAX.3:49 build/C/man3/MB_LEN_MAX.3:51
#: build/C/man2/_exit.2:143 build/C/man3/a64l.3:92 build/C/man3/atexit.3:167
#: build/C/man3/atof.3:70 build/C/man3/atoi.3:123
#: build/C/man3/canonicalize_file_name.3:30 build/C/man3/cfree.3:125
#: build/C/man3/clearenv.3:108 build/C/man3/drand48.3:218
#: build/C/man3/drand48_r.3:109 build/C/man3/ecvt.3:139
#: build/C/man3/ecvt_r.3:104 build/C/man3/exit.3:179 build/C/man3/gcvt.3:95
#: build/C/man3/getenv.3:90 build/C/man3/getloadavg.3:77
#: build/C/man3/getsubopt.3:233 build/C/man3/malloc.3:285
#: build/C/man3/mblen.3:91 build/C/man3/mbstowcs.3:92
#: build/C/man3/mbtowc.3:102 build/C/man3/mkdtemp.3:103
#: build/C/man3/mkstemp.3:224 build/C/man3/mktemp.3:123
#: build/C/man3/on_exit.3:90 build/C/man3/putenv.3:127 build/C/man3/qecvt.3:93
#: build/C/man3/rand.3:225 build/C/man3/random.3:175
#: build/C/man3/random_r.3:138 build/C/man3/rpmatch.3:140
#: build/C/man3/setenv.3:142 build/C/man3/strtod.3:190
#: build/C/man3/strtoimax.3:72 build/C/man3/strtol.3:273
#: build/C/man3/strtoul.3:201 build/C/man3/system.3:163
#: build/C/man3/wcstombs.3:92 build/C/man3/wctomb.3:90
msgid ""
"This page is part of release 3.40 of the Linux I<man-pages> project.  A "
"description of the project, and information about reporting bugs, can be "
"found at http://www.kernel.org/doc/man-pages/."
msgstr ""
"この man ページは Linux I<man-pages> プロジェクトのリリース 3.40 の一部\n"
"である。プロジェクトの説明とバグ報告に関する情報は\n"
"http://www.kernel.org/doc/man-pages/ に書かれている。"

#. type: TH
#: build/C/man3/MB_LEN_MAX.3:15
#, no-wrap
msgid "MB_LEN_MAX"
msgstr "MB_LEN_MAX"

#. type: Plain text
#: build/C/man3/MB_LEN_MAX.3:18
msgid "MB_LEN_MAX - maximum multibyte length of a character across all locales"
msgstr "MB_LEN_MAX - 全てのロケールでの１文字の最大マルチバイト長"

#. type: Plain text
#: build/C/man3/MB_LEN_MAX.3:21
#, no-wrap
msgid "B<#include E<lt>limits.hE<gt>>\n"
msgstr "B<#include E<lt>limits.hE<gt>>\n"

#. type: Plain text
#: build/C/man3/MB_LEN_MAX.3:27
msgid ""
"The B<MB_LEN_MAX> macro is the upper bound for the number of bytes needed to "
"represent a single wide character, across all locales."
msgstr ""
"B<MB_LEN_MAX> マクロは、全てのロケールで一つのワイド文字を表現するために必要"
"となる 最大バイト数である。"

#. type: Plain text
#: build/C/man3/MB_LEN_MAX.3:29
msgid "A constant integer greater than zero."
msgstr "0 より大きいの整数型の定数。"

#. type: SH
#: build/C/man3/MB_LEN_MAX.3:31 build/C/man2/_exit.2:86 build/C/man3/a64l.3:61
#: build/C/man3/atexit.3:73 build/C/man3/atoi.3:101 build/C/man3/clearenv.3:72
#: build/C/man3/drand48.3:204 build/C/man3/ecvt.3:120 build/C/man3/ecvt_r.3:88
#: build/C/man3/exit.3:86 build/C/man3/getenv.3:56
#: build/C/man3/getsubopt.3:129 build/C/man3/malloc.3:168
#: build/C/man3/mblen.3:70 build/C/man3/mbstowcs.3:70 build/C/man3/mbtowc.3:78
#: build/C/man3/mkstemp.3:189 build/C/man3/mktemp.3:92
#: build/C/man3/putenv.3:76 build/C/man3/qecvt.3:76 build/C/man3/rand.3:139
#: build/C/man3/random.3:137 build/C/man3/setenv.3:109
#: build/C/man3/strtod.3:163 build/C/man3/strtol.3:142
#: build/C/man3/strtoul.3:145 build/C/man3/system.3:78
#: build/C/man3/wcstombs.3:70 build/C/man3/wctomb.3:66
#, no-wrap
msgid "NOTES"
msgstr "注意"

#. type: Plain text
#: build/C/man3/MB_LEN_MAX.3:42
msgid ""
"The entities B<MB_LEN_MAX> and I<sizeof(wchar_t)> are totally unrelated.  In "
"glibc, B<MB_LEN_MAX> is typically 6 while I<sizeof(wchar_t)> is 4."
msgstr ""
"B<MB_LEN_MAX> と I<sizeof(wchar_t)> の値にはなんの関係もない。 glibc では "
"B<MB_LEN_MAX> は通常は 6 で、 I<sizeof(wchar_t)> は 4 である。"

#. type: Plain text
#: build/C/man3/MB_LEN_MAX.3:44
msgid "B<MB_CUR_MAX>(3)"
msgstr "B<MB_CUR_MAX>(3)"

#. type: TH
#: build/C/man2/_exit.2:29
#, no-wrap
msgid "_EXIT"
msgstr "_EXIT"

#. type: TH
#: build/C/man2/_exit.2:29 build/C/man3/a64l.3:6 build/C/man3/atoi.3:31
#: build/C/man3/ecvt.3:30 build/C/man3/gcvt.3:28 build/C/man3/mktemp.3:32
#: build/C/man3/qecvt.3:26 build/C/man3/random.3:31 build/C/man3/strtod.3:43
#: build/C/man3/strtol.3:29
#, no-wrap
msgid "2010-09-20"
msgstr "2010-09-20"

#. type: Plain text
#: build/C/man2/_exit.2:32
msgid "_exit, _Exit - terminate the calling process"
msgstr "_exit, _Exit - 呼び出し元のプロセスを終了させる"

#. type: Plain text
#: build/C/man2/_exit.2:34
msgid "B<#include E<lt>unistd.hE<gt>>"
msgstr "B<#include E<lt>unistd.hE<gt>>"

#. type: Plain text
#: build/C/man2/_exit.2:36
msgid "B<void _exit(int >I<status>B<);>"
msgstr "B<void _exit(int >I<status>B<);>"

#. type: Plain text
#: build/C/man2/_exit.2:38 build/C/man3/a64l.3:11
#: build/C/man3/canonicalize_file_name.3:12 build/C/man3/ecvt.3:35
#: build/C/man3/getsubopt.3:28 build/C/man3/qecvt.3:31
#: build/C/man3/strtod.3:48
msgid "B<#include E<lt>stdlib.hE<gt>>"
msgstr "B<#include E<lt>stdlib.hE<gt>>"

#. type: Plain text
#: build/C/man2/_exit.2:40
msgid "B<void _Exit(int >I<status>B<);>"
msgstr "B<void _Exit(int >I<status>B<);>"

#. type: Plain text
#: build/C/man2/_exit.2:44 build/C/man3/a64l.3:19 build/C/man3/atoi.3:50
#: build/C/man3/cfree.3:47 build/C/man3/clearenv.3:37
#: build/C/man3/drand48.3:58 build/C/man3/drand48_r.3:66
#: build/C/man3/ecvt.3:45 build/C/man3/ecvt_r.3:51 build/C/man3/gcvt.3:41
#: build/C/man3/getsubopt.3:35 build/C/man3/mkdtemp.3:37
#: build/C/man3/mkstemp.3:52 build/C/man3/mktemp.3:45
#: build/C/man3/on_exit.3:42 build/C/man3/putenv.3:48 build/C/man3/qecvt.3:43
#: build/C/man3/rand.3:56 build/C/man3/random.3:50 build/C/man3/random_r.3:45
#: build/C/man3/rpmatch.3:40 build/C/man3/setenv.3:50 build/C/man3/strtod.3:58
#: build/C/man3/strtol.3:45 build/C/man3/strtoul.3:48
msgid ""
"Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"

#. type: Plain text
#: build/C/man2/_exit.2:48
msgid "B<_Exit>():"
msgstr "B<_Exit>():"

#. type: Plain text
#: build/C/man2/_exit.2:51 build/C/man3/strtod.3:66
msgid ""
"_XOPEN_SOURCE\\ E<gt>=\\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ "
"200112L;"
msgstr ""
"_XOPEN_SOURCE\\ E<gt>=\\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ "
"200112L;"

#. type: Plain text
#: build/C/man2/_exit.2:54 build/C/man3/atoi.3:60 build/C/man3/strtod.3:69
#: build/C/man3/strtol.3:55 build/C/man3/strtoul.3:58
msgid "or I<cc\\ -std=c99>"
msgstr "または I<cc\\ -std=c99>"

#. type: Plain text
#: build/C/man2/_exit.2:67
msgid ""
"The function B<_exit>()  terminates the calling process \"immediately\".  "
"Any open file descriptors belonging to the process are closed; any children "
"of the process are inherited by process 1, I<init>, and the process's parent "
"is sent a B<SIGCHLD> signal."
msgstr ""
"B<_exit>()  は、それを呼んだプロセスを「直ちに」終了させる。 その際、このプロ"
"セスが所有しているディスクリプタ (descriptor) で、 オープンされているものは全"
"てクローズされる。 また、このプロセスが所有する子プロセスは全て、プロセス番"
"号 1、 つまり I<init> プロセスによって継承され、このプロセスの親プロセスに対"
"して B<SIGCHLD> シグナルが送出される。"

#. type: Plain text
#: build/C/man2/_exit.2:74
msgid ""
"The value I<status> is returned to the parent process as the process's exit "
"status, and can be collected using one of the B<wait>(2)  family of calls."
msgstr ""
"I<status> の値は、このプロセスの終了状態としてその親プロセスに対して返され、 "
"B<wait>(2)  系関数を利用することによって取得することができる。"

#. type: Plain text
#: build/C/man2/_exit.2:79
msgid "The function B<_Exit>()  is equivalent to B<_exit>()."
msgstr "関数 B<_Exit>()  は B<_exit>()  と等価である。"

#. type: Plain text
#: build/C/man2/_exit.2:81
msgid "These functions do not return."
msgstr "これらの関数は値を返さない。"

#. type: Plain text
#: build/C/man2/_exit.2:86
msgid ""
"SVr4, POSIX.1-2001, 4.3BSD.  The function B<_Exit>()  was introduced by C99."
msgstr "SVr4, POSIX.1-2001, 4.3BSD.  関数 B<_Exit>()  は C99 で導入された。"

#. type: Plain text
#: build/C/man2/_exit.2:90
msgid ""
"For a discussion on the effects of an exit, the transmission of exit status, "
"zombie processes, signals sent, etc., see B<exit>(3)."
msgstr ""
"exit の役割・終了状態の受渡し・ ゾンビプロセス・シグナル送出などについての議"
"論は、 B<exit>(3)  を参照すること。"

#. type: Plain text
#: build/C/man2/_exit.2:117
msgid ""
"The function B<_exit>()  is like B<exit>(3), but does not call any functions "
"registered with B<atexit>(3)  or B<on_exit>(3).  Whether it flushes standard "
"I/O buffers and removes temporary files created with B<tmpfile>(3)  is "
"implementation-dependent.  On the other hand, B<_exit>()  does close open "
"file descriptors, and this may cause an unknown delay, waiting for pending "
"output to finish.  If the delay is undesired, it may be useful to call "
"functions like B<tcflush>(3)  before calling B<_exit>().  Whether any "
"pending I/O is canceled, and which pending I/O may be canceled upon B<_exit>"
"(), is implementation-dependent."
msgstr ""
"関数 B<_exit>()  は B<exit>(3)  に似ているが、ANSI C の B<atexit>(3)  や "
"B<on_exit>(3)  によって登録されたいかなる関数も呼び出さない。 標準 I/O バッ"
"ファのフラッシュや、 B<tmpfile>(3)  で作成されたテンポラリファイルの削除を行"
"うかどうかは、実装に依存する。 一方で、 B<_exit>()  はオープンされているファ"
"イルディスクリプタをクローズしないため、 未決定になっている出力がフラッシュさ"
"れるのを待つのに不確定な遅れが発生する。 この遅れを発生させたくなければ、 "
"B<_exit>()  の前に B<tcflush>(3)  のような関数を呼び出せばよい。 B<_exit>()  "
"が呼び出されたときに、 未決定になっている全ての I/O がキャンセルされるのか、 "
"またどの I/O がキャンセルされるのかは実装に依存する。"

#. type: Plain text
#: build/C/man2/_exit.2:124
msgid ""
"In glibc up to version 2.3, the B<_exit>()  wrapper function invoked the "
"kernel system call of the same name.  Since glibc 2.3, the wrapper function "
"invokes B<exit_group>(2), in order to terminate all of the threads in a "
"process."
msgstr ""
"バージョン 2.3 より前の glibc では、 B<_exit>()  のラッパー関数は同じ名前の"
"カーネル・システムコールを起動していた。 glibc 2.3 以降では、プロセス内の全て"
"のスレッドを終了するために、 ラッパー関数は B<exit_group>(2)  を起動する。"

#. type: Plain text
#: build/C/man2/_exit.2:136
msgid ""
"B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), B<wait4>"
"(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), B<termios>(3)"
msgstr ""
"B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), B<wait4>"
"(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), B<termios>(3)"

#. type: TH
#: build/C/man3/a64l.3:6
#, no-wrap
msgid "A64L"
msgstr "A64L"

#. type: Plain text
#: build/C/man3/a64l.3:9
msgid "a64l, l64a - convert between long and base-64"
msgstr "a64l, l64a - long と base-64 を変換する"

#. type: Plain text
#: build/C/man3/a64l.3:13
msgid "B<long a64l(char *>I<str64>B<);>"
msgstr "B<long a64l(char *>I<str64>B<);>"

#. type: Plain text
#: build/C/man3/a64l.3:15
msgid "B<char *l64a(long >I<value>B<);>"
msgstr "B<char *l64a(long >I<value>B<);>"

#. type: Plain text
#: build/C/man3/a64l.3:23
msgid "B<a64l>(), B<l64a>():"
msgstr "B<a64l>(), B<l64a>():"

#. type: Plain text
#: build/C/man3/a64l.3:28 build/C/man3/ecvt.3:64
msgid ""
"_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
"_XOPEN_SOURCE_EXTENDED"
msgstr ""
"_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
"_XOPEN_SOURCE_EXTENDED"

#. type: Plain text
#: build/C/man3/a64l.3:45
msgid ""
"These functions provide a conversion between 32-bit long integers and little-"
"endian base-64 ASCII strings (of length zero to six).  If the string used as "
"argument for B<a64l>()  has length greater than six, only the first six "
"bytes are used.  If the type I<long> has more than 32 bits, then B<l64a>()  "
"uses only the low order 32 bits of I<value>, and B<a64l>()  sign-extends its "
"32-bit result."
msgstr ""
"これらの関数は 32 ビット long 整数と リトルエンディアン base-64 ASCII 文字列 "
"(長さ 0 〜 6) の間の変換を行う。 B<a64l>()  の引き数の文字列が 7 文字以上の場"
"合、 最初の 6 バイトが使われる。 I<long> 型が 32 ビットより大きい場合、 "
"B<l64a>()  は I<value> の下位 32 ビットのみを使い、 B<a64l>()  は 32 ビットの"
"結果を符号拡張 (sign-extend) する。"

#. type: Plain text
#: build/C/man3/a64l.3:47
msgid "The 64 digits in the base-64 system are:"
msgstr "base-64 システムで使われる 64 個の文字は以下の通りである:"

#. type: Plain text
#: build/C/man3/a64l.3:55
#, no-wrap
msgid ""
"\\&\\(aq.\\(aq\trepresents a 0\n"
"\\&\\(aq/\\(aq\trepresents a 1\n"
"0-9\trepresent  2-11\n"
"A-Z\trepresent 12-37\n"
"a-z\trepresent 38-63\n"
msgstr ""
"\\&\\(aq.\\(aq\tは 0 を表す。\n"
"\\&\\(aq/\\(aq\tは 1 を表す。\n"
"0-9\tは 2-11 を表す。\n"
"A-Z\tは 12-37 を表す。\n"
"a-z\tは 38-63 を表す。\n"

#. type: Plain text
#: build/C/man3/a64l.3:59
msgid "So 123 = 59*64^0 + 1*64^1 = \"v/\"."
msgstr "よって 123 = 59*64^0 + 1*64^1 = \"v/\" である。"

#. type: Plain text
#: build/C/man3/a64l.3:61 build/C/man3/getsubopt.3:129
msgid "POSIX.1-2001."
msgstr "POSIX.1-2001."

#. type: Plain text
#: build/C/man3/a64l.3:66
msgid ""
"The value returned by B<l64a>()  may be a pointer to a static buffer, "
"possibly overwritten by later calls."
msgstr ""
"B<l64a>()  で返される値は静的バッファへのポインタかもしれないので、 以降の呼"
"び出しで上書きされる可能性がある。"

#. type: Plain text
#: build/C/man3/a64l.3:75
msgid ""
"The behavior of B<l64a>()  is undefined when I<value> is negative.  If "
"I<value> is zero, it returns an empty string."
msgstr ""
"I<value> が負の場合、 B<l64a>()  の動作は定義されていない。 I<value> が 0 の"
"場合は空文字列を返す。"

#. type: Plain text
#: build/C/man3/a64l.3:78
msgid ""
"These functions are broken in glibc before 2.2.5 (puts most significant "
"digit first)."
msgstr ""
"これらの関数は glibc 2.2.5 以前では間違っている (最上位デジットを最初にしてい"
"る)。"

#. type: Plain text
#: build/C/man3/a64l.3:81
msgid "This is not the encoding used by B<uuencode>(1)."
msgstr "これは B<uuencode>(1)  で使われるエンコーディングではない。"

#.  .BR itoa (3),
#. type: Plain text
#: build/C/man3/a64l.3:85
msgid "B<uuencode>(1), B<strtoul>(3)"
msgstr "B<uuencode>(1), B<strtoul>(3)"

#. type: TH
#: build/C/man3/atexit.3:31
#, no-wrap
msgid "ATEXIT"
msgstr "ATEXIT"

#. type: TH
#: build/C/man3/atexit.3:31 build/C/man3/on_exit.3:29
#, no-wrap
msgid "2008-12-05"
msgstr "2008-12-05"

#. type: Plain text
#: build/C/man3/atexit.3:34
msgid "atexit - register a function to be called at normal process termination"
msgstr "atexit - プロセスが正常終了した時に呼び出される関数を登録する"

#. type: Plain text
#: build/C/man3/atexit.3:39
#, no-wrap
msgid "B<int atexit(void (*>I<function>B<)(void));>\n"
msgstr "B<int atexit(void (*>I<function>B<)(void));>\n"

#. type: Plain text
#: build/C/man3/atexit.3:49
msgid ""
"The B<atexit>()  function registers the given I<function> to be called at "
"normal process termination, either via B<exit>(3)  or via return from the "
"program's I<main>().  Functions so registered are called in the reverse "
"order of their registration; no arguments are passed."
msgstr ""
"B<atexit>()  関数は、与えられた I<function> を、 B<exit>(3)  やプログラムの "
"I<main>()  関数からの返りを通じて、プロセスが正常終了した時に呼び出される 関"
"数として登録する。 ここで定義された関数は、登録した順番とは逆の順番で呼び出さ"
"れる。 登録した関数に引き数は渡されない。"

#. type: Plain text
#: build/C/man3/atexit.3:52 build/C/man3/on_exit.3:60
msgid ""
"The same function may be registered multiple times: it is called once for "
"each registration."
msgstr ""
"同じ関数を複数回登録してもよい。 登録された関数は登録 1 回につき 1 回呼び出さ"
"れる。"

#. type: Plain text
#: build/C/man3/atexit.3:58
msgid ""
"POSIX.1-2001 requires that an implementation allow at least B<ATEXIT_MAX> "
"(32) such functions to be registered.  The actual limit supported by an "
"implementation can be obtained using B<sysconf>(3)."
msgstr ""
"POSIX.1-2001 では、このような関数を少なくとも B<ATEXIT_MAX> 個 (32個) 登録で"
"きることを要求している。 その実装でサポートされている実際の上限は B<sysconf>"
"(3)  を使って取得できる。"

#. type: Plain text
#: build/C/man3/atexit.3:66 build/C/man3/on_exit.3:67
msgid ""
"When a child process is created via B<fork>(2), it inherits copies of its "
"parent's registrations.  Upon a successful call to one of the B<exec>(3)  "
"functions, all registrations are removed."
msgstr ""
"B<fork>(2) で作成された場合、子プロセスは親プロセスの登録のコピーを継承す"
"る。\n"
"B<exec>(3) ファミリーの関数の場合、呼び出しに成功すると、 全ての登録が削除さ"
"れる。"

#. type: Plain text
#: build/C/man3/atexit.3:71
msgid ""
"The B<atexit>()  function returns the value 0 if successful; otherwise it "
"returns a nonzero value."
msgstr ""
"B<atexit>()  関数は、関数登録が成功した時には 0 を返す。 その他の場合には 0 "
"以外の値を返す。"

#. type: Plain text
#: build/C/man3/atexit.3:73
msgid "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
msgstr "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."

#. type: Plain text
#: build/C/man3/atexit.3:80
msgid ""
"Functions registered using B<atexit>()  (and B<on_exit>(3))  are not called "
"if a process terminates abnormally because of the delivery of a signal."
msgstr ""
"B<atexit>()  (と B<on_exit>(3))  を使って登録された関数は、 シグナルの配送に"
"よりプロセスが異常終了した場合には呼び出されない。"

#. type: Plain text
#: build/C/man3/atexit.3:87
msgid ""
"If one of the functions registered functions calls B<_exit>(2), then any "
"remaining functions are not invoked, and the other process termination steps "
"performed by B<exit>(3)  are not performed."
msgstr ""
"登録された関数の一つが B<_exit>(2)  を呼び出した場合、残りの関数はどれも起動"
"されず、 B<exit>(3)  により実行される他のプロセス終了ステップは実行されない。"

#.  This can happen on OpenBSD 4.2 for example, and is documented
#.  as occurring on FreeBSD as well.
#.  Glibc does "the Right Thing" -- invocation of the remaining
#.  exit handlers carries on as normal.
#. type: Plain text
#: build/C/man3/atexit.3:104
msgid ""
"POSIX.1-2001 says that the result of calling B<exit>(3)  more than once (i."
"e., calling B<exit>(3)  within a function registered using B<atexit>())  is "
"undefined.  On some systems (but not Linux), this can result in an infinite "
"recursion; portable programs should not invoke B<exit>(3)  inside a function "
"registered using B<atexit>()."
msgstr ""
"POSIX.1-2001 では、 B<atexit>()  を使って登録された一つの関数内で、複数回 "
"B<exit>(3)  を呼び出した際の結果は未定義である。 (Linux ではないが) いくつか"
"のシステムでは、この場合、 繰り返しが無限に起こることになる。 移植性が必要な"
"プログラムでは、 B<atexit>()  で登録された関数内で B<exit>(3)  を起動すべきで"
"はない。"

#. type: Plain text
#: build/C/man3/atexit.3:113
msgid ""
"The B<atexit>()  and B<on_exit>(3)  functions register functions on the same "
"list: at normal process termination, the registered functions are invoked in "
"reverse order of their registration by these two functions."
msgstr ""
"B<atexit>()  と B<on_exit>(3)  は、同じリストに対して関数を登録する。 プロセ"
"スが正常に終了した際には、 これらの二つの関数で登録された順序の逆順で、 登録"
"された関数が起動される。"

#.  In glibc, things seem to be handled okay
#. type: Plain text
#: build/C/man3/atexit.3:119
msgid ""
"POSIX.1-2001 says that the result is undefined if B<longjmp>(3)  is used to "
"terminate execution of one of the functions registered B<atexit>()."
msgstr ""
"POSIX.1-2001 では、 B<atexit>()  で登録された関数の実行を終了するために "
"B<longjmp>(3)  が使用された場合の結果は未定義である。"

#. type: SS
#: build/C/man3/atexit.3:119
#, no-wrap
msgid "Linux Notes"
msgstr "Linux での注意"

#. type: Plain text
#: build/C/man3/atexit.3:126
msgid ""
"Since glibc 2.2.3, B<atexit>()  (and B<on_exit>(3))  can be used within a "
"shared library to establish functions that are called when the shared "
"library is unloaded."
msgstr ""
"glibc 2.2.3 以降では、共有ライブラリがアンロードされるときに呼ばれる 関数を登"
"録するために、共有ライブラリの中で B<atexit>()  (と B<on_exit>(3))  を使用す"
"ることができる。"

#. type: SH
#: build/C/man3/atexit.3:126 build/C/man3/getsubopt.3:136
#: build/C/man3/rand.3:158 build/C/man3/rpmatch.3:102
#: build/C/man3/strtod.3:172 build/C/man3/strtol.3:179
#: build/C/man3/strtoul.3:183
#, no-wrap
msgid "EXAMPLE"
msgstr "例"

#. type: Plain text
#: build/C/man3/atexit.3:131
#, no-wrap
msgid ""
"#include E<lt>stdio.hE<gt>\n"
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>unistd.hE<gt>\n"
msgstr ""
"#include E<lt>stdio.hE<gt>\n"
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>unistd.hE<gt>\n"

#. type: Plain text
#: build/C/man3/atexit.3:137
#, no-wrap
msgid ""
"void\n"
"bye(void)\n"
"{\n"
"    printf(\"That was all, folks\\en\");\n"
"}\n"
msgstr ""
"void\n"
"bye(void)\n"
"{\n"
"    printf(\"That was all, folks\\en\");\n"
"}\n"

#. type: Plain text
#: build/C/man3/atexit.3:143
#, no-wrap
msgid ""
"int\n"
"main(void)\n"
"{\n"
"    long a;\n"
"    int i;\n"
msgstr ""
"int\n"
"main(void)\n"
"{\n"
"    long a;\n"
"    int i;\n"

#. type: Plain text
#: build/C/man3/atexit.3:146
#, no-wrap
msgid ""
"    a = sysconf(_SC_ATEXIT_MAX);\n"
"    printf(\"ATEXIT_MAX = %ld\\en\", a);\n"
msgstr ""
"    a = sysconf(_SC_ATEXIT_MAX);\n"
"    printf(\"ATEXIT_MAX = %ld\\en\", a);\n"

#. type: Plain text
#: build/C/man3/atexit.3:152
#, no-wrap
msgid ""
"    i = atexit(bye);\n"
"    if (i != 0) {\n"
"        fprintf(stderr, \"cannot set exit function\\en\");\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"
msgstr ""
"    i = atexit(bye);\n"
"    if (i != 0) {\n"
"        fprintf(stderr, \"cannot set exit function\\en\");\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"

#. type: Plain text
#: build/C/man3/atexit.3:155 build/C/man3/getsubopt.3:223
#: build/C/man3/rand.3:213 build/C/man3/strtol.3:259
#, no-wrap
msgid ""
"    exit(EXIT_SUCCESS);\n"
"}\n"
msgstr ""
"    exit(EXIT_SUCCESS);\n"
"}\n"

#. type: Plain text
#: build/C/man3/atexit.3:160
msgid "B<_exit>(2), B<exit>(3), B<on_exit>(3)"
msgstr "B<_exit>(2), B<exit>(3), B<on_exit>(3)"

#. type: TH
#: build/C/man3/atof.3:29
#, no-wrap
msgid "ATOF"
msgstr "ATOF"

#. type: TH
#: build/C/man3/atof.3:29
#, no-wrap
msgid "1993-03-29"
msgstr "1993-03-29"

#. type: TH
#: build/C/man3/atof.3:29 build/C/man3/atoi.3:31
#: build/C/man3/canonicalize_file_name.3:5 build/C/man3/drand48_r.3:25
#: build/C/man3/ecvt_r.3:28 build/C/man3/getenv.3:31
#: build/C/man3/getsubopt.3:23 build/C/man3/malloc.3:28
#: build/C/man3/mblen.3:14 build/C/man3/mbstowcs.3:14 build/C/man3/mbtowc.3:14
#: build/C/man3/mkdtemp.3:24 build/C/man3/mkstemp.3:33
#: build/C/man3/mktemp.3:32 build/C/man3/on_exit.3:29 build/C/man3/putenv.3:34
#: build/C/man3/qecvt.3:26 build/C/man3/random.3:31 build/C/man3/random_r.3:24
#: build/C/man3/rpmatch.3:27 build/C/man3/setenv.3:35 build/C/man3/strtol.3:29
#: build/C/man3/strtoul.3:31 build/C/man3/wcstombs.3:14
#: build/C/man3/wctomb.3:14
#, no-wrap
msgid "GNU"
msgstr "GNU"

#. type: Plain text
#: build/C/man3/atof.3:32
msgid "atof - convert a string to a double"
msgstr "atof - 文字列を double 型の数値に変換"

#. type: Plain text
#: build/C/man3/atof.3:37
#, no-wrap
msgid "B<double atof(const char *>I<nptr>B<);>\n"
msgstr "B<double atof(const char *>I<nptr>B<);>\n"

#. type: Plain text
#: build/C/man3/atof.3:45
msgid ""
"The B<atof>()  function converts the initial portion of the string pointed "
"to by I<nptr> to I<double>.  The behavior is the same as"
msgstr ""
"B<atof>()  関数は、I<nptr>によって指示される文字列のはじめの部分を I<double> "
"型の数値に変換する。 この振る舞いは、 B<atof>()  関数がエラーを見つけないこと"
"を除いては、"

#. type: Plain text
#: build/C/man3/atof.3:48
msgid "strtod(nptr, (char **) NULL);"
msgstr "strtod(nptr, (char **) NULL);"

#. type: Plain text
#: build/C/man3/atof.3:53
msgid "except that B<atof>()  does not detect errors."
msgstr "と同じである。"

#. type: Plain text
#: build/C/man3/atof.3:55 build/C/man3/atoi.3:91
msgid "The converted value."
msgstr "変換された値。"

#. type: Plain text
#: build/C/man3/atof.3:57 build/C/man3/getenv.3:56
msgid "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
msgstr "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."

#. type: Plain text
#: build/C/man3/atof.3:63
msgid "B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
msgstr "B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"

#. type: TH
#: build/C/man3/atoi.3:31
#, no-wrap
msgid "ATOI"
msgstr "ATOI"

#. type: Plain text
#: build/C/man3/atoi.3:34
msgid "atoi, atol, atoll, atoq - convert a string to an integer"
msgstr "atoi, atol, atoll, atoq - 文字列を整数型に変換する"

#. type: Plain text
#: build/C/man3/atoi.3:39
#, no-wrap
msgid "B<int atoi(const char *>I<nptr>B<);>\n"
msgstr "B<int atoi(const char *>I<nptr>B<);>\n"

#. type: Plain text
#: build/C/man3/atoi.3:41
#, no-wrap
msgid "B<long atol(const char *>I<nptr>B<);>\n"
msgstr "B<long atol(const char *>I<nptr>B<);>\n"

#. type: Plain text
#: build/C/man3/atoi.3:43
#, no-wrap
msgid "B<long long atoll(const char *>I<nptr>B<);>\n"
msgstr "B<long long atoll(const char *>I<nptr>B<);>\n"

#. type: Plain text
#: build/C/man3/atoi.3:45
#, no-wrap
msgid "B<long long atoq(const char *>I<nptr>B<);>\n"
msgstr "B<long long atoq(const char *>I<nptr>B<);>\n"

#. type: Plain text
#: build/C/man3/atoi.3:54
msgid "B<atoll>():"
msgstr "B<atoll>():"

#. type: Plain text
#: build/C/man3/atoi.3:57
msgid ""
"_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
"_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
msgstr ""
"_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 600 || "
"_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"

#. type: Plain text
#: build/C/man3/atoi.3:69
msgid ""
"The B<atoi>()  function converts the initial portion of the string pointed "
"to by I<nptr> to I<int>.  The behavior is the same as"
msgstr ""
"B<atoi>()  関数は、I<nptr> によって指示される文字列のはじめの部分を I<int> 型"
"整数に変換する。 この振る舞いは、 B<atoi>()  関数がエラーを見つけない点以外"
"は、"

#. type: Plain text
#: build/C/man3/atoi.3:72
msgid "strtol(nptr, (char **) NULL, 10);"
msgstr "strtol(nptr, (char **) NULL, 10);"

#. type: Plain text
#: build/C/man3/atoi.3:77
msgid "except that B<atoi>()  does not detect errors."
msgstr "と同じである。"

#. type: Plain text
#: build/C/man3/atoi.3:89
msgid ""
"The B<atol>()  and B<atoll>()  functions behave the same as B<atoi>(), "
"except that they convert the initial portion of the string to their return "
"type of I<long> or I<long long>.  B<atoq>()  is an obsolete name for B<atoll>"
"()."
msgstr ""
"B<atol>()  関数と B<atoll>()  関数は B<atoi>()  と同様の振る舞いをするが、 文"
"字列のはじめの部分をそれぞれ I<long> や I<long long> に変換する。 B<atoq>()  "
"は B<atoll>()  の古い名前である。"

#. type: Plain text
#: build/C/man3/atoi.3:101
msgid ""
"SVr4, POSIX.1-2001, 4.3BSD, C99.  C89 and POSIX.1-1996 include the functions "
"B<atoi>()  and B<atol>()  only.  B<atoq>()  is a GNU extension."
msgstr ""
"SVr4, POSIX.1-2001, 4.3BSD, C99.  C89 と POSIX.1-1996 には B<atoi>()  と "
"B<atol>()  だけが含まれている。 B<atoq>()  は GNU による拡張である。"

#. type: Plain text
#: build/C/man3/atoi.3:111
msgid ""
"The nonstandard B<atoq>()  function is not present in libc 4.6.27 or glibc "
"2, but is present in libc5 and libc 4.7 (though only as an inline function "
"in I<E<lt>stdlib.hE<gt>> until libc 5.4.44).  The B<atoll>()  function is "
"present in glibc 2 since version 2.0.2, but not in libc4 or libc5."
msgstr ""
"非標準である B<atoq>()  関数は libc 4.6.27 や glibc 2 には含まれていないが、 "
"libc5 と libc 4.7 には存在している (ただし libc 5.4.44 までは I<E<lt>stdlib."
"hE<gt>> のインライン関数のみである)。 B<atoll>()  関数は glibc 2 のバージョ"
"ン 2.0.2 から存在しているが、 libc4 や libc5 には存在しない。"

#. type: Plain text
#: build/C/man3/atoi.3:116
msgid "B<atof>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
msgstr "B<atof>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"

#. type: TH
#: build/C/man3/canonicalize_file_name.3:5
#, no-wrap
msgid "CANONICALIZE_FILE_NAME"
msgstr "CANONICALIZE_FILE_NAME"

#. type: TH
#: build/C/man3/canonicalize_file_name.3:5
#, no-wrap
msgid "2005-07-14"
msgstr "2005-07-14"

#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:8
msgid "canonicalize_file_name - return the canonicalized filename"
msgstr "canonicalize_file_name - 正規化されたファイル名を返す"

#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:10
msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"

#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:14
msgid "B<char *canonicalize_file_name(const char *>I<path>B<);>"
msgstr "B<char *canonicalize_file_name(const char *>I<path>B<);>"

#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:19
msgid ""
"The call I<canonicalize_file_name(path)> is equivalent to the call I<realpath"
"(path,\\ NULL)>."
msgstr ""
"I<canonicalize_file_name(path)> は I<realpath(path,\\ NULL)> と等価である。"

#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:21
msgid "The function is a GNU extension."
msgstr "この関数は GNU による拡張である。"

#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:23
msgid "B<realpath>(3)"
msgstr "B<realpath>(3)"

#. type: TH
#: build/C/man3/cfree.3:23
#, no-wrap
msgid "CFREE"
msgstr "CFREE"

#. type: TH
#: build/C/man3/cfree.3:23 build/C/man3/drand48.3:28
#: build/C/man3/drand48_r.3:25 build/C/man3/ecvt_r.3:28
#: build/C/man3/putenv.3:34 build/C/man3/rpmatch.3:27
#, no-wrap
msgid "2007-07-26"
msgstr "2007-07-26"

#. type: Plain text
#: build/C/man3/cfree.3:26
msgid "cfree - free allocated memory"
msgstr "cfree - 割り当てられたメモリを解放する"

#. type: Plain text
#: build/C/man3/cfree.3:33
#, no-wrap
msgid ""
"/* In SunOS 4 */\n"
"B<int cfree(void *>I<ptr>B<);>\n"
msgstr ""
"/* SunOS 4 では */\n"
"B<int cfree(void *>I<ptr>B<);>\n"

#. type: Plain text
#: build/C/man3/cfree.3:36
#, no-wrap
msgid ""
"/* In glibc or FreeBSD libcompat */\n"
"B<void cfree(void *>I<ptr>B<);>\n"
msgstr ""
"/* glibc と FreeBSD libcompat では */\n"
"B<void cfree(void *>I<ptr>B<);>\n"

#. type: Plain text
#: build/C/man3/cfree.3:39
#, no-wrap
msgid ""
"/* In SCO OpenServer */\n"
"B<void cfree(char *>I<ptr>B<, unsigned >I<num>B<, unsigned >I<size>B<);>\n"
msgstr ""
"/* SCO OpenServer では */\n"
"B<void cfree(char *>I<ptr>B<, unsigned >I<num>B<, unsigned >I<size>B<);>\n"

#. type: Plain text
#: build/C/man3/cfree.3:42
#, no-wrap
msgid ""
"/* In Solaris watchmalloc.so.1 */\n"
"B<void cfree(void *>I<ptr>B<, size_t >I<nelem>B<, size_t >I<elsize>B<);>\n"
msgstr ""
"/* Solaris watchmalloc.so.1 では */\n"
"B<void cfree(void *>I<ptr>B<, size_t >I<nelem>B<, size_t >I<elsize>B<);>\n"

#. type: Plain text
#: build/C/man3/cfree.3:51
msgid "B<cfree>(): _BSD_SOURCE || _SVID_SOURCE"
msgstr "B<cfree>(): _BSD_SOURCE || _SVID_SOURCE"

#. type: Plain text
#: build/C/man3/cfree.3:56
msgid "This function should never be used.  Use B<free>(3)  instead."
msgstr "この関数は決して使用すべきではない。 代わりに B<free>(3)  を使うこと。"

#. type: SS
#: build/C/man3/cfree.3:56
#, no-wrap
msgid "1-arg cfree"
msgstr "引き数が 1 つの cfree"

#. type: Plain text
#: build/C/man3/cfree.3:62
msgid ""
"In glibc, the function B<cfree>()  is a synonym for B<free>(3), \"added for "
"compatibility with SunOS\"."
msgstr ""
"glibc では、関数 B<cfree>()  は B<free>(3)  の別名であり、「SunOS との互換性"
"のために追加された」。"

#. type: Plain text
#: build/C/man3/cfree.3:68
msgid ""
"Other systems have other functions with this name.  The declaration is "
"sometimes in I<E<lt>stdlib.hE<gt>> and sometimes in I<E<lt>malloc.hE<gt>>."
msgstr ""
"他のシステムでは、この名前の別の関数がある。 この宣言は I<E<lt>stdlib."
"hE<gt>> に存在する場合もあるし、 I<E<lt>malloc.hE<gt>> に存在する場合もある。"

#. type: SS
#: build/C/man3/cfree.3:68
#, no-wrap
msgid "3-arg cfree"
msgstr "引き数が 3 つの cfree"

#. type: Plain text
#: build/C/man3/cfree.3:73
msgid ""
"Some SCO and Solaris versions have malloc libraries with a 3-argument "
"B<cfree>(), apparently as an analog to B<calloc>(3)."
msgstr ""
"SCO と Solaris のいくつかのバージョンでは、 引き数が 3 つの B<cfree>()  が含"
"まれる malloc ライブラリがある。 これは明らかに B<calloc>(3)  に類似してい"
"る。"

#. type: Plain text
#: build/C/man3/cfree.3:75
msgid "If you need it while porting something, add"
msgstr "何かを移植する時にこの関数が必要な場合、"

#. type: Plain text
#: build/C/man3/cfree.3:78
msgid "#define cfree(p, n, s) free((p))"
msgstr "#define cfree(p, n, s) free((p))"

#. type: Plain text
#: build/C/man3/cfree.3:81
msgid "to your file."
msgstr "をファイルに追加すること。"

#. type: Plain text
#: build/C/man3/cfree.3:90
msgid ""
"A frequently asked question is \"Can I use B<free>(3)  to free memory "
"allocated with B<calloc>(3), or do I need B<cfree>()?\" Answer: use B<free>"
"(3)."
msgstr ""
"よく尋ねられる質問は 「B<calloc>(3)  で割り当てられたメモリを解放するのに "
"B<free>(3)  を使うことができるか、 それとも B<cfree>()  を使う必要があるか」"
"というものである。 答え: B<free>(3)  を使うこと。"

#. type: Plain text
#: build/C/man3/cfree.3:95
msgid ""
"An SCO manual writes: \"The cfree routine is provided for compliance to the "
"iBCSe2 standard and simply calls free.  The num and size arguments to cfree "
"are not used.\""
msgstr ""
"SCO のマニュアルには以下のように記述されている: 「cfree ルーチンは iBCSe2 規"
"格に従うために提供されており、 単に free を呼んでいるだけである。 cfree の "
"num と size 引き数は使用されない。」"

#. type: Plain text
#: build/C/man3/cfree.3:111
msgid ""
"The SunOS version of B<cfree>()  (which is a synonym for B<free>(3))  "
"returns 1 on success and 0 on failure.  In case of error, I<errno> is set to "
"B<EINVAL>: the value of I<ptr> was not a pointer to a block previously "
"allocated by one of the routines in the B<malloc>(3)  family."
msgstr ""
"SunOS 版の B<cfree>()  (B<free>(3)  の別名) は、成功した場合に 1 を返し、失敗"
"した場合に 0 を返す。 エラーの場合、 I<errno> が B<EINVAL> に設定される: "
"I<ptr> の値が B<malloc>()  系のルーチンの 1 つで以前に割り当てられた ブロック"
"へのポインタでない。"

#. type: Plain text
#: build/C/man3/cfree.3:116
msgid ""
"The 3-argument version of B<cfree>()  as used by SCO conforms to the iBCSe2 "
"standard: Intel386 Binary Compatibility Specification, Edition 2."
msgstr ""
"SCO で用いられている引き数が 3 つの B<cfree>()  は、iBCSe2 規格: Intel386 "
"Binary Compatibility Specification, Edition 2 (Intel386 バイナリ互換仕様、第 "
"2 版) に準拠する。"

#. type: Plain text
#: build/C/man3/cfree.3:118
msgid "B<malloc>(3)"
msgstr "B<malloc>(3)"

#. type: TH
#: build/C/man3/clearenv.3:24
#, no-wrap
msgid "CLEARENV"
msgstr "CLEARENV"

#. type: TH
#: build/C/man3/clearenv.3:24
#, no-wrap
msgid "2010-10-04"
msgstr "2010-10-04"

#. type: Plain text
#: build/C/man3/clearenv.3:27
msgid "clearenv - clear the environment"
msgstr "clearenv - 環境 (environment) をクリアする"

#. type: Plain text
#: build/C/man3/clearenv.3:32
#, no-wrap
msgid "B<int clearenv(void);>\n"
msgstr "B<int clearenv(void);>\n"

#. type: Plain text
#: build/C/man3/clearenv.3:41
msgid "B<clearenv>(): _SVID_SOURCE || _BSD_SOURCE"
msgstr "B<clearenv>(): _SVID_SOURCE || _BSD_SOURCE"

#. type: Plain text
#: build/C/man3/clearenv.3:48
msgid ""
"The B<clearenv>()  function clears the environment of all name-value pairs "
"and sets the value of the external variable I<environ> to NULL."
msgstr ""
"B<clearenv>()  関数は、名前と値が組になった全ての環境をクリアする。 さらに外"
"部変数 I<environ> の値を NULL にする。"

#.  Most versions of UNIX return -1 on error, or do not even have errors.
#.  Glibc info and the Watcom C library document "a nonzero value".
#. type: Plain text
#: build/C/man3/clearenv.3:55
msgid ""
"The B<clearenv>()  function returns zero on success, and a nonzero value on "
"failure."
msgstr ""
"B<clearenv>()  関数は、成功した場合は 0 を返し、 失敗した場合は 0 以外を返"
"す。"

#. type: SH
#: build/C/man3/clearenv.3:55 build/C/man3/getloadavg.3:61
#: build/C/man3/mkdtemp.3:82 build/C/man3/mkstemp.3:169
#, no-wrap
msgid "VERSIONS"
msgstr "バージョン"

#. type: Plain text
#: build/C/man3/clearenv.3:58
msgid "Not in libc4, libc5.  In glibc since glibc 2.0."
msgstr "libc4, libc5 では使用できない。 glibc 2.0 以降の glibc で使用できる。"

#. type: Plain text
#: build/C/man3/clearenv.3:72
msgid ""
"Various UNIX variants (DG/UX, HP-UX, QNX, ...).  POSIX.9 (bindings for "
"FORTRAN77).  POSIX.1-1996 did not accept B<clearenv>()  and B<putenv>(3), "
"but changed its mind and scheduled these functions for some later issue of "
"this standard (cf. B.4.6.1).  However, POSIX.1-2001 only adds B<putenv>(3), "
"and rejected B<clearenv>()."
msgstr ""
"(DG/UX, HP-UX, QNX, などの) 多くの UNIX 系 OS。 (FORTRAN77 へのバインディング"
"である) POSIX.9。 POSIX.1-1996 では B<clearenv>()  と B<putenv>(3)  は採用さ"
"れなかったが、 方針が変更され、この標準規格の以降の号 (B.4.6.1 を参照) では "
"採用されることになった。 しかし POSIX.1-2001 では B<putenv>(3)  しか追加され"
"ず、 B<clearenv>()  の追加は否決された。"

#. type: Plain text
#: build/C/man3/clearenv.3:76
msgid ""
"Used in security-conscious applications.  If it is unavailable the assignment"
msgstr ""
"この関数はセキュリティに考慮したアプリケーションで使われる。 この関数が使用で"
"きない場合は、"

#. type: Plain text
#: build/C/man3/clearenv.3:79
#, no-wrap
msgid "    environ = NULL;\n"
msgstr "    environ = NULL;\n"

#. type: Plain text
#: build/C/man3/clearenv.3:82
msgid "will probably do."
msgstr "というように変数 environ を設定すればよい。"

#.  .LP
#.  HP-UX has a ENOMEM error return.
#. type: Plain text
#: build/C/man3/clearenv.3:95
msgid ""
"The DG/UX and Tru64 man pages write: If I<environ> has been modified by "
"anything other than the B<putenv>(3), B<getenv>(3), or B<clearenv>()  "
"functions, then B<clearenv>()  will return an error and the process "
"environment will remain unchanged."
msgstr ""
"DG/UX と Tru64 man ページには次のように記されている： I<environ> が B<putenv>"
"(3), B<getenv>(3), B<clearenv>()  関数以外で変更された場合、 B<clearenv>()  "
"はエラーを返し、プロセス環境は変更前のままにされる。"

#. type: Plain text
#: build/C/man3/clearenv.3:101
msgid "B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
msgstr ""
"B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"

#. type: TH
#: build/C/man3/drand48.3:28
#, no-wrap
msgid "DRAND48"
msgstr "DRAND48"

#. type: Plain text
#: build/C/man3/drand48.3:32
msgid ""
"drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, "
"lcong48 - generate uniformly distributed pseudo-random numbers"
msgstr ""
"drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, "
"lcong48 - 一様分布する疑似乱数を生成する関数"

#. type: Plain text
#: build/C/man3/drand48.3:37
#, no-wrap
msgid "B<double drand48(void);>\n"
msgstr "B<double drand48(void);>\n"

#. type: Plain text
#: build/C/man3/drand48.3:39
#, no-wrap
msgid "B<double erand48(unsigned short >I<xsubi>B<[3]);>\n"
msgstr "B<double erand48(unsigned short >I<xsubi>B<[3]);>\n"

#. type: Plain text
#: build/C/man3/drand48.3:41
#, no-wrap
msgid "B<long int lrand48(void);>\n"
msgstr "B<long int lrand48(void);>\n"

#. type: Plain text
#: build/C/man3/drand48.3:43
#, no-wrap
msgid "B<long int nrand48(unsigned short >I<xsubi>B<[3]);>\n"
msgstr "B<long int nrand48(unsigned short >I<xsubi>B<[3]);>\n"

#. type: Plain text
#: build/C/man3/drand48.3:45
#, no-wrap
msgid "B<long int mrand48(void);>\n"
msgstr "B<long int mrand48(void);>\n"

#. type: Plain text
#: build/C/man3/drand48.3:47
#, no-wrap
msgid "B<long int jrand48(unsigned short >I<xsubi>B<[3]);>\n"
msgstr "B<long int jrand48(unsigned short >I<xsubi>B<[3]);>\n"

#. type: Plain text
#: build/C/man3/drand48.3:49
#, no-wrap
msgid "B<void srand48(long int >I<seedval>B<);>\n"
msgstr "B<void srand48(long int >I<seedval>B<);>\n"

#. type: Plain text
#: build/C/man3/drand48.3:51
#, no-wrap
msgid "B<unsigned short *seed48(unsigned short >I<seed16v>B<[3]);>\n"
msgstr "B<unsigned short *seed48(unsigned short >I<seed16v>B<[3]);>\n"

#. type: Plain text
#: build/C/man3/drand48.3:53
#, no-wrap
msgid "B<void lcong48(unsigned short >I<param>B<[7]);>\n"
msgstr "B<void lcong48(unsigned short >I<param>B<[7]);>\n"

#.  .BR drand48 (),
#.  .BR erand48 (),
#.  .BR lrand48 (),
#.  .BR nrand48 (),
#.  .BR mrand48 (),
#.  .BR jrand48 (),
#.  .BR srand48 (),
#.  .BR seed48 (),
#.  .BR lcong48 ():
#. type: Plain text
#: build/C/man3/drand48.3:72
msgid "All functions shown above: _SVID_SOURCE || _XOPEN_SOURCE"
msgstr "上記の全ての関数: _SVID_SOURCE || _XOPEN_SOURCE"

#. type: Plain text
#: build/C/man3/drand48.3:76
msgid ""
"These functions generate pseudo-random numbers using the linear congruential "
"algorithm and 48-bit integer arithmetic."
msgstr ""
"これらの関数は線形合同アルゴリズムと 48ビット整数演算を用いて 疑似乱数を生成"
"する。"

#. type: Plain text
#: build/C/man3/drand48.3:84
msgid ""
"The B<drand48>()  and B<erand48>()  functions return nonnegative double-"
"precision floating-point values uniformly distributed between [0.0, 1.0)."
msgstr ""
"関数 B<drand48>()  と B<erand48>()  は、区間 [0.0, 1.0) で 一様分布する非負の"
"倍精度浮動小数点実数値を返す。"

#. type: Plain text
#: build/C/man3/drand48.3:91
msgid ""
"The B<lrand48>()  and B<nrand48>()  functions return nonnegative long "
"integers uniformly distributed between 0 and 2^31."
msgstr ""
"関数 B<lrand48>()  と B<nrand48>()  は 0 と 2^31 の間で一様分布する 非負のロ"
"ング整数を返す。"

#. type: Plain text
#: build/C/man3/drand48.3:98
msgid ""
"The B<mrand48>()  and B<jrand48>()  functions return signed long integers "
"uniformly distributed between -2^31 and 2^31."
msgstr ""
"関数 B<mrand48>()  と B<jrand48>()  は -2^31 と 2^31 の間で一様分布する符号付"
"きロング整数を返す。"

#. type: Plain text
#: build/C/man3/drand48.3:117
msgid ""
"The B<srand48>(), B<seed48>()  and B<lcong48>()  functions are "
"initialization functions, one of which should be called before using "
"B<drand48>(), B<lrand48>()  or B<mrand48>().  The functions B<erand48>(), "
"B<nrand48>()  and B<jrand48>()  do not require an initialization function to "
"be called first."
msgstr ""
"関数 B<srand48>(), B<seed48>(), B<lcong48>()  は初期化関数 である。 関数 "
"B<drand48>(), B<lrand48>(), B<mrand48>()  を 使用する前に、これらの初期化関数"
"のいずれかを呼ぶべきである。 関数 B<erand48>(), B<nrand48>(), B<jrand48>()  "
"は初めに 初期化関数を呼ぶことを必要としない。"

#. type: Plain text
#: build/C/man3/drand48.3:120
msgid ""
"All the functions work by generating a sequence of 48-bit integers, I<Xi>, "
"according to the linear congruential formula:"
msgstr ""
"ここで説明しているすべての関数は 48ビットの整数の シーケンス (I<Xi>) を生成す"
"ることで 機能している。生成方法は以下の線形合同の式による。"

#. type: Plain text
#: build/C/man3/drand48.3:124
#, no-wrap
msgid "B<Xn+1 = (aXn + c) mod m, where n E<gt>= 0>\n"
msgstr "B<Xn+1 = (aXn + c) mod m,>\n"

#. type: Plain text
#: build/C/man3/drand48.3:131
msgid ""
"The parameter I<m> = 2^48, hence 48-bit integer arithmetic is performed.  "
"Unless B<lcong48>()  is called, I<a> and I<c> are given by:"
msgstr ""
"ここで n E<gt>= 0 である。 パラメータが I<m> = 2^48 であるため、48ビット整数"
"演算が行われている。 B<lcong48>()  が呼ばれていない場合、I<a> と I<c> は以下"
"の式で与えられる。"

#. type: Plain text
#: build/C/man3/drand48.3:136
#, no-wrap
msgid ""
"B<a = 0x5DEECE66D>\n"
"B<c = 0xB>\n"
msgstr ""
"B<a = 0x5DEECE66D>\n"
"B<c = 0xB>\n"

#. type: Plain text
#: build/C/man3/drand48.3:152
msgid ""
"The value returned by any of the functions B<drand48>(), B<erand48>(), "
"B<lrand48>(), B<nrand48>(), B<mrand48>()  or B<jrand48>()  is computed by "
"first generating the next 48-bit I<Xi> in the sequence.  Then the "
"appropriate number of bits, according to the type of data item to be "
"returned, is copied from the high-order bits of I<Xi> and transformed into "
"the returned value."
msgstr ""
"関数 B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
"B<jrand48>()  で返される値は次のようにして計算される。 はじめに、次の48ビット"
"の I<Xi> が計算される。 そして、返すべきデータの型に依存した適切な ビット数"
"が I<Xi> の上位ビットからコピーされる。 最後に、この値を返り値に変換する。"

#. type: Plain text
#: build/C/man3/drand48.3:171
msgid ""
"The functions B<drand48>(), B<lrand48>()  and B<mrand48>()  store the last "
"48-bit I<Xi> generated in an internal buffer.  The functions B<erand48>(), "
"B<nrand48>()  and B<jrand48>()  require the calling program to provide "
"storage for the successive I<Xi> values in the array argument I<xsubi>.  The "
"functions are initialized by placing the initial value of I<Xi> into the "
"array before calling the function for the first time."
msgstr ""
"関数 B<drand48>(), B<lrand48>(), B<mrand48>()  は 最後に生成された48ビットの "
"I<Xi> を内部バッファに格納する。 配列の形の引数 I<xsubi> に個々の I<Xi> の値"
"を 格納できるような領域を確保することを、 関数 B<erand48>(), B<nrand48>(), "
"B<jrand48>()  は、 呼び出し側のプログラムに要求する。 これらの関数は、はじめ"
"てそれらの関数を呼ぶ前に I<Xi> の初期値を配列に 代入することで初期化される。"

#. type: Plain text
#: build/C/man3/drand48.3:178
msgid ""
"The initializer function B<srand48>()  sets the high order 32-bits of I<Xi> "
"to the argument I<seedval>.  The low order 16-bits are set to the arbitrary "
"value 0x330E."
msgstr ""
"初期化関数 B<srand48>()  は、I<Xi> の 上位32ビットを引数 I<seedval> に設定す"
"る。 下位の16ビットは、適当に決められた値である0x330Eに設定される。"

#. type: Plain text
#: build/C/man3/drand48.3:187
msgid ""
"The initializer function B<seed48>()  sets the value of I<Xi> to the 48-bit "
"value specified in the array argument I<seed16v>.  The previous value of "
"I<Xi> is copied into an internal buffer and a pointer to this buffer is "
"returned by B<seed48>()."
msgstr ""
"初期化関数 B<seed48>()  は、I<Xi> の値を、 配列の形をした引数である "
"I<seed16v> の中で指定された 48ビットの値に設定する。 I<Xi> の前の値は内部バッ"
"ファにコピーされ、このバッファへのポインタが B<seed48>()  によって返される。"

#. type: Plain text
#: build/C/man3/drand48.3:202
msgid ""
"The initialization function B<lcong48>()  allows the user to specify initial "
"values for I<Xi>, I<a> and I<c>.  Array argument elements I<param[0-2]> "
"specify I<Xi>, I<param[3-5]> specify I<a>, and I<param[6]> specifies I<c>.  "
"After B<lcong48>()  has been called, a subsequent call to either B<srand48>"
"()  or B<seed48>()  will restore the standard values of I<a> and I<c>."
msgstr ""
"初期化関数 B<lcong48>()  は使用者が I<Xi>, I<a>, I<c> の 初期値を指定するため"
"の関数である。 配列の形をした引数の要素はそれぞれ、I<param[0-2]> は I<Xi> "
"を、 I<param[3-5]> は I<a> を、I<param[6]> は I<c> を指定するもの である。 "
"B<lcong48>()  が呼ばれた後で、 B<srand48>()  か B<seed48>()  を呼ぶと、前述"
"の I<a> と I<c> の 標準値が再び設定される。"

#. type: Plain text
#: build/C/man3/drand48.3:204
msgid "SVr4, POSIX.1-2001."
msgstr "SVr4, POSIX.1-2001."

#. type: Plain text
#: build/C/man3/drand48.3:208
msgid ""
"These functions are declared obsolete by SVID 3, which states that B<rand>"
"(3)  should be used instead."
msgstr ""
"SVID 3 ではこれらの関数は時代遅れと宣言されている。 SVID 3 では B<rand>(3)  "
"が代わりに使用されるべきだと記述されている。"

#. type: Plain text
#: build/C/man3/drand48.3:211
msgid "B<rand>(3), B<random>(3)"
msgstr "B<rand>(3), B<random>(3)"

#. type: TH
#: build/C/man3/drand48_r.3:25
#, no-wrap
msgid "DRAND48_R"
msgstr "DRAND48_R"

#. type: Plain text
#: build/C/man3/drand48_r.3:30
msgid ""
"drand48_r, erand48_r, lrand48_r, nrand48_r, mrand48_r, jrand48_r, srand48_r, "
"seed48_r, lcong48_r - generate uniformly distributed pseudo-random numbers "
"reentrantly"
msgstr ""
"drand48_r, erand48_r, lrand48_r, nrand48_r, mrand48_r, jrand48_r, srand48_r, "
"seed48_r, lcong48_r - 一様分布する疑似乱数をリエントラント (reentrant) に生成"
"する"

#. type: Plain text
#: build/C/man3/drand48_r.3:35
#, no-wrap
msgid "B<int drand48_r(struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
msgstr "B<int drand48_r(struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:37
#, no-wrap
msgid "B<int erand48_r(unsigned short >I<xsubi>B<[3]>I<,>\n"
msgstr "B<int erand48_r(unsigned short >I<xsubi>B<[3]>I<,>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:39
#, no-wrap
msgid "B<              struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"
msgstr "B<              struct drand48_data *>I<buffer>B<, double *>I<result>B<);>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:41
#, no-wrap
msgid "B<int lrand48_r(struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
msgstr "B<int lrand48_r(struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:43
#, no-wrap
msgid "B<int nrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
msgstr "B<int nrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:45 build/C/man3/drand48_r.3:51
#, no-wrap
msgid "B<              struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"
msgstr "B<              struct drand48_data *>I<buffer>B<, long int *>I<result>B<);>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:47
#, no-wrap
msgid "B<int mrand48_r(struct drand48_data *>I<buffer>B<,long int *>I<result>B<);>\n"
msgstr "B<int mrand48_r(struct drand48_data *>I<buffer>B<,long int *>I<result>B<);>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:49
#, no-wrap
msgid "B<int jrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"
msgstr "B<int jrand48_r(unsigned short int >I<xsubi[3]>B<,>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:53
#, no-wrap
msgid "B<int srand48_r(long int >I<seedval>B<, struct drand48_data *>I<buffer>B<);>\n"
msgstr "B<int srand48_r(long int >I<seedval>B<, struct drand48_data *>I<buffer>B<);>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:55
#, no-wrap
msgid "B<int seed48_r(unsigned short int >I<seed16v[3]>B<,>\n"
msgstr "B<int seed48_r(unsigned short int >I<seed16v[3]>B<,>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:57
#, no-wrap
msgid "B<             struct drand48_data *>I<buffer>B<);>\n"
msgstr "B<             struct drand48_data *>I<buffer>B<);>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:59
#, no-wrap
msgid "B<int lcong48_r(unsigned short int >I<param[7]>B<,>\n"
msgstr "B<int lcong48_r(unsigned short int >I<param[7]>B<,>\n"

#. type: Plain text
#: build/C/man3/drand48_r.3:61
#, no-wrap
msgid "B<              struct drand48_data *>I<buffer>B<);>\n"
msgstr "B<              struct drand48_data *>I<buffer>B<);>\n"

#.  .BR drand48_r (),
#.  .BR erand48_r (),
#.  .BR lrand48_r (),
#.  .BR nrand48_r (),
#.  .BR mrand48_r (),
#.  .BR jrand48_r (),
#.  .BR srand48_r (),
#.  .BR seed48_r (),
#.  .BR lcong48_r ():
#. type: Plain text
#: build/C/man3/drand48_r.3:80
msgid "All functions shown above: _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE"
msgstr "上記の全ての関数: _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE"

#. type: Plain text
#: build/C/man3/drand48_r.3:87
msgid ""
"These functions are the reentrant analogs of the functions described in "
"B<drand48>(3).  Instead of modifying the global random generator state, they "
"use the supplied data I<buffer>."
msgstr ""
"これらの関数は B<drand48>(3)  で説明されている関数に類似するリエントラントな"
"関数である。 大域的な乱数生成の状態を変更する代わりに、 これらの関数は指定さ"
"れたデータ I<buffer> を使う。"

#. type: Plain text
#: build/C/man3/drand48_r.3:94
msgid ""
"Before the first use, this struct must be initialized, for example, by "
"filling it with zeros, or by calling one of the functions B<srand48_r>(), "
"B<seed48_r>(), or B<lcong48_r>()."
msgstr ""
"最初に使う前に、この構造体は初期化されていなければならない。 初期化は、たとえ"
"ば 0 で埋めたり、関数 B<srand48_r>(), B<seed48_r>(), B<lcong48_r>()  のいずれ"
"かを呼び出すことによって行われる。"

#. type: Plain text
#: build/C/man3/drand48_r.3:96
msgid "The return value is 0."
msgstr "返り値は 0 である。"

#. type: Plain text
#: build/C/man3/drand48_r.3:98
msgid "These functions are GNU extensions and are not portable."
msgstr "これらの関数は GNU による拡張であり、移植性はない。"

#. type: Plain text
#: build/C/man3/drand48_r.3:102 build/C/man3/random_r.3:131
msgid "B<drand48>(3), B<rand>(3), B<random>(3)"
msgstr "B<drand48>(3), B<rand>(3), B<random>(3)"

#. type: TH
#: build/C/man3/ecvt.3:30
#, no-wrap
msgid "ECVT"
msgstr "ECVT"

#. type: Plain text
#: build/C/man3/ecvt.3:33
msgid "ecvt, fcvt - convert a floating-point number to a string"
msgstr "ecvt, fcvt - 浮動小数点数の文字列への変換"

#. type: Plain text
#: build/C/man3/ecvt.3:38
msgid ""
"B<char *ecvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
"B<int *>I<sign>B<);>"
msgstr ""
"B<char *ecvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
"B<int *>I<sign>B<);>"

#. type: Plain text
#: build/C/man3/ecvt.3:41
msgid ""
"B<char *fcvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
"B<int *>I<sign>B<);>"
msgstr ""
"B<char *fcvt(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,> "
"B<int *>I<sign>B<);>"

#. type: Plain text
#: build/C/man3/ecvt.3:49
msgid "B<ecvt>(), B<fcvt>():"
msgstr "B<ecvt>(), B<fcvt>():"

#. type: TP
#: build/C/man3/ecvt.3:52 build/C/man3/gcvt.3:47 build/C/man3/mktemp.3:51
#, no-wrap
msgid "Since glibc 2.12:"
msgstr "glibc 2.12 以降:"

#. type: Plain text
#: build/C/man3/ecvt.3:59 build/C/man3/gcvt.3:54
#, no-wrap
msgid ""
"_SVID_SOURCE ||\n"
"    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
"        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
"    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
msgstr ""
"_SVID_SOURCE ||\n"
"    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
"        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
"    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"

#. type: TP
#: build/C/man3/ecvt.3:60 build/C/man3/gcvt.3:55 build/C/man3/mktemp.3:57
#, no-wrap
msgid "Before glibc 2.12:"
msgstr "glibc 2.12 より前:"

#. type: Plain text
#: build/C/man3/ecvt.3:90
msgid ""
"The B<ecvt>()  function converts I<number> to a null-terminated string of "
"I<ndigits> digits (where I<ndigits> is reduced to a system-specific limit "
"determined by the precision of a I<double>), and returns a pointer to the "
"string.  The high-order digit is nonzero, unless I<number> is zero.  The low "
"order digit is rounded.  The string itself does not contain a decimal point; "
"however, the position of the decimal point relative to the start of the "
"string is stored in I<*decpt>.  A negative value for I<*decpt> means that "
"the decimal point is to the left of the start of the string.  If the sign of "
"I<number> is negative, I<*sign> is set to a nonzero value, otherwise it is "
"set to 0.  If I<number> is zero, it is unspecified whether I<*decpt> is 0 or "
"1."
msgstr ""
"関数 B<ecvt>()  は I<number> を NUL 文字で終端された I<ndigits> 文字の文字列"
"へ変換し、その文字列へのポインタを返す (I<ndigits> が I<double> の精度によっ"
"て決定されるシステム依存の上限値より大きい場合は、 その条件値が I<ndigits> の"
"値となる)。 I<number> が 0 でなければ、最上位の桁は 0 以外である。 最下位の桁"
"は丸められる。 文字列には小数点は含まれない。そのかわりに、文字列の先頭からの"
"小数点の 位置が I<*decpt> に保持される。 I<*decpt> が負の値の場合、小数点が文"
"字列の先頭の左側にあることを意味する。 もし(I<number>の)符号が負ならば "
"I<*sign> は 0 以外の値に、 そうでなければ 0 に設定される。 I<number> が 0 な"
"ら、I<*decpt> が 0 か 1 かは未規定である。"

#. type: Plain text
#: build/C/man3/ecvt.3:97
msgid ""
"The B<fcvt>()  function is identical to B<ecvt>(), except that I<ndigits> "
"specifies the number of digits after the decimal point."
msgstr ""
"関数 B<fcvt>()  は B<ecvt>()  と同じ機能を持つが、I<ndigits> は小数点以下の文"
"字数を指定する。"

#. type: Plain text
#: build/C/man3/ecvt.3:108
msgid ""
"Both the B<ecvt>()  and B<fcvt>()  functions return a pointer to a static "
"string containing the ASCII representation of I<number>.  The static string "
"is overwritten by each call to B<ecvt>()  or B<fcvt>()."
msgstr ""
"関数 B<ecvt>()  と B<fcvt>()  は I<number> の ASCII 表現を含む 静的な領域内の"
"文字列へのポインタを返す。 この文字列は B<ecvt>()  や B<fcvt>()  の呼び出しの"
"たびに上書きされる。"

#. type: Plain text
#: build/C/man3/ecvt.3:120
msgid ""
"SVr2; marked as LEGACY in POSIX.1-2001.  POSIX.1-2008 removes the "
"specifications of B<ecvt>()  and B<fcvt>(), recommending the use of "
"B<sprintf>(3)  instead (though B<snprintf>(3)  may be preferable)."
msgstr ""
"SVr2。 POSIX.1-2001 では「過去の名残 (LEGACY)」と位置付けられている。 "
"POSIX.1-2008 では B<ecvt>()  と B<fcvt>()  の仕様が削除され、代わりに "
"B<sprintf>(3)  の使用が推奨されている(しかし B<snprintf>(3)  がより適切かもし"
"れない)。"

#. type: Plain text
#: build/C/man3/ecvt.3:126
msgid ""
"Linux libc4 and libc5 specified the type of I<ndigits> as I<size_t>.  Not "
"all locales use a point as the radix character (\"decimal point\")."
msgstr ""
"Linux libc4 と libc5 では I<ndigits> の型は I<size_t> となっていた。 小数点に"
"ピリオドを使わないロケールもある。"

#. type: Plain text
#: build/C/man3/ecvt.3:132
msgid "B<ecvt_r>(3), B<gcvt>(3), B<qecvt>(3), B<setlocale>(3), B<sprintf>(3)"
msgstr "B<ecvt_r>(3), B<gcvt>(3), B<qecvt>(3), B<setlocale>(3), B<sprintf>(3)"

#. type: TH
#: build/C/man3/ecvt_r.3:28
#, no-wrap
msgid "ECVT_R"
msgstr "ECVT_R"

#. type: Plain text
#: build/C/man3/ecvt_r.3:31
msgid ""
"ecvt_r, fcvt_r, qecvt_r, qfcvt_r - convert a floating-point number to a "
"string"
msgstr "ecvt_r, fcvt_r, qecvt_r, qfcvt_r - 浮動小数点数の文字列への変換"

#. type: Plain text
#: build/C/man3/ecvt_r.3:37
#, no-wrap
msgid ""
"B<int ecvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
"B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
msgstr ""
"B<int ecvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
"B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"

#. type: Plain text
#: build/C/man3/ecvt_r.3:40
#, no-wrap
msgid ""
"B<int fcvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
"B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
msgstr ""
"B<int fcvt_r(double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
"B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"

#. type: Plain text
#: build/C/man3/ecvt_r.3:43
#, no-wrap
msgid ""
"B<int qecvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
"B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
msgstr ""
"B<int qecvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
"B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"

#. type: Plain text
#: build/C/man3/ecvt_r.3:46
#, no-wrap
msgid ""
"B<int qfcvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
"B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
msgstr ""
"B<int qfcvt_r(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,>\n"
"B<           int *>I<sign>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"

#. type: Plain text
#: build/C/man3/ecvt_r.3:58
msgid "B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>():"
msgstr "B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>():"

#. type: Plain text
#: build/C/man3/ecvt_r.3:60
msgid "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
msgstr "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"

#. type: Plain text
#: build/C/man3/ecvt_r.3:84
msgid ""
"The functions B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>()  and B<qfcvt_r>()  are "
"identical to B<ecvt>(3), B<fcvt>(3), B<qecvt>(3)  and B<qfcvt>(3), "
"respectively, except that they do not return their result in a static "
"buffer, but instead use the supplied I<buf> of size I<len>.  See B<ecvt>(3)  "
"and B<qecvt>(3)."
msgstr ""
"関数 B<ecvt_r>(), B<fcvt_r>(), B<qecvt_r>(), B<qfcvt_r>()  は、それぞれ "
"B<ecvt>(3), B<fcvt>(3), B<qecvt>(3), B<qfcvt>(3)  と同じであるが、 静的バッ"
"ファの代わりに、長さ I<len> の指定された I<buf> に結果を格納する点が異なる。 "
"B<ecvt>(3), B<qecvt>(3)  を参照のこと。"

#. type: Plain text
#: build/C/man3/ecvt_r.3:86
msgid "These functions return 0 on success, and -1 otherwise."
msgstr "これらの関数は成功すると 0 を、それ以外は -1 を返す。"

#. type: Plain text
#: build/C/man3/ecvt_r.3:88
msgid "These functions are GNU extensions."
msgstr "これらの関数は GNU による拡張である。"

#. type: Plain text
#: build/C/man3/ecvt_r.3:93 build/C/man3/qecvt.3:81
msgid "These functions are obsolete.  Instead, B<sprintf>(3)  is recommended."
msgstr "これらの関数は廃止された。代わりに B<sprintf>(3)  の使用を推奨する。"

#. type: Plain text
#: build/C/man3/ecvt_r.3:97
msgid "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"
msgstr "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"

#. type: TH
#: build/C/man3/exit.3:23
#, no-wrap
msgid "EXIT"
msgstr "EXIT"

#. type: TH
#: build/C/man3/exit.3:23 build/C/man3/setenv.3:35
#, no-wrap
msgid "2009-09-20"
msgstr "2009-09-20"

#. type: Plain text
#: build/C/man3/exit.3:26
msgid "exit - cause normal process termination"
msgstr "exit - プロセスの正常終了"

#. type: Plain text
#: build/C/man3/exit.3:31
#, no-wrap
msgid "B<void exit(int >I<status>B<);>\n"
msgstr "B<void exit(int >I<status>B<);>\n"

#. type: Plain text
#: build/C/man3/exit.3:39
msgid ""
"The B<exit>()  function causes normal process termination and the value of "
"I<status & 0377> is returned to the parent (see B<wait>(2))."
msgstr ""
"B<exit>()  関数は、プロセスを正常に終了させ、 I<status & 0377> という値を親プ"
"ロセスへ返す (B<wait>(2)  を参照)。"

#. type: Plain text
#: build/C/man3/exit.3:66
msgid ""
"All functions registered with B<atexit>(3)  and B<on_exit>(3)  are called, "
"in the reverse order of their registration.  (It is possible for one of "
"these functions to use B<atexit>(3)  or B<on_exit>(3)  to register an "
"additional function to be executed during exit processing; the new "
"registration is added to the front of the list of functions that remain to "
"be called.)  If one of these functions does not return (e.g., it calls "
"B<_exit>(2), or kills itself with a signal), then none of the remaining "
"functions is called, and further exit processing (in particular, flushing of "
"B<stdio>(3)  streams) is abandoned.  If a function has been registered "
"multiple times using B<atexit>(3)  or B<on_exit>(3), then it is called as "
"many times as it was registered."
msgstr ""
"B<atexit>(3)  や B<on_exit>(3)  によって 登録された全ての関数は、それらが登録"
"された順番と逆順にコールされる。 (登録された関数の中で B<atexit>(3)  or "
"B<on_exit>(3)  を使って exit 処理中に実行される追加の関数を登録することができ"
"る; 新規に登録された関数は、この後で実行される関数リストの先頭に 追加され"
"る。)  これらの関数の一つが返らなかった場合 (例えば、その関数が B<_exit>(2)  "
"を呼び出したり、シグナルで自分自身を kill した場合)、 残りの関数はどれも呼び"
"出されず、それ以降の exit 処理 (特に B<stdio>(3)  ストリームのフラッシュな"
"ど) は中止される。 ある関数が B<atexit>(3)  や B<on_exit>(3)  を使って複数回"
"登録されていた場合、 その関数は登録されたのと同じ回数だけ呼び出される。"

#. type: Plain text
#: build/C/man3/exit.3:73
msgid ""
"All open B<stdio>(3)  streams are flushed and closed.  Files created by "
"B<tmpfile>(3)  are removed."
msgstr ""
"オープン中の B<stdio>(3)  ストリームは全てフラッシュされて、クローズされる。 "
"B<tmpfile>(3)  によって作成されたファイルは削除される。"

#. type: Plain text
#: build/C/man3/exit.3:80
msgid ""
"The C standard specifies two constants, B<EXIT_SUCCESS> and B<EXIT_FAILURE>, "
"that may be passed to B<exit>()  to indicate successful or unsuccessful "
"termination, respectively."
msgstr ""
"C 標準では B<EXIT_SUCCESS> と B<EXIT_FAILURE> という 2つの定数が 定義されてい"
"る。それぞれ正常終了と異常終了を示すもので、 B<exit>()  として渡すことができ"
"る。"

#. type: Plain text
#: build/C/man3/exit.3:84
msgid "The B<exit>()  function does not return."
msgstr "B<exit>()  関数は返らない。"

#. type: Plain text
#: build/C/man3/exit.3:86
msgid "SVr4, 4.3BSD, POSIX.1-2001, C89, C99."
msgstr "SVr4, 4.3BSD, POSIX.1-2001, C89, C99."

#. type: Plain text
#: build/C/man3/exit.3:97
msgid ""
"It is undefined what happens if one of the functions registered using "
"B<atexit>(3)  and B<on_exit>(3)  calls either B<exit>()  or B<longjmp>(3)."
msgstr ""
"B<atexit>(3)  や B<on_exit>(3)  を使って登録された関数の中で B<exit>()  か "
"B<longjmp>(3)  が呼び出された場合、 何が起こるかは未定義である。"

#. type: Plain text
#: build/C/man3/exit.3:106
msgid ""
"The use of B<EXIT_SUCCESS> and B<EXIT_FAILURE> is slightly more portable (to "
"non-UNIX environments) than the use of 0 and some nonzero value like 1 or "
"-1.  In particular, VMS uses a different convention."
msgstr ""
"B<EXIT_SUCCESS> と B<EXIT_FAILURE> を使うと、0 や (1 や -1 といった) 0 以外の"
"値を使うのに比べて (UNIX 以外の環境に) 移植するのがいくらか簡単になる。 特に "
"VMS は別の方式を用いている。"

#. type: Plain text
#: build/C/man3/exit.3:109
msgid ""
"BSD has attempted to standardize exit codes; see the file I<E<lt>sysexits."
"hE<gt>>."
msgstr ""
"BSD は終了コードを標準化しようとしている; I<E<lt>sysexits.hE<gt>> を参照する"
"こと。"

#. type: Plain text
#: build/C/man3/exit.3:134
msgid ""
"After B<exit>(), the exit status must be transmitted to the parent process.  "
"There are three cases.  If the parent has set B<SA_NOCLDWAIT>, or has set "
"the B<SIGCHLD> handler to B<SIG_IGN>, the status is discarded.  If the "
"parent was waiting on the child it is notified of the exit status.  In both "
"cases the exiting process dies immediately.  If the parent has not indicated "
"that it is not interested in the exit status, but is not waiting, the "
"exiting process turns into a \"zombie\" process (which is nothing but a "
"container for the single byte representing the exit status) so that the "
"parent can learn the exit status when it later calls one of the B<wait>(2)  "
"functions."
msgstr ""
"B<exit>()  の後、親プロセスに終了ステータスが渡されなければならない。 終了ス"
"テータスの渡し方には 3 つの場合がある。 親プロセスが B<SA_NOCLDWAIT> を設定し"
"た場合、 または B<SIGCHLD> ハンドラを B<SIG_IGN> に設定した場合、 ステータス"
"は破棄される。 親プロセスが子プロセスの終了を待っている場合、 親プロセスに終"
"了ステータスが伝えられる。 どちらの場合でも exit のプロセスは直ちに終了す"
"る。 「終了ステータスを関知せず終了も待たない」 ということを親プロセスが指示"
"していない場合、 exit プロセスは (終了ステータスを表す 1 バイトのみを保持す"
"る)  「ゾンビ」プロセスになる。 これにより、後から B<wait>(2)  関数を呼び出す"
"ことで、 親プロセスは終了ステータスを知ることができる。"

#. type: Plain text
#: build/C/man3/exit.3:144
msgid ""
"If the implementation supports the B<SIGCHLD> signal, this signal is sent to "
"the parent.  If the parent has set B<SA_NOCLDWAIT>, it is undefined whether "
"a B<SIGCHLD> signal is sent."
msgstr ""
"B<SIGCHLD> シグナルのサポートが実装されている場合、 このシグナルは親プロセス"
"に送られる。 親プロセスが B<SA_NOCLDWAIT> を設定した場合、 B<SIGCHLD> シグナ"
"ルが送られるかどうかは定義されていない。"

#. type: Plain text
#: build/C/man3/exit.3:153
msgid ""
"If the process is a session leader and its controlling terminal is the "
"controlling terminal of the session, then each process in the foreground "
"process group of this controlling terminal is sent a B<SIGHUP> signal, and "
"the terminal is disassociated from this session, allowing it to be acquired "
"by a new controlling process."
msgstr ""
"そのプロセスがセッションのリーダーで、 そのプロセスの制御端末がそのセッション"
"の制御端末である場合、 この制御端末のフォアグラウンドプロセスグループにある "
"各プロセスに B<SIGHUP> シグナルが送られ、端末がセッションから切り離される。 "
"これにより新しい制御プロセスを取得することができる。"

#. type: Plain text
#: build/C/man3/exit.3:165
msgid ""
"If the exit of the process causes a process group to become orphaned, and if "
"any member of the newly orphaned process group is stopped, then a B<SIGHUP> "
"signal followed by a B<SIGCONT> signal will be sent to each process in this "
"process group.  See B<setpgid>(2)  for an explanation of orphaned process "
"groups."
msgstr ""
"プロセスが終了することにより、プロセスグループが孤立して、 そのグループのメン"
"バーのうちのどれかが停止した場合、 プロセスグループの各プロセスに対して "
"B<SIGHUP> シグナルが送られ、続いて B<SIGCONT> シグナルが送られる。 孤立した "
"(orphaned) プロセスグループの説明は B<setpgid>(2)  を参照。"

#. type: Plain text
#: build/C/man3/exit.3:172
msgid ""
"B<_exit>(2), B<setpgid>(2), B<wait>(2), B<atexit>(3), B<on_exit>(3), "
"B<tmpfile>(3)"
msgstr ""
"B<_exit>(2), B<setpgid>(2), B<wait>(2), B<atexit>(3), B<on_exit>(3), "
"B<tmpfile>(3)"

#. type: TH
#: build/C/man3/gcvt.3:28
#, no-wrap
msgid "GCVT"
msgstr "GCVT"

#. type: Plain text
#: build/C/man3/gcvt.3:31
msgid "gcvt - convert a floating-point number to a string"
msgstr "gcvt - 浮動小数点数を文字列へ変換する"

#. type: Plain text
#: build/C/man3/gcvt.3:36
#, no-wrap
msgid "B<char *gcvt(double >I<number>B<, size_t >I<ndigit>B<, char *>I<buf>B<);>\n"
msgstr "B<char *gcvt(double >I<number>B<, size_t >I<ndigit>B<, char *>I<buf>B<);>\n"

#. type: Plain text
#: build/C/man3/gcvt.3:44
msgid "B<gcvt>():"
msgstr "B<gcvt>():"

#. type: Plain text
#: build/C/man3/gcvt.3:59
msgid ""
"_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE && "
"_XOPEN_SOURCE_EXTENDED"
msgstr ""
"_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE && "
"_XOPEN_SOURCE_EXTENDED"

#. type: Plain text
#: build/C/man3/gcvt.3:70
msgid ""
"The B<gcvt>()  function converts I<number> to a minimal length null-"
"terminated ASCII string and stores the result in I<buf>.  It produces "
"I<ndigit> significant digits in either B<printf>(3)  F format or E format."
msgstr ""
"関数 B<gcvt>()  は、 I<number> を、最短の長さの NULL 終端された ASCII 文字列"
"へ変換し、変換後の文字列を I<buf> に格納する。 B<printf>(3)  の F フォーマッ"
"トや E フォーマットのように I<ndigit> 桁の 有効数字を生成する。"

#. type: Plain text
#: build/C/man3/gcvt.3:75
msgid ""
"The B<gcvt>()  function returns the address of the string pointed to by "
"I<buf>."
msgstr "関数 B<gcvt>()  は文字列 I<buf> へのポインタを返す。"

#. type: Plain text
#: build/C/man3/gcvt.3:84
msgid ""
"Marked as LEGACY in POSIX.1-2001.  POSIX.1-2008 removes the specification of "
"B<gcvt>(), recommending the use of B<sprintf>(3)  instead (though B<snprintf>"
"(3)  may be preferable)."
msgstr ""
"POSIX.1-2001 では、 この関数は「過去の名残 (LEGACY)」と位置付けられている。 "
"POSIX.1-2008 では、 B<gcvt>()  の仕様は削除され、 代わりに B<sprintf>(3)  を"
"使用することが推奨されている (B<snprintf>(3)  の方が適切かもしれないが)。"

#. type: Plain text
#: build/C/man3/gcvt.3:88
msgid "B<ecvt>(3), B<fcvt>(3), B<sprintf>(3)"
msgstr "B<ecvt>(3), B<fcvt>(3), B<sprintf>(3)"

#. type: TH
#: build/C/man3/getenv.3:31
#, no-wrap
msgid "GETENV"
msgstr "GETENV"

#. type: TH
#: build/C/man3/getenv.3:31
#, no-wrap
msgid "2008-03-17"
msgstr "2008-03-17"

#. type: Plain text
#: build/C/man3/getenv.3:34
msgid "getenv - get an environment variable"
msgstr "getenv - 環境変数を得る"

#. type: Plain text
#: build/C/man3/getenv.3:39
#, no-wrap
msgid "B<char *getenv(const char *>I<name>B<);>\n"
msgstr "B<char *getenv(const char *>I<name>B<);>\n"

#. type: Plain text
#: build/C/man3/getenv.3:49
msgid ""
"The B<getenv>()  function searches the environment list to find the "
"environment variable I<name>, and returns a pointer to the corresponding "
"I<value> string."
msgstr ""
"関数 B<getenv>()  は、環境リストから名前が I<name> の環境変数を検索し、対応す"
"る I<value> 文字列へのポインタを返す。"

#. type: Plain text
#: build/C/man3/getenv.3:54
msgid ""
"The B<getenv>()  function returns a pointer to the value in the environment, "
"or NULL if there is no match."
msgstr ""
"関数 B<getenv>()  は、環境における値 value へのポインタを返す。 I<name> に"
"マッチする環境変数が存在しないときには NULL を返す。"

#. type: Plain text
#: build/C/man3/getenv.3:58
msgid "The strings in the environment list are of the form I<name=value>."
msgstr "環境リストの文字列は I<name=value> という形式をしている。"

#. type: Plain text
#: build/C/man3/getenv.3:64
msgid ""
"As typically implemented, B<getenv>()  returns a pointer to a string within "
"the environment list.  The caller must take care not to modify this string, "
"since that would change the environment of the process."
msgstr ""
"通常の実装では、 B<getenv>()  は環境リスト内の文字列へのポインタを返す。 呼び"
"出し元はこの文字列を変更しないように注意しなければならない。 この文字列を変更"
"すると、そのプロセスの環境を変化させることになるからである。"

#. type: Plain text
#: build/C/man3/getenv.3:77
msgid ""
"The implementation of B<getenv>()  is not required to be reentrant.  The "
"string pointed to by the return value of B<getenv>()  may be statically "
"allocated, and can be modified by a subsequent call to B<getenv>(), B<putenv>"
"(3), B<setenv>(3), or B<unsetenv>(3)."
msgstr ""
"B<getenv>()  の実装はリエントラント (再入可能) であることを要求されていな"
"い。 B<getenv>()  の返り値により参照される文字列は静的に割り当てられてもよ"
"く、 文字列の内容は後続の B<getenv>(), B<putenv>(3), B<setenv>(3), "
"B<unsetenv>(3)  の呼び出しにより変更されることがある。"

#. type: Plain text
#: build/C/man3/getenv.3:83
msgid ""
"B<clearenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
msgstr ""
"B<clearenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"

#. type: TH
#: build/C/man3/getloadavg.3:32
#, no-wrap
msgid "GETLOADAVG"
msgstr "GETLOADAVG"

#. type: TH
#: build/C/man3/getloadavg.3:32
#, no-wrap
msgid "2007-12-08"
msgstr "2007-12-08"

#. type: Plain text
#: build/C/man3/getloadavg.3:35
msgid "getloadavg - get system load averages"
msgstr "getloadavg - get system load averages"

#. type: Plain text
#: build/C/man3/getloadavg.3:39
#, no-wrap
msgid ""
"B<#define _BSD_SOURCE>         /* See feature_test_macros(7) */\n"
"B<#include E<lt>stdlib.hE<gt>>\n"
msgstr ""
"B<#define _BSD_SOURCE>         /* feature_test_macros(7) 参照 */\n"
"B<#include E<lt>stdlib.hE<gt>>\n"

#. type: Plain text
#: build/C/man3/getloadavg.3:41
#, no-wrap
msgid "B<int getloadavg(double >I<loadavg[]>B<, int >I<nelem>B<);>\n"
msgstr "B<int getloadavg(double >I<loadavg[]>B<, int >I<nelem>B<);>\n"

#. type: Plain text
#: build/C/man3/getloadavg.3:53
msgid ""
"The B<getloadavg>()  function returns the number of processes in the system "
"run queue averaged over various periods of time.  Up to I<nelem> samples are "
"retrieved and assigned to successive elements of I<loadavg>[].  The system "
"imposes a maximum of 3 samples, representing averages over the last 1, 5, "
"and 15 minutes, respectively."
msgstr ""
"B<getloadavg>()  関数はシステムの実行キューに入っているプロセスの数を、 様々"
"な期間について平均した値を返す。 I<nelem> 個までのサンプル値を取得し、 "
"I<loadavg>[] の連続する要素に代入する。 システムが提供するサンプル数は 3 個ま"
"でで、 それぞれ最近 1, 5, 15 分の平均を表している。"

#.  .SH HISTORY
#.  The
#.  BR getloadavg ()
#.  function appeared in
#.  4.3BSD Reno .
#. type: Plain text
#: build/C/man3/getloadavg.3:61
msgid ""
"If the load average was unobtainable, -1 is returned; otherwise, the number "
"of samples actually retrieved is returned."
msgstr ""
"負荷平均が取得できないと -1 を返す。 取得できた場合は、実際に取得したサンプル"
"値の数を返す。"

#. type: Plain text
#: build/C/man3/getloadavg.3:63
msgid "This function is available in glibc since version 2.2."
msgstr "この関数は glibc のバージョン 2.2 以降で利用可能である。"

#.  mdoc seems to have a bug - there must be no newline here
#. type: Plain text
#: build/C/man3/getloadavg.3:67
msgid "Not in POSIX.1-2001.  Present on the BSDs and Solaris."
msgstr "POSIX.1-2001 にはない。 BSD 系と Solaris に存在する。"

#. type: Plain text
#: build/C/man3/getloadavg.3:70
msgid "B<uptime>(1), B<proc>(5)"
msgstr "B<uptime>(1), B<proc>(5)"

#. type: TH
#: build/C/man3/getsubopt.3:23
#, no-wrap
msgid "GETSUBOPT"
msgstr "GETSUBOPT"

#. type: TH
#: build/C/man3/getsubopt.3:23 build/C/man3/mkdtemp.3:24
#, no-wrap
msgid "2010-09-26"
msgstr "2010-09-26"

#. type: Plain text
#: build/C/man3/getsubopt.3:26
msgid "getsubopt - parse suboption arguments from a string"
msgstr "getsubopt - 文字列中のサブオプション引き数の解釈を行う"

#. type: Plain text
#: build/C/man3/getsubopt.3:31
msgid ""
"B<int getsubopt(char **>I<optionp>B<, char * const *>I<tokens>B<, char "
"**>I<valuep>B<);>"
msgstr ""
"B<int getsubopt(char **>I<optionp>B<, char * const *>I<tokens>B<, char "
"**>I<valuep>B<);>"

#. type: Plain text
#: build/C/man3/getsubopt.3:38
msgid "B<getsubopt>():"
msgstr "B<getsubopt>():"

#. type: Plain text
#: build/C/man3/getsubopt.3:43
msgid ""
"_XOPEN_SOURCE\\ E<gt>= 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
msgstr ""
"_XOPEN_SOURCE\\ E<gt>= 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"

#. type: Plain text
#: build/C/man3/getsubopt.3:45
msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
msgstr "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"

#. type: Plain text
#: build/C/man3/getsubopt.3:62
msgid ""
"B<getsubopt>()  parses the list of comma-separated suboptions provided in "
"I<optionp>.  (Such a suboption list is typically produced when B<getopt>(3)  "
"is used to parse a command line; see for example the I<-o> option of B<mount>"
"(8).)  Each suboption may include an associated value, which is separated "
"from the suboption name by an equal sign.  The following is an example of "
"the kind of string that might be passed in I<optionp>:"
msgstr ""
"B<getsubopt>()  は、 I<optionp> で与えられたカンマ区切りのサブオプション・リ"
"ストを解析する。 (このようなサブオプション・リストは B<getopt>(3)  を使ってコ"
"マンドラインを解釈した場合に現れることが多い。 例えば、 B<mount>(8)  の I<-"
"o> オプションを見るとよい。)  それぞれのサブオプションには対応する値を指定す"
"ることができる。 サブオプションの名前と対応する値は等号 (\\(aq=\\(aq) で区切"
"られる。 例えば、以下のような文字列を I<optionp> に渡すことができる。"

#. type: Plain text
#: build/C/man3/getsubopt.3:65
msgid "B<ro,name=xyz>"
msgstr "B<ro,name=xyz>"

#. type: Plain text
#: build/C/man3/getsubopt.3:75
msgid ""
"The I<tokens> argument is a pointer to a NULL-terminated array of pointers "
"to the tokens that B<getsubopt>()  will look for in I<optionp>.  The tokens "
"should be distinct, null-terminated strings containing at least one "
"character, with no embedded equal signs or commas."
msgstr ""
"I<tokens> 引き数はトークンへのポインタの配列へのポインタで、 配列は NULL で終"
"端される。 B<getsubopt>()  はこのトークンを I<optionp> 内で探す。 それぞれの"
"トークンは、NULL 終端された 1文字以上の文字列で、 他のトークンと区別できる必"
"要がある。 また、等号とカンマを含んではならない。"

#. type: Plain text
#: build/C/man3/getsubopt.3:96
msgid ""
"Each call to B<getsubopt>()  returns information about the next unprocessed "
"suboption in I<optionp>.  The first equal sign in a suboption (if any) is "
"interpreted as a separator between the name and the value of that "
"suboption.  The value extends to the next comma, or (for the last suboption) "
"to the end of the string.  If the name of the suboption matches a known name "
"from I<tokens>, and a value string was found, B<getsubopt>()  sets "
"I<*valuep> to the address of that string.  The first comma in I<optionp> is "
"overwritten with a null byte, so I<*valuep> is precisely the \"value string"
"\" for that suboption."
msgstr ""
"B<getsubopt>()  は呼び出されるたびに、 I<optionp> 中の次の未処理のサブオプ"
"ションの情報を返す。 サブオプション内に等号があった場合、最初の等号は そのサ"
"ブオプションの名前と値の区切りと解釈される。 区切りから次のカンマ (最後のサブ"
"オプションの場合、文字列の末尾)  までが、サブオプションの値となる。 サブオプ"
"ションの名前が I<tokens> 内の名前と一致し、値を表す文字列が見つかった場合、 "
"B<getsubopt>()  は I<*valuep> を値を表す文字列のアドレスに設定する。 "
"I<optionp> 中の最初のカンマはヌルバイトで上書きされる。そのため、 I<*valuep> "
"はそのサブオプションの「値の文字列」そのものとなる。"

#. type: Plain text
#: build/C/man3/getsubopt.3:100
msgid ""
"If the suboption is recognized, but no value string was found, I<*valuep> is "
"set to NULL."
msgstr ""
"サブオプションが認識されたが、値を表す文字列が見つからなかった場合、 "
"*I<valuep> は NULL に設定される。"

#. type: Plain text
#: build/C/man3/getsubopt.3:108
msgid ""
"When B<getsubopt>()  returns, I<optionp> points to the next suboption, or to "
"the null byte (\\(aq\\e0\\(aq) at the end of the string if the last "
"suboption was just processed."
msgstr ""
"B<getsubopt>()  が返る時、 I<optionp> は次のサブオプションを指している。 ちょ"
"うど最後のサブオプションが処理された場合は、 文字列末尾のヌルバイト (\\(aq"
"\\e0\\(aq) を指している。"

#. type: Plain text
#: build/C/man3/getsubopt.3:120
msgid ""
"If the first suboption in I<optionp> is recognized, B<getsubopt>()  returns "
"the index of the matching suboption element in I<tokens>.  Otherwise, -1 is "
"returned and I<*valuep> is the entire I<name>B<[=>I<value>B<]> string."
msgstr ""
"I<optionp> 内でサブオプションが見つかった場合、 B<getsubopt>()  は最初のサブ"
"オプションにマッチする I<tokens> の要素の添字を返す。 見つからなかった場"
"合、-1 を返す。この場合、 I<*valuep> は I<name>B<[=>I<value>B<]> の文字列全体"
"となる。"

#. type: Plain text
#: build/C/man3/getsubopt.3:127
msgid ""
"Since I<*optionp> is changed, the first suboption before the call to "
"B<getsubopt>()  is not (necessarily) the same as the first suboption after "
"B<getsubopt>()."
msgstr ""
"I<*optionp> は変更されるので、 B<getsubopt>()  を呼び出す前の最初のサブオプ"
"ションは B<getsubopt>()  を呼び出し後のサブオプションと必ずしも同じとは限らな"
"い。"

#. type: Plain text
#: build/C/man3/getsubopt.3:136
msgid ""
"Since B<getsubopt>()  overwrites any commas it finds in the string "
"I<*optionp>, that string must be writable; it cannot be a string constant."
msgstr ""
"B<getsubopt>()  は、文字列 *I<optionp> 中に見つけたカンマを上書きするので、文"
"字列 I<*optionp> は書き込み可能でなければならず、 文字列定数にすることはでき"
"ない。"

#. type: Plain text
#: build/C/man3/getsubopt.3:138
msgid "The following program expects suboptions following a \"-o\" option."
msgstr ""
"以下のプログラムは \"-o\" オプションに続いてサブオプションがあることを 期待し"
"ている。"

#. type: Plain text
#: build/C/man3/getsubopt.3:144
#, no-wrap
msgid ""
"#define _XOPEN_SOURCE 500\n"
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>assert.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"
msgstr ""
"#define _XOPEN_SOURCE 500\n"
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>assert.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:161
#, no-wrap
msgid ""
"int main(int argc, char **argv)\n"
"{\n"
"    enum {\n"
"        RO_OPT = 0,\n"
"        RW_OPT,\n"
"        NAME_OPT\n"
"    };\n"
"    char *const token[] = {\n"
"        [RO_OPT]   = \"ro\",\n"
"        [RW_OPT]   = \"rw\",\n"
"        [NAME_OPT] = \"name\",\n"
"        NULL\n"
"    };\n"
"    char *subopts;\n"
"    char *value;\n"
"    int opt;\n"
msgstr ""
"int main(int argc, char **argv)\n"
"{\n"
"    enum {\n"
"        RO_OPT = 0,\n"
"        RW_OPT,\n"
"        NAME_OPT\n"
"    };\n"
"    char *const token[] = {\n"
"        [RO_OPT]   = \"ro\",\n"
"        [RW_OPT]   = \"rw\",\n"
"        [NAME_OPT] = \"name\",\n"
"        NULL\n"
"    };\n"
"    char *subopts;\n"
"    char *value;\n"
"    int opt;\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:166
#, no-wrap
msgid ""
"    int readonly = 0;\n"
"    int readwrite = 0;\n"
"    char *name = NULL;\n"
"    int errfnd = 0;\n"
msgstr ""
"    int readonly = 0;\n"
"    int readwrite = 0;\n"
"    char *name = NULL;\n"
"    int errfnd = 0;\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:172
#, no-wrap
msgid ""
"    while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
"        switch (opt) {\n"
"        case \\(aqo\\(aq:\n"
"            subopts = optarg;\n"
"            while (*subopts != \\(aq\\e0\\(aq && !errfnd) {\n"
msgstr ""
"    while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
"        switch (opt) {\n"
"        case \\(aqo\\(aq:\n"
"            subopts = optarg;\n"
"            while (*subopts != \\(aq\\e0\\(aq && !errfnd) {\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:177
#, no-wrap
msgid ""
"            switch (getsubopt(&subopts, token, &value)) {\n"
"            case RO_OPT:\n"
"                readonly = 1;\n"
"                break;\n"
msgstr ""
"            switch (getsubopt(&subopts, token, &value)) {\n"
"            case RO_OPT:\n"
"                readonly = 1;\n"
"                break;\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:181
#, no-wrap
msgid ""
"            case RW_OPT:\n"
"                readwrite = 1;\n"
"                break;\n"
msgstr ""
"            case RW_OPT:\n"
"                readwrite = 1;\n"
"                break;\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:189
#, no-wrap
msgid ""
"            case NAME_OPT:\n"
"                if (value == NULL) {\n"
"                    fprintf(stderr, \"Missing value for \"\n"
"                            \"suboption \\(aq%s\\(aq\\en\", token[NAME_OPT]);\n"
"                    errfnd = 1;\n"
"                    continue;\n"
"                }\n"
msgstr ""
"            case NAME_OPT:\n"
"                if (value == NULL) {\n"
"                    fprintf(stderr, \"Missing value for \"\n"
"                            \"suboption \\(aq%s\\(aq\\en\", token[NAME_OPT]);\n"
"                    errfnd = 1;\n"
"                    continue;\n"
"                }\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:192
#, no-wrap
msgid ""
"                name = value;\n"
"                break;\n"
msgstr ""
"                name = value;\n"
"                break;\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:206
#, no-wrap
msgid ""
"            default:\n"
"                fprintf(stderr, \"No match found \"\n"
"                        \"for token: /%s/\\en\", value);\n"
"                errfnd = 1;\n"
"                break;\n"
"            }\n"
"        }\n"
"        if (readwrite && readonly) {\n"
"            fprintf(stderr, \"Only one of \\(aq%s\\(aq and \\(aq%s\\(aq can be \"\n"
"                    \"specified\\en\", token[RO_OPT], token[RW_OPT]);\n"
"            errfnd = 1;\n"
"        }\n"
"        break;\n"
msgstr ""
"            default:\n"
"                fprintf(stderr, \"No match found \"\n"
"                        \"for token: /%s/\\en\", value);\n"
"                errfnd = 1;\n"
"                break;\n"
"            }\n"
"        }\n"
"        if (readwrite && readonly) {\n"
"            fprintf(stderr, \"Only one of \\(aq%s\\(aq and \\(aq%s\\(aq can be \"\n"
"                    \"specified\\en\", token[RO_OPT], token[RW_OPT]);\n"
"            errfnd = 1;\n"
"        }\n"
"        break;\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:211
#, no-wrap
msgid ""
"        default:\n"
"            errfnd = 1;\n"
"        }\n"
"    }\n"
msgstr ""
"        default:\n"
"            errfnd = 1;\n"
"        }\n"
"    }\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:218
#, no-wrap
msgid ""
"    if (errfnd || argc == 1) {\n"
"        fprintf(stderr, \"\\enUsage: %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
"        fprintf(stderr, \"suboptions are \\(aqro\\(aq, \\(aqrw\\(aq, \"\n"
"                \"and \\(aqname=E<lt>valueE<gt>\\(aq\\en\");\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"
msgstr ""
"    if (errfnd || argc == 1) {\n"
"        fprintf(stderr, \"\\enUsage: %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
"        fprintf(stderr, \"suboptions are \\(aqro\\(aq, \\(aqrw\\(aq, \"\n"
"                \"and \\(aqname=E<lt>valueE<gt>\\(aq\\en\");\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:220
#, no-wrap
msgid "    /* Remainder of program... */\n"
msgstr "    /* Remainder of program... */\n"

#. type: Plain text
#: build/C/man3/getsubopt.3:226
msgid "B<getopt>(3)"
msgstr "B<getopt>(3)"

#. type: TH
#: build/C/man3/malloc.3:28
#, no-wrap
msgid "MALLOC"
msgstr "MALLOC"

#. type: TH
#: build/C/man3/malloc.3:28
#, no-wrap
msgid "2012-04-18"
msgstr "2012-04-18"

#. type: Plain text
#: build/C/man3/malloc.3:31
msgid "malloc, free, calloc, realloc - Allocate and free dynamic memory"
msgstr "malloc, free, calloc, realloc - 動的なメモリの割り当てと解放を行う"

#. type: Plain text
#: build/C/man3/malloc.3:39
#, no-wrap
msgid ""
"B<void *malloc(size_t >I<size>B<);>\n"
"B<void free(void >I<*ptr>B<);>\n"
"B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
"B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
msgstr ""
"B<void *malloc(size_t >I<size>B<);>\n"
"B<void free(void >I<*ptr>B<);>\n"
"B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
"B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"

#.  glibc does this:
#. type: Plain text
#: build/C/man3/malloc.3:56
msgid ""
"The B<malloc>()  function allocates I<size> bytes and returns a pointer to "
"the allocated memory.  I<The memory is not initialized>.  If I<size> is 0, "
"then B<malloc>()  returns either NULL, or a unique pointer value that can "
"later be successfully passed to B<free>()."
msgstr ""
"B<malloc>() 関数は I<size> バイトを割り当て、 割り当てられたメモリに対する\n"
"ポインタを返す。I<メモリの内容は初期化されない>。 I<size> が 0 の場合、\n"
"B<malloc>() は NULL または B<free>() に後で渡しても問題の起こらない\n"
"一意なポインタ値を返す。"

#. type: Plain text
#: build/C/man3/malloc.3:72
msgid ""
"The B<free>()  function frees the memory space pointed to by I<ptr>, which "
"must have been returned by a previous call to B<malloc>(), B<calloc>()  or "
"B<realloc>().  Otherwise, or if I<free(ptr)> has already been called before, "
"undefined behavior occurs.  If I<ptr> is NULL, no operation is performed."
msgstr ""
"B<free>() 関数はポインタ I<ptr> が指すメモリ空間を解放する。このポインタ"
"は、\n"
"以前に呼び出された B<malloc>(), B<calloc>(), B<realloc>() のいずれかが返した"
"値で\n"
"なければならない。これ以外のポインタを指定したり、すでに I<free(ptr)> が実"
"行\n"
"されていたりした場合の動作は定義されていない。\n"
"I<ptr> が NULL の場合には、何の動作も行われない。"

#.  glibc does this:
#. type: Plain text
#: build/C/man3/malloc.3:91
msgid ""
"The B<calloc>()  function allocates memory for an array of I<nmemb> elements "
"of I<size> bytes each and returns a pointer to the allocated memory.  The "
"memory is set to zero.  If I<nmemb> or I<size> is 0, then B<calloc>()  "
"returns either NULL, or a unique pointer value that can later be "
"successfully passed to B<free>()."
msgstr ""
"B<calloc>() 関数は I<size> バイトの要素 I<nmemb> 個からなる配列にメモリを\n"
"割り当て、割り当てられたメモリに対するポインタを返す。 メモリの内容は数値ゼ"
"ロ\n"
"(全ビットが 0 のバイト) にセットされる。 I<nmemb> か I<size> が 0 の場合、\n"
"B<calloc>() は NULL または B<free>() に後で渡しても問題の起こらない一意な\n"
"ポインタ値を返す。"

#. type: Plain text
#: build/C/man3/malloc.3:127
msgid ""
"The B<realloc>()  function changes the size of the memory block pointed to "
"by I<ptr> to I<size> bytes.  The contents will be unchanged in the range "
"from the start of the region up to the minimum of the old and new sizes.  If "
"the new size is larger than the old size, the added memory will I<not> be "
"initialized.  If I<ptr> is NULL, then the call is equivalent to I<malloc"
"(size)>, for all values of I<size>; if I<size> is equal to zero, and I<ptr> "
"is not NULL, then the call is equivalent to I<free(ptr)>.  Unless I<ptr> is "
"NULL, it must have been returned by an earlier call to B<malloc>(), B<calloc>"
"()  or B<realloc>().  If the area pointed to was moved, a I<free(ptr)> is "
"done."
msgstr ""
"B<realloc>() は、ポインタ I<ptr> が示すメモリブロックのサイズを I<size> バイ"
"ト\n"
"に変更する。領域の先頭から、新旧のサイズの小さい方の位置までの範囲の内容は\n"
"変更されない。新しいサイズが前のサイズよりも大きい場合、追加されたメモリは\n"
"初期化 I<されない>。\n"
"I<ptr> が NULL の場合には I<malloc(size)> と等価である。\n"
"I<size> が 0 で I<ptr> が NULL でない場合には、 I<free(ptr)> と等価である。\n"
"I<ptr> が NULL 以外の場合、 I<ptr> は以前に呼び出された B<malloc>(), "
"B<calloc>(),\n"
"B<realloc>() のいずれかが返した値でなければならない。\n"
"I<ptr> が指す領域が移動されていた場合は I<free(ptr)> が実行される。"

#. type: Plain text
#: build/C/man3/malloc.3:147
msgid ""
"The B<malloc>()  and B<calloc>()  functions return a pointer to the "
"allocated memory that is suitably aligned for any kind of variable.  On "
"error, these functions return NULL.  NULL may also be returned by a "
"successful call to B<malloc>()  with a I<size> of zero, or by a successful "
"call to B<calloc>()  with I<nmemb> or I<size> equal to zero."
msgstr ""
"関数 B<calloc>() と B<malloc>() は、割り当てられたメモリへのポインタを返"
"す。\n"
"割り当てられたメモリは、あらゆる種類の変数に対応できるようにアラインメントさ"
"れる。\n"
"エラーの場合、これらの関数は NULL を返す。\n"
"I<size> が 0 で呼び出した B<malloc>() や、I<nmemb> か I<size> が 0 で呼び出し"
"た\n"
"B<calloc>() が成功した場合にも NULL が返される。"

#. type: Plain text
#: build/C/man3/malloc.3:151
msgid "The B<free>()  function returns no value."
msgstr "B<free>() 関数は値を返さない。"

#. type: Plain text
#: build/C/man3/malloc.3:166
msgid ""
"The B<realloc>()  function returns a pointer to the newly allocated memory, "
"which is suitably aligned for any kind of variable and may be different from "
"I<ptr>, or NULL if the request fails.  If I<size> was equal to 0, either "
"NULL or a pointer suitable to be passed to B<free>()  is returned.  If "
"B<realloc>()  fails the original block is left untouched; it is not freed or "
"moved."
msgstr ""
"B<realloc>() 関数は新たに割り当てられたメモリへのポインタを返す。\n"
"これはあらゆる種類の変数に対応できるようにアラインメントされており、\n"
"I<ptr> とは異なることもある。割り当て要求に失敗した場合は NULL が返る。\n"
"I<size> が 0 の場合には、NULL もしくは B<free>() に渡すことができるポインタが"
"返る。\n"
"B<realloc>() が失敗した場合には、元のブロックは変更されない。\n"
"つまり、解放されたり移動されたりはしない。"

#. type: Plain text
#: build/C/man3/malloc.3:168
msgid "C89, C99."
msgstr "C89, C99."

#. type: Plain text
#: build/C/man3/malloc.3:184
msgid ""
"By default, Linux follows an optimistic memory allocation strategy.  This "
"means that when B<malloc>()  returns non-NULL there is no guarantee that the "
"memory really is available.  In case it turns out that the system is out of "
"memory, one or more processes will be killed by the OOM killer.  For more "
"information, see the description of I</proc/sys/vm/overcommit_memory> and I</"
"proc/sys/vm/oom_adj> in B<proc>(5), and the kernel source file "
"I<Documentation/vm/overcommit-accounting>."
msgstr ""
"デフォルトでは、Linux は楽観的メモリ配置戦略を用いている。つまり、\n"
"B<malloc>() が NULL でない値を返しても、そのメモリが実際に利用可能であるこ"
"と\n"
"が保証されない。システムがメモリ不足状態になったとき、メモリ不足解決器 (OOM\n"
"killer) によって一つまたは複数のプロセスが削除される。\n"
"詳しい情報は、B<proc>(5) の I</proc/sys/vm/overcommit_memory> と\n"
"I<proc/sys/vm/oom_adj>、およびカーネルのソースファイルの\n"
"I<Documentation/vm/overcommit-accounting> を参照のこと。"

#. type: Plain text
#: build/C/man3/malloc.3:205
msgid ""
"Normally, B<malloc>()  allocates memory from the heap, and adjusts the size "
"of the heap as required, using B<sbrk>(2).  When allocating blocks of memory "
"larger than B<MMAP_THRESHOLD> bytes, the glibc B<malloc>()  implementation "
"allocates the memory as a private anonymous mapping using B<mmap>(2).  "
"B<MMAP_THRESHOLD> is 128 kB by default, but is adjustable using B<mallopt>"
"(3).  Allocations performed using B<mmap>(2)  are unaffected by the "
"B<RLIMIT_DATA> resource limit (see B<getrlimit>(2))."
msgstr ""
"通常、 B<malloc>()  は、ヒープからメモリを割り当て、必要に応じてヒープのサイ"
"ズを B<sbrk>(2)  を使って調節する。 B<MMAP_THRESHOLD> バイトよりも大きなメモ"
"リブロックを割り当てる場合、 glibc の B<malloc>()  実装は B<mmap>(2)  を使っ"
"てプライベートな無名マッピング (anonymous mapping) として メモリを割り当て"
"る。 デフォルトでは B<MMAP_THRESHOLD> は 128 kB だが、 B<mallopt>(3)  を使っ"
"て調整できる。 B<mmap>(2)  を使って行われたメモリ割り当ては B<RLIMIT_DATA> リ"
"ソース上限の影響を受けない (B<getrlimit>(2)  参照)。"

#. type: Plain text
#: build/C/man3/malloc.3:223
msgid ""
"To avoid corruption in multithreaded applications, mutexes are used "
"internally to protect the memory-management data structures employed by "
"these functions.  In a multithreaded application in which threads "
"simultaneously allocate and free memory, there could be contention for these "
"mutexes.  To scalably handle memory allocation in multithreaded "
"applications, glibc creates additional I<memory allocation arenas> if mutex "
"contention is detected.  Each arena is a large region of memory that is "
"internally allocated by the system (using B<brk>(2)  or B<mmap>(2)), and "
"managed with its own mutexes."
msgstr ""
"マルチスレッドアプリケーションでのデータ破損を回避するため、内部では mutex"
"を\n"
"使用して、これらの関数で利用されるメモリ管理用のデータ構造を保護している。\n"
"複数のスレッドが同時にメモリの確保や解放を行うようなマルチスレッドアプリ"
"ケー\n"
"ションでは、これらの mutex の衝突が起こり得る。マルチスレッドアプリケーショ"
"ン\n"
"でのメモリ割り当て処理にスケーラビリティを持たせるために、glibc では mutex "
"の\n"
"衝突が検出された際には追加の I<メモリ割り当て領域> を作成する。\n"
"追加領域の各々は、(B<brk>(2) や B<mmap>(2) を使って) システムにより内部的に\n"
"割り当てられた大きな領域で、それぞれ独自の mutex により管理されている。"

#. type: Plain text
#: build/C/man3/malloc.3:241
msgid ""
"The UNIX 98 standard requires B<malloc>(), B<calloc>(), and B<realloc>()  to "
"set I<errno> to B<ENOMEM> upon failure.  Glibc assumes that this is done "
"(and the glibc versions of these routines do this); if you use a private "
"malloc implementation that does not set I<errno>, then certain library "
"routines may fail without having a reason in I<errno>."
msgstr ""
"UNIX 98 標準では、 B<malloc>(), B<calloc>(), B<realloc>() は実行に失敗したと"
"きに I<errno> を B<ENOMEM> に設定することになっている。 Glibc ではこれが守ら"
"れていることを仮定している (またこれらのルーチンの glibc バージョンはこのこと"
"を守っている)。 個人的に別の malloc の実装を使っていて、その malloc が"
"I<errno> を設定しない場合には、失敗した際に I<errno> にエラーの理由を設定しな"
"いライブラリルーチンがあるかもしれない。"

#. type: Plain text
#: build/C/man3/malloc.3:250
msgid ""
"Crashes in B<malloc>(), B<calloc>(), B<realloc>(), or B<free>()  are almost "
"always related to heap corruption, such as overflowing an allocated chunk or "
"freeing the same pointer twice."
msgstr ""
"B<malloc>(), B<calloc>(), B<realloc>(), B<free>()  における事故は、 ほとんど"
"の場合はヒープの破壊 (corruption) が原因である。 例えば、割り当てられた領域を"
"オーバーフローする、 同じポインタに二度 free する、などがこれにあたる。"

#. type: Plain text
#: build/C/man3/malloc.3:257
msgid ""
"Recent versions of Linux libc (later than 5.4.23) and glibc (2.x)  include a "
"B<malloc>()  implementation which is tunable via environment variables.  For "
"details, see B<mallopt>(3)."
msgstr ""
"Linux libc の新しいバージョン (5.4.23 より後) と glibc (2.x) には、\n"
"環境変数で動作を調整できる B<malloc>() 実装が含まれている。\n"
"詳細は B<mallopt>(3) を参照のこと。"

#.  http://g.oswego.edu/dl/html/malloc.html
#.  A Memory Allocator - by Doug Lea
#.  http://www.bozemanpass.com/info/linux/malloc/Linux_Heap_Contention.html
#.  Linux Heap, Contention in free() - David Boreham
#.  http://www.citi.umich.edu/projects/linux-scalability/reports/malloc.html
#.  malloc() Performance in a Multithreaded Linux Environment -
#.      Check Lever, David Boreham
#. type: Plain text
#: build/C/man3/malloc.3:278
msgid ""
"B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), B<malloc_trim>"
"(3), B<malloc_usable_size>(3), B<mallopt>(3), B<mcheck>(3), B<mtrace>(3), "
"B<posix_memalign>(3)"
msgstr ""
"B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3),\n"
"B<malloc_trim>(3), B<malloc_usable_size>(3), B<mallopt>(3),\n"
"B<mcheck>(3), B<mtrace>(3), B<posix_memalign>(3)"

#. type: TH
#: build/C/man3/mblen.3:14
#, no-wrap
msgid "MBLEN"
msgstr "MBLEN"

#. type: TH
#: build/C/man3/mblen.3:14 build/C/man3/wctomb.3:14
#, no-wrap
msgid "1999-07-25"
msgstr "1999-07-25"

#. type: Plain text
#: build/C/man3/mblen.3:17
msgid "mblen - determine number of bytes in next multibyte character"
msgstr "mblen - 次のマルチバイト文字のバイト数を返す"

#. type: Plain text
#: build/C/man3/mblen.3:22
#, no-wrap
msgid "B<int mblen(const char *>I<s>B<, size_t >I<n>B<);>\n"
msgstr "B<int mblen(const char *>I<s>B<, size_t >I<n>B<);>\n"

#. type: Plain text
#: build/C/man3/mblen.3:36
msgid ""
"If I<s> is not a NULL pointer, the B<mblen>()  function inspects at most "
"I<n> bytes of the multibyte string starting at I<s> and extracts the next "
"complete multibyte character.  It uses a static anonymous shift state only "
"known to the B<mblen>()  function.  If the multibyte character is not the "
"null wide character, it returns the number of bytes that were consumed from "
"I<s>.  If the multibyte character is the null wide character, it returns 0."
msgstr ""
"I<s> が NULL ポインターでなければ、 B<mblen>()  関数は I<s> から始まる最大 "
"I<n> バイトのマルチバイト文字列を検査して、 次の完全なマルチバイト文字を取り"
"出す。これには B<mblen>()  関数のみが使用する静的で名前のないシフト状態が使用"
"される。 マルチバイト文字がナルワイド文字でなければ I<s> から消費される バイ"
"ト数を返す。マルチバイト文字がナルワイド文字ならば 0 を返す。"

#. type: Plain text
#: build/C/man3/mblen.3:44
msgid ""
"If the I<n> bytes starting at I<s> do not contain a complete multibyte "
"character, B<mblen>()  returns -1.  This can happen even if I<n> is greater "
"than or equal to I<MB_CUR_MAX>, if the multibyte string contains redundant "
"shift sequences."
msgstr ""
"I<s> から始まる I<n> バイトが完全なマルチバイト文字を含んで いなければ、 "
"B<mblen>()  は -1 を返す。マルチバイト文字列 に冗長なシフトシーケンスが含まれ"
"ていると、 I<n> が I<MB_CUR_MAX> 以上の場合にも このようなことが起こりえる。"

#. type: Plain text
#: build/C/man3/mblen.3:49
msgid ""
"If the multibyte string starting at I<s> contains an invalid multibyte "
"sequence before the next complete character, B<mblen>()  also returns -1."
msgstr ""
"I<s> から始まるマルチバイト文字列が次の完全な文字の前に 不正なマルチバイト列"
"を含んでいる場合にも、 B<mblen>()  は -1 を返す。"

#.  The Dinkumware doc and the Single UNIX specification say this, but
#.  glibc doesn't implement this.
#. type: Plain text
#: build/C/man3/mblen.3:58
msgid ""
"If I<s> is a NULL pointer, the B<mblen>()  function resets the shift state, "
"only known to this function, to the initial state, and returns nonzero if "
"the encoding has nontrivial shift state, or zero if the encoding is "
"stateless."
msgstr ""
"I<s> が NULL ポインターならば、 B<mblen>()  関数はこの関数のみが 使用するシフ"
"ト状態を初期化状態に戻し、シフト状態を使用した文字符号の場合に はゼロ以外を、"
"文字符号がシフト状態を持たない場合にはゼロを返す。"

#. type: Plain text
#: build/C/man3/mblen.3:68
msgid ""
"The B<mblen>()  function returns the number of bytes parsed from the "
"multibyte sequence starting at I<s>, if a non-null wide character was "
"recognized.  It returns 0, if a null wide character was recognized.  It "
"returns -1, if an invalid multibyte sequence was encountered or if it "
"couldn't parse a complete multibyte character."
msgstr ""
"B<mblen>()  関数は I<s> から始まるマルチバイト列を検査して ナルワイド文字以外"
"を確認した場合にはそのバイト数を返す。 ナルワイド文字を確認した場合にはゼロを"
"返す。不正なマルチバイト列に 遭遇した場合や完全なマルチバイト文字を解析できな"
"かった場合には -1 を返す。"

#. type: Plain text
#: build/C/man3/mblen.3:70 build/C/man3/mbstowcs.3:70 build/C/man3/mbtowc.3:78
#: build/C/man3/wcstombs.3:70 build/C/man3/wctomb.3:66
msgid "C99."
msgstr "C99."

#. type: Plain text
#: build/C/man3/mblen.3:77
msgid ""
"The behavior of B<mblen>()  depends on the B<LC_CTYPE> category of the "
"current locale."
msgstr ""
"B<mblen>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"

#. type: Plain text
#: build/C/man3/mblen.3:82
msgid ""
"The function B<mbrlen>(3)  provides a better interface to the same "
"functionality."
msgstr "B<mbrlen>(3)  関数は同じ機能のより良いインタフェースを提供する。"

#. type: Plain text
#: build/C/man3/mblen.3:84
msgid "B<mbrlen>(3)"
msgstr "B<mbrlen>(3)"

#. type: TH
#: build/C/man3/mbstowcs.3:14
#, no-wrap
msgid "MBSTOWCS"
msgstr "MBSTOWCS"

#. type: TH
#: build/C/man3/mbstowcs.3:14 build/C/man3/mbtowc.3:14
#, no-wrap
msgid "2011-09-28"
msgstr "2011-09-28"

#. type: Plain text
#: build/C/man3/mbstowcs.3:17
msgid "mbstowcs - convert a multibyte string to a wide-character string"
msgstr "mbstowcs - マルチバイト文字列をワイド文字列に変換する"

#. type: Plain text
#: build/C/man3/mbstowcs.3:22
#, no-wrap
msgid "B<size_t mbstowcs(wchar_t *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
msgstr "B<size_t mbstowcs(wchar_t *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"

#. type: Plain text
#: build/C/man3/mbstowcs.3:33
msgid ""
"If I<dest> is not a NULL pointer, the B<mbstowcs>()  function converts the "
"multibyte string I<src> to a wide-character string starting at I<dest>.  At "
"most I<n> wide characters are written to I<dest>.  The conversion starts in "
"the initial state.  The conversion can stop for three reasons:"
msgstr ""
"I<dest> が NULL ポインターでなければ B<mbstowcs>()  関数は マルチバイト文字"
"列 I<*src> を I<dest> から始まるワイド文字列に 変換する。I<dest> には最大で "
"I<n> 文字のワイド文字が 書き込まれる。変換は初期状態で開始され、 以下の三つの"
"いずれかの条件で停止する:"

#. type: IP
#: build/C/man3/mbstowcs.3:33
#, no-wrap
msgid "1."
msgstr "1."

#. type: Plain text
#: build/C/man3/mbstowcs.3:38
msgid ""
"An invalid multibyte sequence has been encountered.  In this case I<"
"(size_t)\\ -1> is returned."
msgstr "不正なマルチバイト列に遭遇した。この場合には I<(size_t)\\ -1> を返す。"

#. type: IP
#: build/C/man3/mbstowcs.3:38
#, no-wrap
msgid "2."
msgstr "2."

#. type: Plain text
#: build/C/man3/mbstowcs.3:43
msgid ""
"I<n> non-L\\(aq\\e0\\(aq wide characters have been stored at I<dest>.  In "
"this case the number of wide characters written to I<dest> is returned, but "
"the shift state at this point is lost."
msgstr ""
"I<n> 文字の L\\(aq\\e0\\(aq 以外のワイド文字を I<dest> に格納した場合。 この"
"場合は I<*src> が次に変換されるマルチバイト列を指すようにして、 I<dest> に書"
"き込まれたワイド文字の数を返す。しかしこの指している 場所のシフト状態は失われ"
"る。"

#. type: IP
#: build/C/man3/mbstowcs.3:43
#, no-wrap
msgid "3."
msgstr "3."

#. type: Plain text
#: build/C/man3/mbstowcs.3:48
msgid ""
"The multibyte string has been completely converted, including the "
"terminating null wide character (\\(aq\\e0\\(aq).  In this case the number "
"of wide characters written to I<dest>, excluding the terminating null wide "
"character, is returned."
msgstr ""
"マルチバイト文字列が終端の NULL ワイド文字 (\\(aq\\e0\\(aq) まで含めて完全に "
"変換された場合。この場合は終端の NULL ワイド文字を除いて I<dest> に書き込まれ"
"た文字数を返す。"

#. type: Plain text
#: build/C/man3/mbstowcs.3:51
msgid ""
"The programmer must ensure that there is room for at least I<n> wide "
"characters at I<dest>."
msgstr ""
"プログラマーは I<dest> に最低でも I<n> ワイド文字を書き込むこ とができる空間"
"があることを保証しなければならない。"

#. type: Plain text
#: build/C/man3/mbstowcs.3:55
msgid ""
"If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
"except that the converted wide characters are not written out to memory, and "
"that no length limit exists."
msgstr ""
"I<dest> が NULL の場合、I<n> は無視され、上記と同様の変換が 行われるが、変換"
"されたワイド文字はメモリに書き込まれず、変換先の上限 が存在しない。"

#. type: Plain text
#: build/C/man3/mbstowcs.3:58
msgid ""
"In order to avoid the case 2 above, the programmer should make sure I<n> is "
"greater or equal to I<mbstowcs(NULL,src,0)+1>."
msgstr ""
"上記の 2. の場合を避けるためにプログラマーは I<n> が I<mbstowcs(NULL,"
"src,0)+1> 以上であることを保証すべきである。"

#. type: Plain text
#: build/C/man3/mbstowcs.3:68
msgid ""
"The B<mbstowcs>()  function returns the number of wide characters that make "
"up the converted part of the wide-character string, not including the "
"terminating null wide character.  If an invalid multibyte sequence was "
"encountered, I<(size_t)\\ -1> is returned."
msgstr ""
"B<mbstowcs>()  関数はワイド文字列に変換完了したワイド文字の数を返す。 終端の"
"ナルワイド文字は含まない。不正なマルチバイト列に遭遇した場合には I<"
"(size_t)\\ -1> を返す。"

#. type: Plain text
#: build/C/man3/mbstowcs.3:77
msgid ""
"The behavior of B<mbstowcs>()  depends on the B<LC_CTYPE> category of the "
"current locale."
msgstr ""
"B<mbstowcs>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"

#. type: Plain text
#: build/C/man3/mbstowcs.3:82
msgid ""
"The function B<mbsrtowcs>(3)  provides a better interface to the same "
"functionality."
msgstr "B<mbsrtowcs>(3)  関数は同じ機能のより良いインターフェースを提供する。"

#. type: Plain text
#: build/C/man3/mbstowcs.3:85
msgid "B<mbsrtowcs>(3), B<wcstombs(3)>"
msgstr "B<mbsrtowcs>(3), B<wcstombs(3)>"

#. type: TH
#: build/C/man3/mbtowc.3:14
#, no-wrap
msgid "MBTOWC"
msgstr "MBTOWC"

#. type: Plain text
#: build/C/man3/mbtowc.3:17
msgid "mbtowc - convert a multibyte sequence to a wide character"
msgstr "mbtowc - マルチバイト列をワイド文字に変換する"

#. type: Plain text
#: build/C/man3/mbtowc.3:22
#, no-wrap
msgid "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
msgstr "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"

#. type: Plain text
#: build/C/man3/mbtowc.3:37
msgid ""
"The main case for this function is when I<s> is not NULL and I<pwc> is not "
"NULL.  In this case, the B<mbtowc>()  function inspects at most I<n> bytes "
"of the multibyte string starting at I<s>, extracts the next complete "
"multibyte character, converts it to a wide character and stores it at "
"I<*pwc>.  It updates an internal shift state only known to the mbtowc "
"function.  If I<s> does not point to a null byte (\\(aq\\e0\\(aq), it "
"returns the number of bytes that were consumed from I<s>, otherwise it "
"returns 0."
msgstr ""
"この関数が用いられる場合、通常 I<s> が NULL でなく I<pwc> も NULL でない。こ"
"の場合は B<mbtowc>()  関数は I<s> から始まる 最大 I<n> バイトのマルチバイト文"
"字列を検査して、次の完全なマルチバイト 文字を取り出し、それをワイド文字に変換"
"して I<*pwc> に格納する。 同時に mbtowc 関数のみが使用する内部状態を更新す"
"る。I<s> が NULL バイト (\\(aq\\e0\\(aq) 以外を指している場合は、I<s> から消"
"費するバイト数を返す。 I<s> が NULL バイトを指している場合には 0 を返す。"

#. type: Plain text
#: build/C/man3/mbtowc.3:44
msgid ""
"If the I<n> bytes starting at I<s> do not contain a complete multibyte "
"character, or if they contain an invalid multibyte sequence, B<mbtowc>()  "
"returns -1.  This can happen even if I<n> E<gt>= I<MB_CUR_MAX>, if the "
"multibyte string contains redundant shift sequences."
msgstr ""
"I<s> から始まる I<n> バイトが完全なマルチバイト文字を含んで いない場合や不正"
"なマルチバイト列を含んでいる場合には B<mbtowc>()  は -1 を返す。マルチバイト"
"文字列に冗長なシフトシーケンスが 含まれていると I<n> E<gt>= I<MB_CUR_MAX> の"
"場合もこのようなことが 起こりえる。"

#. type: Plain text
#: build/C/man3/mbtowc.3:51
msgid ""
"A different case is when I<s> is not NULL but I<pwc> is NULL.  In this case "
"the B<mbtowc>()  function behaves as above, except that it does not store "
"the converted wide character in memory."
msgstr ""
"I<s> が NULL でなく I<pwc> が NULL の場合は B<mbtowc>()  関数は 上記と同様に"
"動作するが、変換したワイド文字はメモリには書き込まれない。"

#.  The Dinkumware doc and the Single UNIX specification say this, but
#.  glibc doesn't implement this.
#. type: Plain text
#: build/C/man3/mbtowc.3:64
msgid ""
"A third case is when I<s> is NULL.  In this case, I<pwc> and I<n> are "
"ignored.  The B<mbtowc>()  function resets the shift state, only known to "
"this function, to the initial state, and returns nonzero if the encoding has "
"nontrivial shift state, or zero if the encoding is stateless."
msgstr ""
"三番目の場合として I<s> が NULL の場合は I<pwc> と I<n> は 無視される。 "
"B<mbtowc>()  関数のみが使用するシフト状態は初期状態に 戻される。そして文字符"
"号がシフト状態に依存するならばゼロ以外を、文字符号が 状態によらないならばゼロ"
"を返す。"

#. type: Plain text
#: build/C/man3/mbtowc.3:70
msgid ""
"If I<s> is not NULL, the B<mbtowc>()  function returns the number of "
"consumed bytes starting at I<s>, or 0 if I<s> points to a null byte, or -1 "
"upon failure."
msgstr ""
"I<s> が NULL でなければ B<mbtowc>()  関数は I<s> から消費した バイト数を、"
"I<s> がナル文字を指している場合はゼロを、 変換に失敗した場合は -1 を返す。"

#. type: Plain text
#: build/C/man3/mbtowc.3:76
msgid ""
"If I<s> is NULL, the B<mbtowc>()  function returns nonzero if the encoding "
"has nontrivial shift state, or zero if the encoding is stateless."
msgstr ""
"I<s> が NULL ならば B<mbtowc>()  関数は文字符号がシフト状態に依存 していれば"
"ゼロ以外を、状態によらなければゼロを返す。"

#. type: Plain text
#: build/C/man3/mbtowc.3:85
msgid ""
"The behavior of B<mbtowc>()  depends on the B<LC_CTYPE> category of the "
"current locale."
msgstr ""
"B<mbtowc>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"

#. type: Plain text
#: build/C/man3/mbtowc.3:91
msgid ""
"This function is not multithread safe.  The function B<mbrtowc>(3)  provides "
"a better interface to the same functionality."
msgstr ""
"この関数はマルチスレッドでは安全ではない。 B<mbrtowc>(3)  関数は 同じ機能のよ"
"り良いインターフェースを提供する。"

#. type: Plain text
#: build/C/man3/mbtowc.3:95
msgid "B<MB_CUR_MAX>(3), B<mbrtowc>(3), B<mbstowcs>(3)"
msgstr "B<MB_CUR_MAX>(3), B<mbrtowc>(3), B<mbstowcs>(3)"

#. type: TH
#: build/C/man3/mkdtemp.3:24
#, no-wrap
msgid "MKDTEMP"
msgstr "MKDTEMP"

#. type: Plain text
#: build/C/man3/mkdtemp.3:27
msgid "mkdtemp - create a unique temporary directory"
msgstr "mkdtemp - 他と重ならない一時的なディレクトリを作成する"

#. type: Plain text
#: build/C/man3/mkdtemp.3:32
#, no-wrap
msgid "B<char *mkdtemp(char *>I<template>B<);>\n"
msgstr "B<char *mkdtemp(char *>I<template>B<);>\n"

#. type: Plain text
#: build/C/man3/mkdtemp.3:40
msgid "B<mkdtemp>():"
msgstr "B<mkdtemp>():"

#. type: Plain text
#: build/C/man3/mkdtemp.3:45
msgid "_BSD_SOURCE"
msgstr "_BSD_SOURCE"

#. type: Plain text
#: build/C/man3/mkdtemp.3:47
msgid "|| /* Since glibc 2.10: */"
msgstr "|| /* Since glibc 2.10: */"

#. type: Plain text
#: build/C/man3/mkdtemp.3:49
msgid "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"
msgstr "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"

#. type: Plain text
#: build/C/man3/mkdtemp.3:66
msgid ""
"The B<mkdtemp>()  function generates a uniquely named temporary directory "
"from I<template>.  The last six characters of I<template> must be XXXXXX and "
"these are replaced with a string that makes the directory name unique.  The "
"directory is then created with permissions 0700.  Since it will be modified, "
"I<template> must not be a string constant, but should be declared as a "
"character array."
msgstr ""
"B<mkdtemp>()  関数は、他と重ならない名前の一時的なディレクトリを I<template> "
"から作成する。 I<template> の後から 6 文字は XXXXXX でなければならない。 この"
"部分はディレクトリ名を他と重ならなくするための 文字列で置き換えられる。 ディ"
"レクトリは許可属性を 0700 として作成される。 I<template> は変更されるので、文"
"字列定数にしてはならず、文字配列にすべきである。"

#. type: Plain text
#: build/C/man3/mkdtemp.3:73
msgid ""
"The B<mkdtemp>()  function returns a pointer to the modified template string "
"on success, and NULL on failure, in which case I<errno> is set appropriately."
msgstr ""
"成功した場合、 B<mkdtemp>()  関数は 変更された template 文字列へのポインタを"
"返す。 失敗した場合は、NULL を返して、 I<errno> を適切に設定する。"

#. type: SH
#: build/C/man3/mkdtemp.3:73 build/C/man3/mkstemp.3:142
#: build/C/man3/mktemp.3:84 build/C/man3/putenv.3:70 build/C/man3/random.3:130
#: build/C/man3/random_r.3:100 build/C/man3/rpmatch.3:71
#: build/C/man3/setenv.3:98 build/C/man3/strtod.3:154
#: build/C/man3/strtol.3:124 build/C/man3/strtoul.3:127
#, no-wrap
msgid "ERRORS"
msgstr "エラー"

#. type: TP
#: build/C/man3/mkdtemp.3:74 build/C/man3/mkstemp.3:147
#: build/C/man3/mktemp.3:85 build/C/man3/random.3:131
#: build/C/man3/random_r.3:101 build/C/man3/random_r.3:105
#: build/C/man3/random_r.3:114 build/C/man3/setenv.3:99
#: build/C/man3/strtol.3:125 build/C/man3/strtoul.3:128
#, no-wrap
msgid "B<EINVAL>"
msgstr "B<EINVAL>"

#. type: Plain text
#: build/C/man3/mkdtemp.3:78
msgid ""
"The last six characters of I<template> were not XXXXXX.  Now I<template> is "
"unchanged."
msgstr ""
"I<template> の最後の 6 文字が XXXXXX でない。この場合、I<template> は変更され"
"ない。"

#. type: Plain text
#: build/C/man3/mkdtemp.3:82
msgid "Also see B<mkdir>(2)  for other possible values for I<errno>."
msgstr "I<errno> に設定される他の値については、 B<mkdir>(2)  を参照すること。"

#. type: Plain text
#: build/C/man3/mkdtemp.3:84
msgid "Available since glibc 2.1.91."
msgstr "OpenBSD 2.2 で導入された。"

#.  As at 2006, this function is being considered for a revision of POSIX.1
#.  Also in NetBSD 1.4.
#. type: Plain text
#: build/C/man3/mkdtemp.3:89
msgid "POSIX.1-2008.  This function is present on the BSDs."
msgstr "POSIX.1-2008.  この関数は BSD に存在する。"

#. type: Plain text
#: build/C/man3/mkdtemp.3:96
msgid ""
"B<mkdir>(2), B<mkstemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), "
"B<tmpnam>(3)"
msgstr ""
"B<mkdir>(2), B<mkstemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), "
"B<tmpnam>(3)"

#. type: TH
#: build/C/man3/mkstemp.3:33
#, no-wrap
msgid "MKSTEMP"
msgstr "MKSTEMP"

#. type: TH
#: build/C/man3/mkstemp.3:33
#, no-wrap
msgid "2012-04-21"
msgstr "2012-04-21"

#. type: Plain text
#: build/C/man3/mkstemp.3:36
msgid "mkstemp, mkostemp, mkstemps, mkostemps - create a unique temporary file"
msgstr "mkstemp, mkostemp, mkstemps, mkostemps - 他と重ならない名前を持つ一時ファイルを作成する"

#. type: Plain text
#: build/C/man3/mkstemp.3:41
#, no-wrap
msgid "B<int mkstemp(char *>I<template>B<);>\n"
msgstr "B<int mkstemp(char *>I<template>B<);>\n"

#. type: Plain text
#: build/C/man3/mkstemp.3:43
#, no-wrap
msgid "B<int mkostemp(char *>I<template>B<, int >I<flags>B<);>\n"
msgstr "B<int mkostemp(char *>I<template>B<, int >I<flags>B<);>\n"

#. type: Plain text
#: build/C/man3/mkstemp.3:45
#, no-wrap
msgid "B<int mkstemps(char *>I<template>B<, int >I<suffixlen>B<);>\n"
msgstr "B<int mkstemps(char *>I<template>B<, int >I<suffixlen>B<);>\n"

#. type: Plain text
#: build/C/man3/mkstemp.3:47
#, no-wrap
msgid "B<int mkostemps(char *>I<template>B<, int >I<suffixlen>B<, int >I<flags>B<);>\n"
msgstr "B<int mkostemps(char *>I<template>B<, int >I<suffixlen>B<, int >I<flags>B<);>\n"

#. type: Plain text
#: build/C/man3/mkstemp.3:55
msgid "B<mkstemp>():"
msgstr "B<mkstemp>():"

#. type: Plain text
#: build/C/man3/mkstemp.3:60 build/C/man3/mktemp.3:61
msgid ""
"_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
"\\ &&\\ _XOPEN_SOURCE_EXTENDED"
msgstr ""
"_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
"\\ &&\\ _XOPEN_SOURCE_EXTENDED"

#. type: Plain text
#: build/C/man3/mkstemp.3:62
msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
msgstr "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"

#. type: Plain text
#: build/C/man3/mkstemp.3:68
msgid "B<mkostemp>(): _GNU_SOURCE"
msgstr "B<mkostemp>(): _GNU_SOURCE"

#. type: Plain text
#: build/C/man3/mkstemp.3:71
msgid "B<mkstemps>(): _BSD_SOURCE || _SVID_SOURCE"
msgstr "B<mkstemps>(): _BSD_SOURCE || _SVID_SOURCE"

#. type: Plain text
#: build/C/man3/mkstemp.3:74
msgid "B<mkostemps>(): _GNU_SOURCE"
msgstr "B<mkostemps>(): _GNU_SOURCE"

#. type: Plain text
#: build/C/man3/mkstemp.3:81
msgid ""
"The B<mkstemp>()  function generates a unique temporary filename from "
"I<template>, creates and opens the file, and returns an open file descriptor "
"for the file."
msgstr ""
"関数 B<mkstemp>()  は引数 I<template> から他と重ならない一時ファイル名を生成"
"し、 そのファイルの作成とオープンを行い、 そのファイルに対するオープン済みの"
"ファイルディスクリプタを返す。"

#. type: Plain text
#: build/C/man3/mkstemp.3:89
msgid ""
"The last six characters of I<template> must be \"XXXXXX\" and these are "
"replaced with a string that makes the filename unique.  Since it will be "
"modified, I<template> must not be a string constant, but should be declared "
"as a character array."
msgstr ""
"引数 I<template> で指示する文字列の後ろの 6 文字は XXXXXX である必要がある。 "
"この部分がファイル名を他と重ならないようにする文字で置き換えられる。 "
"I<template> は書き換えられるため、文字列定数ではなく文字配列として 宣言するよ"
"うにしなければならない。"

#. type: Plain text
#: build/C/man3/mkstemp.3:99
msgid ""
"The file is created with permissions 0600, that is, read plus write for "
"owner only.  (In glibc versions 2.06 and earlier, the file is created with "
"permissions 0666, that is, read and write for all users.)  The returned file "
"descriptor provides both read and write access to the file.  The file is "
"opened with the B<open>(2)  B<O_EXCL> flag, guaranteeing that the caller is "
"the process that creates the file."
msgstr ""
"ファイルは許可モード 0600 で作成され、所有者のみが読み書き可能である (glibc "
"バージョン 2.06 以前では、ファイルは許可モード 0666 で作成され、 全てのユーザ"
"が読み書き可能であった)。 返されるファイルディスクリプタで、このファイルへの"
"読み書き両方のアクセスが 可能である。 呼び出し者がそのファイルを作成するプロ"
"セスであることを保証するために、 ファイルは B<open>(2)  の B<O_EXCL> フラグ付"
"きでオープンされる。"

#. type: Plain text
#: build/C/man3/mkstemp.3:111
msgid ""
"The B<mkostemp>()  function is like B<mkstemp>(), with the difference that "
"flags as for B<open>(2)  may be specified in I<flags> (e.g., B<O_APPEND>, "
"B<O_SYNC>)."
msgstr ""
"B<mkostemp>() 関数は B<mkstemp>() と同様だが、B<open>(2) に渡される\n"
"フラグ O_APPENDB<,> B<O_SYNC> など) を I<flags> で指定できる点が異なる"

#. type: Plain text
#: build/C/man3/mkstemp.3:127
msgid ""
"The B<mkstemps>()  function is like B<mkstemp>(), except that the string in "
"I<template> contains a suffix of I<suffixlen> characters.  Thus, I<template> "
"is of the form I<prefixXXXXXXsuffix>, and the string XXXXXX is modified as "
"for B<mkstemp>()."
msgstr ""
"B<mkstemps>() 関数は B<mkstemp>() と同様だが、 I<template> 内の文字列に長さ\n"
"が I<suffixlen> 文字の接尾辞 (suffix) が含まれる点が異なる。\n"
"したがって、 I<template> は I<prefixXXXXXXsuffix> の形式となる。\n"
"文字列 XXXXXX の部分は B<mkstemp>() により更新される。"

#. type: Plain text
#: build/C/man3/mkstemp.3:136
msgid ""
"The B<mkostemps>()  function is to B<mkstemps>()  as B<mkostemp>()  is to "
"B<mkstemp>()."
msgstr ""
"B<mkostemps>() と B<mkstemps>() の関係は、\n"
"B<mkostemp>() と B<mkstemp>() の関係と同じである。"

#. type: Plain text
#: build/C/man3/mkstemp.3:142
msgid ""
"On success, these functions return the file descriptor of the temporary "
"file.  On error, -1 is returned, and I<errno> is set appropriately."
msgstr ""
"成功すると、これらの関数は一時ファイルのファイルディスクリプタを返す。 エラー"
"の場合は、-1 を返し、 I<errno> を適切に設定する。"

#. type: TP
#: build/C/man3/mkstemp.3:143
#, no-wrap
msgid "B<EEXIST>"
msgstr "B<EEXIST>"

#. type: Plain text
#: build/C/man3/mkstemp.3:147
msgid ""
"Could not create a unique temporary filename.  Now the contents of "
"I<template> are undefined."
msgstr ""
"すでに同じ名前を持つファイルが存在した。 I<template> の内容は不定である。"

#. type: Plain text
#: build/C/man3/mkstemp.3:155
msgid ""
"For B<mkstemp>()  and B<mkostemp>(): The last six characters of I<template> "
"were not XXXXXX; now I<template> is unchanged."
msgstr ""
"B<mkstemp>() と B<mkostemp>() の場合:\n"
"I<template> の最後の 6 文字が XXXXXX でなかった。\n"
"この場合、I<template> は変更されない。"

#. type: Plain text
#: build/C/man3/mkstemp.3:166
msgid ""
"For B<mkstemps>()  and B<mkostemps>(): I<template> is less than I<(6 + "
"suffixlen)> characters long, or the last 6 characters before the suffix in "
"I<template> were not XXXXXX."
msgstr ""
"B<mkstemps>() と B<mkostemps>() の場合:\n"
"I<template> の長さが I<(6 + suffixlen)> 文字より短い、または\n"
"I<template> の接尾辞の直前の 6 文字が XXXXXX ではなかった。"

#. type: Plain text
#: build/C/man3/mkstemp.3:169
msgid ""
"These functions may also fail with any of the errors described for B<open>"
"(2)."
msgstr ""
"これらの関数は B<open>(2) に書かれているエラーのいずれかで失敗することもあ"
"る。"

#. type: Plain text
#: build/C/man3/mkstemp.3:176
msgid ""
"B<mkostemp>()  is available since glibc 2.7.  B<mkstemps>()  and B<mkostemps>"
"()  are available since glibc 2.11."
msgstr ""
"B<mkostemp>() は glibc 2.7 以降で利用できる。\n"
"B<mkstemps>() と B<mkostemps>() は glibc 2.11 以降で利用できる。"

#. type: Plain text
#: build/C/man3/mkstemp.3:179
msgid "B<mkstemp>(): 4.3BSD, POSIX.1-2001."
msgstr "B<mkstemp>(): 4.3BSD, POSIX.1-2001."

#.  mkstemps() appears to be at least on the BSDs, Mac OS X, Solaris,
#.  and Tru64.
#. type: Plain text
#: build/C/man3/mkstemp.3:184
msgid "B<mkstemps>(): unstandardized, but appears on several other systems."
msgstr ""
"B<mkstemps>(): 標準化されていないが、他のいくつかのシステムにも存在する。"

#. type: Plain text
#: build/C/man3/mkstemp.3:189
msgid "B<mkostemp>()  and B<mkostemps>(): are glibc extensions."
msgstr "B<mkostemp>() と B<mkostemps>(): glibc による拡張。"

#. type: Plain text
#: build/C/man3/mkstemp.3:193
msgid ""
"The old behavior of creating a file with mode 0666 may be a security risk, "
"especially since other UNIX flavors use 0600, and somebody might overlook "
"this detail when porting programs."
msgstr ""
"許可モード 0666 でファイルを作成するという古い動作は、 セキュリティ上のリス"
"ク\n"
"になる場合がある。 特に他の UNIX では許可モードとして 0600 を使うため、\n"
"プログラムを移植する際、この細かな違いを見落とす可能性があるからだ。"

#. type: Plain text
#: build/C/man3/mkstemp.3:204
msgid ""
"More generally, the POSIX specification of B<mkstemp>()  does not say "
"anything about file modes, so the application should make sure its file mode "
"creation mask (see B<umask>(2))  is set appropriately before calling "
"B<mkstemp>()  (and B<mkostemp>())."
msgstr ""
"より一般的には、 B<mkstemp>()  の POSIX 規定ではファイルモードについて何も述"
"べていない。 従って、アプリケーションは B<mkstemp>()  (や B<mkostemp>())  を"
"呼び出す前にファイルモード生成マスク (B<umask>(2)  参照) が適切に設定されてい"
"るか確認するべきである。"

#. type: Plain text
#: build/C/man3/mkstemp.3:211
msgid ""
"The prototype for B<mktemp>()  is in I<E<lt>unistd.hE<gt>> for libc4, libc5, "
"glibc1; glibc2 follows POSIX.1 and has the prototype in I<E<lt>stdlib."
"hE<gt>>."
msgstr ""
"B<mktemp>()  のプロトタイプ宣言は、libc4, libc5, glibc1 では I<E<lt>unistd."
"hE<gt>> に含まれる; glibc2 では POSIX.1 に準拠し I<E<lt>stdlib.hE<gt>> に含ま"
"れている。"

#. type: Plain text
#: build/C/man3/mkstemp.3:217
msgid "B<mkdtemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
msgstr ""
"B<mkdtemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"

#. type: TH
#: build/C/man3/mktemp.3:32
#, no-wrap
msgid "MKTEMP"
msgstr "MKTEMP"

#. type: Plain text
#: build/C/man3/mktemp.3:35
msgid "mktemp - make a unique temporary filename"
msgstr "mktemp - 他と重ならないテンポラリファイル名を作成する"

#. type: Plain text
#: build/C/man3/mktemp.3:40
#, no-wrap
msgid "B<char *mktemp(char *>I<template>B<);>\n"
msgstr "B<char *mktemp(char *>I<template>B<);>\n"

#. type: Plain text
#: build/C/man3/mktemp.3:48
msgid "B<mktemp>():"
msgstr "B<mktemp>():"

#. type: Plain text
#: build/C/man3/mktemp.3:57
#, no-wrap
msgid ""
"_BSD_SOURCE || _SVID_SOURCE ||\n"
"    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
"         _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
"    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
msgstr ""
"_BSD_SOURCE || _SVID_SOURCE ||\n"
"    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
"         _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
"    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"

#. type: Plain text
#: build/C/man3/mktemp.3:75
msgid ""
"The B<mktemp>()  function generates a unique temporary filename from "
"I<template>.  The last six characters of I<template> must be XXXXXX and "
"these are replaced with a string that makes the filename unique.  Since it "
"will be modified, I<template> must not be a string constant, but should be "
"declared as a character array."
msgstr ""
"関数 B<mktemp>()  は引数 I<template> から他と重ならない テンポラリファイル名"
"を作成する。引数 I<template> で指示する文字配列 の後6文字は XXXXXX である必要"
"がある。この部分がファイル名を他と 重ならないにするような文字で置き換えられ"
"る。 I<template> は書き換えられるため、文字列定数ではなく文字配列として宣言す"
"るように しなければならない。"

#. type: Plain text
#: build/C/man3/mktemp.3:84
msgid ""
"The B<mktemp>()  function always returns I<template>.  If a unique name was "
"created, the last six bytes of I<template> will have been modified in such a "
"way that the resulting name is unique (i.e., does not exist already)  If a "
"unique name could not be created, I<template> is made an empty string."
msgstr ""
"関数 B<mktemp>()  は常に I<template> を戻す。 一意な名前が作成された場合、 "
"I<template> の最後の 6 バイトに 他と重ならない名前 (それまでに出ていない名"
"前) になるような値が格納される。 一意な名前が作成できなかった場合には、 "
"I<template> には空文字列がセットされる。"

#. type: Plain text
#: build/C/man3/mktemp.3:88
msgid "The last six characters of I<template> were not XXXXXX."
msgstr "引数 I<template> で指示された文字列の後6文字が XXXXXX でない。"

#. type: Plain text
#: build/C/man3/mktemp.3:92
msgid ""
"4.3BSD, POSIX.1-2001.  POSIX.1-2008 removes the specification of B<mktemp>()."
msgstr ""
"4.3BSD, POSIX.1-2001.  POSIX.1-2008 では B<mktemp>()  の仕様が削除されてい"
"る。"

#. type: Plain text
#: build/C/man3/mktemp.3:98
msgid ""
"The prototype is in I<E<lt>unistd.hE<gt>> for libc4, libc5, glibc1; glibc2 "
"follows the Single UNIX Specification and has the prototype in I<E<lt>stdlib."
"hE<gt>>."
msgstr ""
"libc4, libc5, glibc1 でのプロトタイプ宣言は I<E<lt>unistd.hE<gt>> に含まれ"
"る; glibc2 では Single UNIX Specification に従って I<E<lt>stdlib.hE<gt>> に含"
"まれている。"

#. type: SH
#: build/C/man3/mktemp.3:98 build/C/man3/rpmatch.3:90
#: build/C/man3/setenv.3:121
#, no-wrap
msgid "BUGS"
msgstr "バグ"

#. type: Plain text
#: build/C/man3/mktemp.3:111
msgid ""
"Never use B<mktemp>().  Some implementations follow 4.3BSD and replace "
"XXXXXX by the current process ID and a single letter, so that at most 26 "
"different names can be returned.  Since on the one hand the names are easy "
"to guess, and on the other hand there is a race between testing whether the "
"name exists and opening the file, every use of B<mktemp>()  is a security "
"risk.  The race is avoided by B<mkstemp>(3)."
msgstr ""
"B<mktemp>()  を決して使わないこと。4.3BSD 系の実装や XXXXXX を プロセス ID と"
"1文字により置き換える方式ではせいぜい26の名前を返す ことができるにすぎない。 "
"この名前は簡単に推測できることや、その名前がすでに存在しているかどうか テスト"
"して、そのファイルをオープンする間に競合がある事から、 B<mktemp>()  を使うの"
"は毎回セキュリティリスクをおかすことになる。 この競合は B<mkstemp>(3)  を使う"
"ことで避けられる。"

#. type: Plain text
#: build/C/man3/mktemp.3:116
msgid "B<mkstemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
msgstr "B<mkstemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"

#. type: TH
#: build/C/man3/on_exit.3:29
#, no-wrap
msgid "ON_EXIT"
msgstr "ON_EXIT"

#. type: Plain text
#: build/C/man3/on_exit.3:32
msgid ""
"on_exit - register a function to be called at normal process termination"
msgstr "on_exit - プロセスが正常に終了した際に呼ばれる関数を登録する"

#. type: Plain text
#: build/C/man3/on_exit.3:37
#, no-wrap
msgid "B<int on_exit(void (*>I<function>B<)(int , void *), void *>I<arg>B<);>\n"
msgstr "B<int on_exit(void (*>I<function>B<)(int , void *), void *>I<arg>B<);>\n"

#. type: Plain text
#: build/C/man3/on_exit.3:46
msgid "B<on_exit>(): _BSD_SOURCE || _SVID_SOURCE"
msgstr "B<on_exit>(): _BSD_SOURCE || _SVID_SOURCE"

#. type: Plain text
#: build/C/man3/on_exit.3:57
msgid ""
"The B<on_exit>()  function registers the given I<function> to be called at "
"normal process termination, whether via B<exit>(3)  or via return from the "
"program's I<main>().  The I<function> is passed the status argument given to "
"the last call to B<exit>(3)  and the I<arg> argument from B<on_exit>()."
msgstr ""
"B<on_exit>()  関数は、指定された関数 I<function> を、プロセスが 正常に終了し"
"た際に呼ばれる関数として登録する。正常な終了とは、 B<exit>(3)  またはプログラ"
"ムの I<main>()  関数の中の return 命令による終了である。 関数 I<function> に"
"は、直近の B<exit>(3)  の呼び出しで渡された status 引数と B<on_exit>()  の "
"I<arg> 引数が渡される。"

#. type: Plain text
#: build/C/man3/on_exit.3:72
msgid ""
"The B<on_exit>()  function returns the value 0 if successful; otherwise it "
"returns a nonzero value."
msgstr "B<on_exit>()  関数は、成功したら 0 を、そうでなければ 0 以外を返す。"

#. type: Plain text
#: build/C/man3/on_exit.3:79
msgid ""
"This function comes from SunOS 4, but is also present in libc4, libc5 and "
"glibc.  It no longer occurs in Solaris (SunOS 5).  Avoid this function, and "
"use the standard B<atexit>(3)  instead."
msgstr ""
"この関数は SunOS 4 由来であるが、libc4, libc5, glibc にも存在する。 Solaris "
"(SunOS 5) にはもはや存在しない。 この関数の使用は避け、代わりに標準の "
"B<atexit>(3)  を使うこと。"

#. type: Plain text
#: build/C/man3/on_exit.3:83
msgid "B<_exit>(2), B<atexit>(3), B<exit>(3)"
msgstr "B<_exit>(2), B<atexit>(3), B<exit>(3)"

#. type: TH
#: build/C/man3/putenv.3:34
#, no-wrap
msgid "PUTENV"
msgstr "PUTENV"

#. type: Plain text
#: build/C/man3/putenv.3:37
msgid "putenv - change or add an environment variable"
msgstr "putenv - 環境変数の変更または追加"

#.  Not: const char *
#. type: Plain text
#: build/C/man3/putenv.3:43
#, no-wrap
msgid "B<int putenv(char *>I<string>B<);>\n"
msgstr "B<int putenv(char *>I<string>B<);>\n"

#. type: Plain text
#: build/C/man3/putenv.3:52
msgid "B<putenv>(): _SVID_SOURCE || _XOPEN_SOURCE"
msgstr "B<putenv>(): _SVID_SOURCE || _XOPEN_SOURCE"

#. type: Plain text
#: build/C/man3/putenv.3:65
msgid ""
"The B<putenv>()  function adds or changes the value of environment "
"variables.  The argument I<string> is of the form I<name>=I<value>.  If "
"I<name> does not already exist in the environment, then I<string> is added "
"to the environment.  If I<name> does exist, then the value of I<name> in the "
"environment is changed to I<value>.  The string pointed to by I<string> "
"becomes part of the environment, so altering the string changes the "
"environment."
msgstr ""
"B<putenv>()  関数は、環境変数の追加または値の変更を行う。 引数 I<string> は "
"I<name>=I<value> という形式を取る。 I<name> が環境に存在しない場合は "
"I<string> が環境に追加される。 I<name> が環境に存在する場合は I<name> の値は "
"I<value> に変更される。 I<string> が指している文字列は環境の一部となるので、 "
"文字列を変更すると環境も変更される。"

#. type: Plain text
#: build/C/man3/putenv.3:70
msgid ""
"The B<putenv>()  function returns zero on success, or nonzero if an error "
"occurs."
msgstr ""
"B<putenv>()  関数は、成功した場合 0 を、 エラーが発生した場合 0 以外を返す。"

#. type: TP
#: build/C/man3/putenv.3:71 build/C/man3/setenv.3:104
#, no-wrap
msgid "B<ENOMEM>"
msgstr "B<ENOMEM>"

#. type: Plain text
#: build/C/man3/putenv.3:74
msgid "Insufficient space to allocate new environment."
msgstr "新しい環境を割り当てるのに十分な空きがない。"

#. type: Plain text
#: build/C/man3/putenv.3:76
msgid "SVr4, POSIX.1-2001, 4.3BSD."
msgstr "SVr4, POSIX.1-2001, 4.3BSD."

#. type: Plain text
#: build/C/man3/putenv.3:81
msgid ""
"The B<putenv>()  function is not required to be reentrant, and the one in "
"libc4, libc5 and glibc 2.0 is not, but the glibc 2.1 version is."
msgstr ""
"B<putenv>()  はリエントラントであることを求められていない。 libc4, libc5, "
"glibc 2.0 ではリエントラントではない。 glibc 2.1 ではリエントラントである。"

#. type: Plain text
#: build/C/man3/putenv.3:94
msgid ""
"Description for libc4, libc5, glibc: If the argument I<string> is of the "
"form I<name>, and does not contain an \\(aq=\\(aq character, then the "
"variable I<name> is removed from the environment.  If B<putenv>()  has to "
"allocate a new array I<environ>, and the previous array was also allocated "
"by B<putenv>(), then it will be freed.  In no case will the old storage "
"associated to the environment variable itself be freed."
msgstr ""
"libc4, libc5, glibc に関する説明: もし引数 I<string> が I<name> 単独で、 "
"\\(aq=\\(aq 文字を含んでいない場合、環境変数 I<name> は環境から除去される。 "
"もし B<putenv>()  が新しい I<environ> 配列を確保しなければならない時、 以前"
"の I<environ> 配列も B<putenv>()  によって確保されたものならば、 それは解放さ"
"れる。 環境変数そのものに割り当てられた古い記憶領域が解放されることはない。"

#. type: Plain text
#: build/C/man3/putenv.3:110
msgid ""
"The libc4 and libc5 and glibc 2.1.2 versions conform to SUSv2: the pointer "
"I<string> given to B<putenv>()  is used.  In particular, this string becomes "
"part of the environment; changing it later will change the environment.  "
"(Thus, it is an error is to call B<putenv>()  with an automatic variable as "
"the argument, then return from the calling function while I<string> is still "
"part of the environment.)  However, glibc 2.0-2.1.1 differs: a copy of the "
"string is used.  On the one hand this causes a memory leak, and on the other "
"hand it violates SUSv2.  This has been fixed in glibc 2.1.2."
msgstr ""
"libc4 と libc5 と glibc 2.1.2 では SUSv2 に準拠している。 B<putenv>()  で与え"
"られたポインタ I<string> が使われる。 この文字列は環境の一部となり、後で変更"
"すると環境も変わる。 (従って、 B<putenv>()  を自動変数を引数として呼び出し、 "
"I<string>が環境の一部のままで呼び出した関数から return するとエラーになる)  "
"しかし、glibc 2.0-2.1.1 では異なり、文字列のコピーが使われる。 これはメモリ"
"リークを引き起こすだけでなく、 SUSv2 に違反している。 これは glibc2.1.2 で修"
"正された。"

#. type: Plain text
#: build/C/man3/putenv.3:112
msgid "The 4.4BSD version, like glibc 2.0, uses a copy."
msgstr "4.4BSD バージョンでは、glibc 2.0 と同様にコピーを使う。"

#. type: Plain text
#: build/C/man3/putenv.3:114
msgid "SUSv2 removes the I<const> from the prototype, and so does glibc 2.1.3."
msgstr ""
"SUSv2 ではプロトタイプから I<const> が取り除かれており、 glibc 2.1.3 もそのよ"
"うになっている。"

#. type: Plain text
#: build/C/man3/putenv.3:120
msgid ""
"B<clearenv>(3), B<getenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
msgstr ""
"B<clearenv>(3), B<getenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"

#. type: TH
#: build/C/man3/qecvt.3:26
#, no-wrap
msgid "QECVT"
msgstr "QECVT"

#. type: Plain text
#: build/C/man3/qecvt.3:29
msgid "qecvt, qfcvt, qgcvt - convert a floating-point number to a string"
msgstr "qecvt, qfcvt, qgcvt - 浮動小数点数の文字列への変換"

#. type: Plain text
#: build/C/man3/qecvt.3:34
msgid ""
"B<char *qecvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
"> B<int *>I<sign>B<);>"
msgstr ""
"B<char *qecvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
"> B<int *>I<sign>B<);>"

#. type: Plain text
#: build/C/man3/qecvt.3:37
msgid ""
"B<char *qfcvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
"> B<int *>I<sign>B<);>"
msgstr ""
"B<char *qfcvt(long double >I<number>B<, int >I<ndigits>B<, int *>I<decpt>B<,"
"> B<int *>I<sign>B<);>"

#. type: Plain text
#: build/C/man3/qecvt.3:39
msgid ""
"B<char *qgcvt(long double >I<number>B<, int >I<ndigit>B<, char *>I<buf>B<);>"
msgstr ""
"B<char *qgcvt(long double >I<number>B<, int >I<ndigit>B<, char *>I<buf>B<);>"

#. type: Plain text
#: build/C/man3/qecvt.3:50
msgid "B<qecvt>(), B<qfcvt>(), B<qgcvt>(): _SVID_SOURCE"
msgstr "B<qecvt>(), B<qfcvt>(), B<qgcvt>(): _SVID_SOURCE"

#. type: Plain text
#: build/C/man3/qecvt.3:70
msgid ""
"The functions B<qecvt>(), B<qfcvt>()  and B<qgcvt>()  are identical to "
"B<ecvt>(3), B<fcvt>(3)  and B<gcvt>(3)  respectively, except that they use a "
"I<long double> argument I<number>.  See B<ecvt>(3)  and B<gcvt>(3)."
msgstr ""
"関数 B<qecvt>(), B<qfcvt>(), B<qgcvt>()  は、それぞれ B<ecvt>(3), B<fcvt>"
"(3), B<gcvt>(3)  と同じである。 引き数 I<number> が I<long double> 型である点"
"だけが異なる。"

#. type: Plain text
#: build/C/man3/qecvt.3:76
msgid ""
"SVr4.  Not seen in most common UNIX implementations, but occurs in SunOS.  "
"Not supported by libc4 and libc5.  Supported by glibc."
msgstr ""
"SVr4.  多くの一般的な UNIX には実装されていないが、SunOS には実装されてい"
"る。 libc4 と libc5 ではサポートされていないが、 glibc ではサポートされてい"
"る。"

#. type: Plain text
#: build/C/man3/qecvt.3:86
msgid "B<ecvt>(3), B<ecvt_r>(3), B<gcvt>(3), B<sprintf>(3)"
msgstr "B<ecvt>(3), B<ecvt_r>(3), B<gcvt>(3), B<sprintf>(3)"

#. type: TH
#: build/C/man3/rand.3:39
#, no-wrap
msgid "RAND"
msgstr "RAND"

#. type: TH
#: build/C/man3/rand.3:39
#, no-wrap
msgid "2010-10-01"
msgstr "2010-10-01"

#. type: Plain text
#: build/C/man3/rand.3:42
msgid "rand, rand_r, srand - pseudo-random number generator"
msgstr "rand, srand - 乱数を生成する関数"

#. type: Plain text
#: build/C/man3/rand.3:47
#, no-wrap
msgid "B<int rand(void);>\n"
msgstr "B<int rand(void);>\n"

#. type: Plain text
#: build/C/man3/rand.3:49
#, no-wrap
msgid "B<int rand_r(unsigned int *>I<seedp>B<);>\n"
msgstr "B<int rand_r(unsigned int *>I<seedp>B<);>\n"

#. type: Plain text
#: build/C/man3/rand.3:51
#, no-wrap
msgid "B<void srand(unsigned int >I<seed>B<);>\n"
msgstr "B<void srand(unsigned int >I<seed>B<);>\n"

#. type: Plain text
#: build/C/man3/rand.3:60
msgid ""
"B<rand_r>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
msgstr ""
"B<rand_r>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"

#. type: Plain text
#: build/C/man3/rand.3:66
msgid ""
"The B<rand>()  function returns a pseudo-random integer in the range 0 to "
"B<RAND_MAX> inclusive (i.e., the mathematical range [0,\\ B<RAND_MAX>])."
msgstr ""
"B<rand>() 関数は 0 以上 B<RAND_MAX> 以下\n"
"(数学的に書くと [0,\\ B<RAND_MAX>]) の範囲の疑似乱数整数を返す。"

#. type: Plain text
#: build/C/man3/rand.3:75
msgid ""
"The B<srand>()  function sets its argument as the seed for a new sequence of "
"pseudo-random integers to be returned by B<rand>().  These sequences are "
"repeatable by calling B<srand>()  with the same seed value."
msgstr ""
"B<srand>()  関数は、 B<rand>()  関数で作られる疑似乱数整数系列の新しい種とし"
"て、 その引き数の値を使用する。 これらの関数を使用して作られた疑似乱数系列"
"は、 同じ値を引き数として B<srand>()  を呼ぶことで、 再現することが可能であ"
"る。"

#. type: Plain text
#: build/C/man3/rand.3:79
msgid ""
"If no seed value is provided, the B<rand>()  function is automatically "
"seeded with a value of 1."
msgstr ""
"種の値が与えられない場合には、 B<rand>()  関数は 自動的に 1 を種とする。"

#. type: Plain text
#: build/C/man3/rand.3:90
msgid ""
"The function B<rand>()  is not reentrant or thread-safe, since it uses "
"hidden state that is modified on each call.  This might just be the seed "
"value to be used by the next call, or it might be something more elaborate.  "
"In order to get reproducible behavior in a threaded application, this state "
"must be made explicit; this can be done using the reentrant function "
"B<rand_r>()."
msgstr ""
"B<rand>() 関数はリ再入可能 (reentrant) ではない、つまりスレッド・セーフではな"
"い。\n"
"この関数には隠し状態があり、呼び出される度にこの隠し状態が変更されるからであ"
"る。\n"
"ちょうどこの隠し状態が次の呼び出し時の乱数の種として使われるようなものであ"
"る。\n"
"実際にはもう少し複雑かもしれないが。\n"
"スレッドを使用するアプリケーションで再現可能な動作をさせたい場合には、\n"
"この状態を明示的に指定できなければならない。これを行うには、\n"
"再入可能な B<rand_r>() 関数を使用する。"

#. type: Plain text
#: build/C/man3/rand.3:106
msgid ""
"Like B<rand>(), B<rand_r>()  returns a pseudo-random integer in the range [0,"
"\\ B<RAND_MAX>].  The I<seedp> argument is a pointer to an I<unsigned int> "
"that is used to store state between calls.  If B<rand_r>()  is called with "
"the same initial value for the integer pointed to by I<seedp>, and that "
"value is not modified between calls, then the same pseudo-random sequence "
"will result."
msgstr ""
"B<rand>() と同様、 B<rand_r>() は [0,\\ B<RAND_MAX>] の範囲の疑似乱数整数を返"
"す。\n"
"I<seedp> 引き数は、B<rand_r>() の呼び出し間で状態を保持するために使用される\n"
"I<unsigned int> へのポインタである。\n"
"I<seedp> が指す整数に同じ初期値を B<rand_r>() を呼び出し、\n"
"呼び出し間でその値が変更されなければ、同じ疑似乱数系列が得られる。"

#. type: Plain text
#: build/C/man3/rand.3:116
msgid ""
"The value pointed to by the I<seedp> argument of B<rand_r>()  provides only "
"a very small amount of state, so this function will be a weak pseudo-random "
"generator.  Try B<drand48_r>(3)  instead."
msgstr ""
"B<rand_r>() の I<seedp> 引き数が指す値により提供される状態は非常に小さな空"
"間\n"
"なので、この関数は弱い疑似乱数生成器になってしまう。\n"
"代わりに B<drand48_r>(3) を使ってみるとよい。"

#. type: Plain text
#: build/C/man3/rand.3:127
msgid ""
"The B<rand>()  and B<rand_r>()  functions return a value between 0 and "
"B<RAND_MAX> (inclusive).  The B<srand>()  function returns no value."
msgstr ""
"関数 B<rand>() と B<rand_r>() は 0 以上 B<RAND_MAX> 以下の数を返す。\n"
"関数 B<srand>() は値を返さない。"

#. type: Plain text
#: build/C/man3/rand.3:139
msgid ""
"The functions B<rand>()  and B<srand>()  conform to SVr4, 4.3BSD, C89, C99, "
"POSIX.1-2001.  The function B<rand_r>()  is from POSIX.1-2001.  POSIX.1-2008 "
"marks B<rand_r>()  as obsolete."
msgstr ""
"関数 B<rand>()  と B<srand>()  は SVr4, 4.3BSD, C89, C99, POSIX.1-2001 に準拠"
"している。 関数 B<rand_r>()  は POSIX.1-2001 に由来する。 POSIX.1-2008 は、 "
"B<rand_r>()  を廃止予定としている。"

#. type: Plain text
#: build/C/man3/rand.3:158
msgid ""
"The versions of B<rand>()  and B<srand>()  in the Linux C Library use the "
"same random number generator as B<random>(3)  and B<srandom>(3), so the "
"lower-order bits should be as random as the higher-order bits.  However, on "
"older B<rand>()  implementations, and on current implementations on "
"different systems, the lower-order bits are much less random than the higher-"
"order bits.  Do not use this function in applications intended to be "
"portable when good randomness is needed.  (Use B<random>(3)  instead.)"
msgstr ""
"B<rand>()  と B<srand>()  の Linux C Library 版は、 B<random>(3)  と "
"B<srandom>(3)  の両関数と同じ乱数生成 アルゴリズムを使用している。そのため、"
"下位のビットは上位のビットと 同じくらいにランダムである。 しかし、旧版の "
"B<rand>()  の実装や、他のシステムの現在の実装では、下位のビットが上位のビット"
"ほど ランダムになっていない。移植性を高める場合でも、精度の高い乱数が必要な "
"アプリケーションではこの関数は使用してはいけない (代わりに B<random>(3)  を使"
"うこと)。"

#. type: Plain text
#: build/C/man3/rand.3:164
msgid ""
"POSIX.1-2001 gives the following example of an implementation of B<rand>()  "
"and B<srand>(), possibly useful when one needs the same sequence on two "
"different machines."
msgstr ""
"POSIX 1003.1-2003 では、 B<rand>()  と B<srand>()  の実装例として以下を挙げて"
"いる。これは、異なる２つのマシンで同じ乱数系列が 必要な場合には便利であろう。"

#. type: Plain text
#: build/C/man3/rand.3:168
#, no-wrap
msgid "static unsigned long next = 1;\n"
msgstr "static unsigned long next = 1;\n"

#. type: Plain text
#: build/C/man3/rand.3:174
#, no-wrap
msgid ""
"/* RAND_MAX assumed to be 32767 */\n"
"int myrand(void) {\n"
"    next = next * 1103515245 + 12345;\n"
"    return((unsigned)(next/65536) % 32768);\n"
"}\n"
msgstr ""
"/* RAND_MAX を 32767 と仮定 */\n"
"int myrand(void) {\n"
"    next = next * 1103515245 + 12345;\n"
"    return((unsigned)(next/65536) % 32768);\n"
"}\n"

#. type: Plain text
#: build/C/man3/rand.3:178
#, no-wrap
msgid ""
"void mysrand(unsigned seed) {\n"
"    next = seed;\n"
"}\n"
msgstr ""
"void mysrand(unsigned seed) {\n"
"    next = seed;\n"
"}\n"

#. type: Plain text
#: build/C/man3/rand.3:185
msgid ""
"The following program can be used to display the pseudo-random sequence "
"produced by B<rand>()  when given a particular seed."
msgstr ""
"以下のプログラムを使うと、特定の乱数の種が与えられた場合に\n"
"B<rand>() が生成する疑似乱数系列を表示することができる。"

#. type: Plain text
#: build/C/man3/rand.3:190
#, no-wrap
msgid ""
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"
msgstr ""
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"

#. type: Plain text
#: build/C/man3/rand.3:196
#, no-wrap
msgid ""
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
"    int j, r, nloops;\n"
"    unsigned int seed;\n"
msgstr ""
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
"    int j, r, nloops;\n"
"    unsigned int seed;\n"

#. type: Plain text
#: build/C/man3/rand.3:201
#, no-wrap
msgid ""
"    if (argc != 3) {\n"
"        fprintf(stderr, \"Usage: %s E<lt>seedE<gt> E<lt>nloopsE<gt>\\en\", argv[0]);\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"
msgstr ""
"    if (argc != 3) {\n"
"        fprintf(stderr, \"Usage: %s E<lt>seedE<gt> E<lt>nloopsE<gt>\\en\", argv[0]);\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"

#. type: Plain text
#: build/C/man3/rand.3:204
#, no-wrap
msgid ""
"    seed = atoi(argv[1]);\n"
"    nloops = atoi(argv[2]);\n"
msgstr ""
"    seed = atoi(argv[1]);\n"
"    nloops = atoi(argv[2]);\n"

#. type: Plain text
#: build/C/man3/rand.3:210
#, no-wrap
msgid ""
"    srand(seed);\n"
"    for (j = 0; j E<lt> nloops; j++) {\n"
"        r =  rand();\n"
"        printf(\"%d\\en\", r);\n"
"    }\n"
msgstr ""
"    srand(seed);\n"
"    for (j = 0; j E<lt> nloops; j++) {\n"
"        r =  rand();\n"
"        printf(\"%d\\en\", r);\n"
"    }\n"

#. type: Plain text
#: build/C/man3/rand.3:218
msgid "B<drand48>(3), B<random>(3)"
msgstr "B<drand48>(3), B<random>(3)"

#. type: TH
#: build/C/man3/random.3:31
#, no-wrap
msgid "RANDOM"
msgstr "RANDOM"

#. type: Plain text
#: build/C/man3/random.3:34
msgid "random, srandom, initstate, setstate - random number generator"
msgstr "random, srandom, initstate, setstate - 乱数を生成する関数"

#. type: Plain text
#: build/C/man3/random.3:39
#, no-wrap
msgid "B<long int random(void);>\n"
msgstr "B<long int random(void);>\n"

#. type: Plain text
#: build/C/man3/random.3:41
#, no-wrap
msgid "B<void srandom(unsigned int >I<seed>B<);>\n"
msgstr "B<void srandom(unsigned int >I<seed>B<);>\n"

#. type: Plain text
#: build/C/man3/random.3:43
#, no-wrap
msgid "B<char *initstate(unsigned int >I<seed>B<, char *>I<state>B<, size_t >I<n>B<);>\n"
msgstr "B<char *initstate(unsigned int >I<seed>B<, char *>I<state>B<, size_t >I<n>B<);>\n"

#. type: Plain text
#: build/C/man3/random.3:45
#, no-wrap
msgid "B<char *setstate(char *>I<state>B<);>\n"
msgstr "B<char *setstate(char *>I<state>B<);>\n"

#. type: Plain text
#: build/C/man3/random.3:57
msgid "B<random>(), B<srandom>(), B<initstate>(), B<setstate>():"
msgstr "B<random>(), B<srandom>(), B<initstate>(), B<setstate>():"

#. type: Plain text
#: build/C/man3/random.3:60
msgid ""
"_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
"\\ &&\\ _XOPEN_SOURCE_EXTENDED"
msgstr ""
"_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
"\\ &&\\ _XOPEN_SOURCE_EXTENDED"

#. type: Plain text
#: build/C/man3/random.3:71
msgid ""
"The B<random>()  function uses a nonlinear additive feedback random number "
"generator employing a default table of size 31 long integers to return "
"successive pseudo-random numbers in the range from 0 to B<RAND_MAX>.  The "
"period of this random number generator is very large, approximately I<16\\ *"
"\\ ((2^31)\\ -\\ 1)>."
msgstr ""
"B<random>()  関数は、非線形加法フィードバックを用いた乱数生成関数である。 こ"
"の関数は、0 から B<RAND_MAX> までの疑似乱数を返す。 そのために 31 個のロング"
"整数からなるデフォルトの表を使用する。 この乱数を生成する関数の周期はとても長"
"く、およそ I<16\\ *\\ ((2^31)\\ -\\ 1)> である。"

#. type: Plain text
#: build/C/man3/random.3:85
msgid ""
"The B<srandom>()  function sets its argument as the seed for a new sequence "
"of pseudo-random integers to be returned by B<random>().  These sequences "
"are repeatable by calling B<srandom>()  with the same seed value.  If no "
"seed value is provided, the B<random>()  function is automatically seeded "
"with a value of 1."
msgstr ""
"B<srandom>()  関数は、 B<random>()  で返される疑似乱数整数系列の種を設定す"
"る。 そのためには新しい種を引数にして B<srandom>()  を呼べばよい。 B<random>"
"()  で生成される系列は、 引数に同じ種の値を用いて B<srandom>()  を呼ぶことで"
"再現可能である。 種の値が与えられない場合には B<random>()  関数は、自動的に "
"1 を種に設定する。"

#. type: Plain text
#: build/C/man3/random.3:100
msgid ""
"The B<initstate>()  function allows a state array I<state> to be initialized "
"for use by B<random>().  The size of the state array I<n> is used by "
"B<initstate>()  to decide how sophisticated a random number generator it "
"should use\\(emthe larger the state array, the better the random numbers "
"will be.  I<seed> is the seed for the initialization, which specifies a "
"starting point for the random number sequence, and provides for restarting "
"at the same point."
msgstr ""
"B<initstate>()  関数は、 B<random>()  で使用される状態配列 I<state> を初期化"
"する。 B<initstate>()  では、状態配列の大きさ I<n> は 使用する関数の乱数生成"
"の性能の程度を決定するために使用される \\(em 状態配列が大きい程、乱数の性能は"
"よくなる。 I<seed> は初期化のための種である。 これは乱数系列の開始位置を決定"
"するものであり、 この値を指定することで同一の開始位置から乱数の生成を 再開す"
"ることができる。"

#. type: Plain text
#: build/C/man3/random.3:116
msgid ""
"The B<setstate>()  function changes the state array used by the B<random>()  "
"function.  The state array I<state> is used for random number generation "
"until the next call to B<initstate>()  or B<setstate>().  I<state> must "
"first have been initialized using B<initstate>()  or be the result of a "
"previous call of B<setstate>()."
msgstr ""
"B<setstate>()  関数は、 B<random>()  で使用される状態配列を変更する。 状態配"
"列 I<state> は、 B<initstate>()  または B<setstate>()  が 次に呼び出されるま"
"で、乱数の生成に使用される。 I<state> は B<initstate>()  を用いて最初に初期化"
"されているか、 以前に呼び出した B<setstate>()  の結果でなければならない。"

#. type: Plain text
#: build/C/man3/random.3:130
msgid ""
"The B<random>()  function returns a value between 0 and B<RAND_MAX>.  The "
"B<srandom>()  function returns no value.  The B<initstate>()  function "
"returns a pointer to the previous state array.  The B<setstate>()  function "
"returns a pointer to the previous state array, or NULL on error."
msgstr ""
"B<random>()  関数は 0 と B<RAND_MAX> の間の値を返す。 B<srandom>()  関数は値"
"を返さない。 B<initstate>()  関数は直前の状態配列へのポインタを返す。 "
"B<setstate>()  関数は直前の状態配列へのポインタを返し、 エラーの場合は NULL "
"を返す。"

#. type: Plain text
#: build/C/man3/random.3:135
msgid "A state array of less than 8 bytes was specified to B<initstate>()."
msgstr "B<initstate>()  で8バイトよりも小さい状態配列を指定した。"

#. type: Plain text
#: build/C/man3/random.3:137 build/C/man3/setenv.3:109
msgid "4.3BSD, POSIX.1-2001."
msgstr "4.3BSD, POSIX.1-2001."

#. type: Plain text
#: build/C/man3/random.3:143
msgid ""
"Current \"optimal\" values for the size of the state array I<n> are 8, 32, "
"64, 128, and 256 bytes; other amounts will be rounded down to the nearest "
"known amount.  Using less than 8 bytes will cause an error."
msgstr ""
"状態配列 I<n> の大きさの現在の「最適」値は 8、32、64、128、256 バイトであ"
"る。 その他の量を指定した場合には、指定した量を越えない上述の値に 最も近い値"
"になる。 8 バイト未満の量を指定した場合にはエラーの原因となる。"

#. type: Plain text
#: build/C/man3/random.3:150
msgid ""
"This function should not be used in cases where multiple threads use "
"B<random>()  and the behavior should be reproducible.  Use B<random_r>(3)  "
"for that purpose."
msgstr ""
"複数のスレッドが B<random>()  を使うような状況では、この関数を使用すべきでは"
"ない。 その場合には B<random_r>(3)  を使うこと。"

#. type: Plain text
#: build/C/man3/random.3:157
msgid ""
"Random-number generation is a complex topic.  I<Numerical Recipes in C: The "
"Art of Scientific Computing> (William H. Press, Brian P. Flannery, Saul A. "
"Teukolsky, William T. Vetterling; New York: Cambridge University Press, "
"2007, 3rd ed.)  provides an excellent discussion of practical random-number "
"generation issues in Chapter 7 (Random Numbers)."
msgstr ""
"乱数の生成は複雑な話題である。 I<Numerical Recipes in C: The Art of "
"Scientific Computing> (William H. Press, Brian P. Flannery, Saul A. "
"Teukolsky, William T. Vetterling; New York: Cambridge University Press, "
"2007, 3rd ed.)  では実用的な乱数生成を論点とした優れた議論が第 7 章 (乱数) で"
"展開されている。"

#. type: Plain text
#: build/C/man3/random.3:163
msgid ""
"For a more theoretical discussion which also covers many practical issues in "
"depth, see Chapter 3 (Random Numbers) in Donald E. Knuth's I<The Art of "
"Computer Programming>, volume 2 (Seminumerical Algorithms), 2nd ed.; "
"Reading, Massachusetts: Addison-Wesley Publishing Company, 1981."
msgstr ""
"より理論的な議論については Donald E. Knuth の I<The Art of Computer "
"Programming>, volume 2 (Seminumerical Algorithms), 2nd ed.; Reading, "
"Massachusetts: Addison-Wesley Publishing Company, 1981 の第 3 章 (乱数) を見"
"よ。ここでは、 たくさんの実用的な話題についても深く網羅されている。"

#. type: Plain text
#: build/C/man3/random.3:168
msgid "B<drand48>(3), B<rand>(3), B<random_r>(3), B<srand>(3)"
msgstr "B<drand48>(3), B<rand>(3), B<random_r>(3), B<srand>(3)"

#. type: TH
#: build/C/man3/random_r.3:24
#, no-wrap
msgid "RANDOM_R"
msgstr "RANDOM_R"

#. type: TH
#: build/C/man3/random_r.3:24
#, no-wrap
msgid "2008-03-07"
msgstr "2008-03-07"

#. type: Plain text
#: build/C/man3/random_r.3:28
msgid ""
"random_r, srandom_r, initstate_r, setstate_r - reentrant random number "
"generator"
msgstr ""
"random_r, srandom_r, initstate_r, setstate_r - リエントラントな 乱数生成器"

#. type: Plain text
#: build/C/man3/random_r.3:33
#, no-wrap
msgid "B<int random_r(struct random_data *>I<buf>B<, int32_t *>I<result>B<);>\n"
msgstr "B<int random_r(struct random_data *>I<buf>B<, int32_t *>I<result>B<);>\n"

#. type: Plain text
#: build/C/man3/random_r.3:35
#, no-wrap
msgid "B<int srandom_r(unsigned int >I<seed>B<, struct random_data *>I<buf>B<);>\n"
msgstr "B<int srandom_r(unsigned int >I<seed>B<, struct random_data *>I<buf>B<);>\n"

#. type: Plain text
#: build/C/man3/random_r.3:38
#, no-wrap
msgid ""
"B<int initstate_r(unsigned int >I<seed>B<, char *>I<statebuf>B<,>\n"
"B<                size_t >I<statelen>B<, struct random_data *>I<buf>B<);>\n"
msgstr ""
"B<int initstate_r(unsigned int >I<seed>B<, char *>I<statebuf>B<,>\n"
"B<                size_t >I<statelen>B<, struct random_data *>I<buf>B<);>\n"

#. type: Plain text
#: build/C/man3/random_r.3:40
#, no-wrap
msgid "B<int setstate_r(char *>I<statebuf>B<, struct random_data *>I<buf>B<);>\n"
msgstr "B<int setstate_r(char *>I<statebuf>B<, struct random_data *>I<buf>B<);>\n"

#. type: Plain text
#: build/C/man3/random_r.3:52
msgid "B<random_r>(), B<srandom_r>(), B<initstate_r>(), B<setstate_r>():"
msgstr "B<random_r>(), B<srandom_r>(), B<initstate_r>(), B<setstate_r>():"

#. type: Plain text
#: build/C/man3/random_r.3:54
msgid "_SVID_SOURCE || _BSD_SOURCE"
msgstr "_SVID_SOURCE || _BSD_SOURCE"

#. type: Plain text
#: build/C/man3/random_r.3:62
msgid ""
"These functions are the reentrant equivalents of the functions described in "
"B<random>(3).  They are suitable for use in multithreaded programs where "
"each thread needs to obtain an independent, reproducible sequence of random "
"numbers."
msgstr ""
"これらの関数は、 B<random>(3)  で説明されている関数のリエントラント版で、等価"
"な機能を持つ。 これらは、独立した再現可能な乱数列を各スレッドが得る必要がある"
"ような マルチスレッド・プログラムでの使用に適している。"

#. type: Plain text
#: build/C/man3/random_r.3:73
msgid ""
"The B<random_r>()  function is like B<random>(3), except that instead of "
"using state information maintained in a global variable, it uses the state "
"information in the argument pointed to by I<buf>.  The generated random "
"number is returned in the argument I<result>."
msgstr ""
"B<random_r>()  関数は B<random>(3)  と同様だが、 大域変数 (global variable) "
"で管理される状態情報を使うのではなく、 I<buf> が指す引き数に格納された状態情"
"報を使う。 生成された乱数は引き数 I<result> に格納されて返される。"

#. type: Plain text
#: build/C/man3/random_r.3:82
msgid ""
"The B<srandom_r>()  function is like B<srandom>(3), except that it "
"initializes the seed for the random number generator whose state is "
"maintained in the object pointed to by I<buf>, instead of the seed "
"associated with the global state variable."
msgstr ""
"B<srandom_r>()  関数は B<srandom>(3)  と同様だが、 大域変数で管理される状態に"
"対応する乱数生成器の種ではなく、 I<buf> が指すオブジェクトで管理される状態に"
"対応する乱数生成器の種を 初期化する。"

#. type: Plain text
#: build/C/man3/random_r.3:90
msgid ""
"The B<initstate_r>()  function is like B<initstate>(3)  except that it "
"initializes the state in the object pointed to by I<buf>, rather than "
"initializing the global state variable."
msgstr ""
"B<initstate_r>()  関数は B<initstate>(3)  と同様だが、大域変数で管理される状"
"態を初期化するのではなく、 I<buf> が指すオブジェクト内の状態を初期化する。"

#. type: Plain text
#: build/C/man3/random_r.3:98
msgid ""
"The B<setstate_r>()  function is like B<setstate>(3)  except that it "
"modifies the state in the object pointer to by I<buf>, rather than modifying "
"the global state variable."
msgstr ""
"B<setstate_r>()  関数は B<setstate>(3)  と同様だが、大域変数で管理される状態"
"を変更するのではなく、 I<buf> が指すオブジェクト内の状態を変更する。"

#. type: Plain text
#: build/C/man3/random_r.3:100
msgid "All of these functions return 0 on success, or -1 on error."
msgstr "これらの関数は、成功すると 0 を返し、 エラーの場合は -1 を返す。"

#. type: Plain text
#: build/C/man3/random_r.3:105
msgid "A state array of less than 8 bytes was specified to B<initstate_r>()."
msgstr "8 バイトより小さい状態配列が B<initstate_r>()  に指定された。"

#. type: Plain text
#: build/C/man3/random_r.3:114
msgid "The I<statebuf> or I<buf> argument to B<setstate_r>()  was NULL."
msgstr "B<setstate_r>()  の引き数 I<statebuf> か I<buf> が NULL であった。"

#. type: Plain text
#: build/C/man3/random_r.3:123
msgid "The I<buf> or I<result> argument to B<random_r>()  was NULL."
msgstr "B<random_r>()  の引き数 I<buf> か I<result> が NULL であった。"

#.  These functions appear to be on Tru64, but don't seem to be on
#.  Solaris, HP-UX, or FreeBSD.
#. type: Plain text
#: build/C/man3/random_r.3:127
msgid "These functions are nonstandard glibc extensions."
msgstr "これらの関数は非標準で glibc による拡張である。"

#. type: TH
#: build/C/man3/rpmatch.3:27
#, no-wrap
msgid "RPMATCH"
msgstr "RPMATCH"

#. type: Plain text
#: build/C/man3/rpmatch.3:30
msgid ""
"rpmatch - determine if the answer to a question is affirmative or negative"
msgstr "rpmatch - 質問への応答が肯定か否定かを判定する"

#. type: Plain text
#: build/C/man3/rpmatch.3:35
#, no-wrap
msgid "B<int rpmatch(const char *>I<response>B<);>\n"
msgstr "B<int rpmatch(const char *>I<response>B<);>\n"

#. type: Plain text
#: build/C/man3/rpmatch.3:44
msgid "B<rpmatch>(): _SVID_SOURCE"
msgstr "B<rpmatch>(): _SVID_SOURCE"

#. type: Plain text
#: build/C/man3/rpmatch.3:48
msgid ""
"B<rpmatch>()  handles a user response to yes or no questions, with support "
"for internationalization."
msgstr ""
"B<rpmatch>()  は yes/no の質問に対するユーザからの応答を処理する。 国際化 "
"(I18N) に対応している。"

#. type: Plain text
#: build/C/man3/rpmatch.3:54
msgid ""
"I<response> should be a null-terminated string containing a user-supplied "
"response, perhaps obtained with B<fgets>(3)  or B<getline>(3)."
msgstr ""
"I<response> にはユーザからの応答を格納した NULL 終端文字列が入っている必要が"
"ある。 たいていは、 B<fgets>(3)  や B<getline>(3)  で取り込んだものであろう。"

#. type: Plain text
#: build/C/man3/rpmatch.3:60
msgid ""
"The user's language preference is taken into account per the environment "
"variables B<LANG>, B<LC_MESSAGES>, and B<LC_ALL>, if the program has called "
"B<setlocale>(3)  to effect their changes."
msgstr ""
"プログラムが B<setlocale>(3)  を呼び出して環境変数の変更を有効にした場合、 環"
"境変数 B<LANG>, B<LC_MESSAGES>, B<LC_ALL> が ユーザの言語設定として考慮され"
"る。"

#. type: Plain text
#: build/C/man3/rpmatch.3:64
msgid ""
"Regardless of the locale, responses matching B<^[Yy]> are always accepted as "
"affirmative, and those matching B<^[Nn]> are always accepted as negative."
msgstr ""
"ロケールに関わらず、B<^[Yy]> にマッチする応答は常に肯定だと解釈され、 B<^[Nn]"
"> にマッチする応答は常に否定だと解釈される。"

#. type: Plain text
#: build/C/man3/rpmatch.3:71
msgid ""
"After examining I<response>, B<rpmatch>()  returns 0 for a recognized "
"negative response (\"no\"), 1 for a recognized positive response (\"yes\"), "
"and -1 when the value of I<response> is unrecognized."
msgstr ""
"I<response> を検査した後、 B<rpmatch>()  は否定的な応答 (\"no\") と認識した場"
"合は 0 を返し、 肯定的な応答 (\"yes\") と認識した場合は 1 を返す。 "
"I<response> の値を解釈できなかった場合は -1 を返す。"

#. type: Plain text
#: build/C/man3/rpmatch.3:75
msgid ""
"A return value of -1 may indicate either an invalid input, or some other "
"error.  It is incorrect to only test if the return value is nonzero."
msgstr ""
"返り値 -1 が返った場合、入力が不正であったか、他の何らかのエラーが あったこと"
"を意味する。返り値が 0 以外かどうかを確認するだけでは 十分ではない。"

#. type: Plain text
#: build/C/man3/rpmatch.3:85
msgid ""
"B<rpmatch>()  can fail for any of the reasons that B<regcomp>(3)  or "
"B<regexec>(3)  can fail; the cause of the error is not available from "
"I<errno> or anywhere else, but indicates a failure of the regex engine (but "
"this case is indistinguishable from that of an unrecognized value of "
"I<response>)."
msgstr ""
"B<rpmatch>()  は、 B<regcomp>(3)  や B<regexec>(3)  が失敗する理由のどれかで"
"失敗することがある。 エラーの原因を I<errno> や他の何かで知ることはできない"
"が、 I<errno> は正規表現エンジンの失敗の原因を示している (但し、このケースと "
"I<response> の値を認識できずに失敗した場合を区別することはできない)。"

#.  It is available on at least AIX 5.1 and FreeBSD 6.0.
#. type: Plain text
#: build/C/man3/rpmatch.3:90
msgid ""
"B<rpmatch>()  is not required by any standard, but is available on a few "
"other systems."
msgstr ""
"B<rpmatch>()  はどの標準でも必須となっていないが、 Linux 以外にも利用できるシ"
"ステムもいくつかは存在する。"

#. type: Plain text
#: build/C/man3/rpmatch.3:102
msgid ""
"The B<rpmatch>()  implementation looks at only the first character of "
"I<response>.  As a consequence, \"nyes\" returns 0, and \"ynever; not in a "
"million years\" returns 1.  It would be preferable to accept input strings "
"much more strictly, for example (using the extended regular expression "
"notation described in B<regex>(7)): B<^([yY]|yes|YES)$> and B<^([nN]|no|"
"NO)$>."
msgstr ""
"B<rpmatch>()  の実装は I<response> の最初の 1 文字だけを見ているようである。"
"その結果、 \"nyes\" は 0 を返し、 \"ynever; not in a million years\" は 1 を"
"返すことになる。 入力文字列をもっと厳密に解釈した方がよいだろう。 例えば、 "
"(B<regex>(7)  で説明されている拡張正規表現を使って)  B<^([yY]|yes|YES)$> や "
"B<^([nN]|no|NO)$> で解釈するなど。"

#. type: Plain text
#: build/C/man3/rpmatch.3:106
msgid ""
"The following program displays the results when B<rpmatch>()  is applied to "
"the string given in the program's command-line argument."
msgstr ""
"以下のプログラムは、コマンドライン引き数で 指定された文字列を B<rpmatch>()  "
"に渡した場合の結果を表示する。"

#. type: Plain text
#: build/C/man3/rpmatch.3:113
#, no-wrap
msgid ""
"#define _SVID_SOURCE\n"
"#include E<lt>locale.hE<gt>\n"
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>string.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"
msgstr ""
"#define _SVID_SOURCE\n"
"#include E<lt>locale.hE<gt>\n"
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>string.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"

#. type: Plain text
#: build/C/man3/rpmatch.3:121
#, no-wrap
msgid ""
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
"    if (argc != 2 || strcmp(argv[1], \"--help\") == 0) {\n"
"        fprintf(stderr, \"%s response\\en\", argv[0]);\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"
msgstr ""
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
"    if (argc != 2 || strcmp(argv[1], \"--help\") == 0) {\n"
"        fprintf(stderr, \"%s response\\en\", argv[0]);\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"

#. type: Plain text
#: build/C/man3/rpmatch.3:126
#, no-wrap
msgid ""
"    setlocale(LC_ALL, \"\");\n"
"    printf(\"rpmatch() returns: %d\\en\", rpmatch(argv[1]));\n"
"    exit(EXIT_SUCCESS);\n"
"}\n"
msgstr ""
"    setlocale(LC_ALL, \"\");\n"
"    printf(\"rpmatch() returns: %d\\en\", rpmatch(argv[1]));\n"
"    exit(EXIT_SUCCESS);\n"
"}\n"

#. type: Plain text
#: build/C/man3/rpmatch.3:133
msgid ""
"B<fgets>(3), B<getline>(3), B<nl_langinfo>(3), B<regcomp>(3), B<setlocale>(3)"
msgstr ""
"B<fgets>(3), B<getline>(3), B<nl_langinfo>(3), B<regcomp>(3), B<setlocale>(3)"

#. type: TH
#: build/C/man3/setenv.3:35
#, no-wrap
msgid "SETENV"
msgstr "SETENV"

#. type: Plain text
#: build/C/man3/setenv.3:38
msgid "setenv - change or add an environment variable"
msgstr "setenv - 環境変数を変更または追加する"

#. type: Plain text
#: build/C/man3/setenv.3:43
#, no-wrap
msgid "B<int setenv(const char *>I<name>B<, const char *>I<value>B<, int >I<overwrite>B<);>\n"
msgstr "B<int setenv(const char *>I<name>B<, const char *>I<value>B<, int >I<overwrite>B<);>\n"

#. type: Plain text
#: build/C/man3/setenv.3:45
#, no-wrap
msgid "B<int unsetenv(const char *>I<name>B<);>\n"
msgstr "B<int unsetenv(const char *>I<name>B<);>\n"

#. type: Plain text
#: build/C/man3/setenv.3:55
msgid "B<setenv>(), B<unsetenv>():"
msgstr "B<setenv>(), B<unsetenv>():"

#. type: Plain text
#: build/C/man3/setenv.3:57
msgid ""
"_BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>="
"\\ 600"
msgstr ""
"_BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>="
"\\ 600"

#. type: Plain text
#: build/C/man3/setenv.3:75
msgid ""
"The B<setenv>()  function adds the variable I<name> to the environment with "
"the value I<value>, if I<name> does not already exist.  If I<name> does "
"exist in the environment, then its value is changed to I<value> if "
"I<overwrite> is nonzero; if I<overwrite> is zero, then the value of I<name> "
"is not changed.  This function makes copies of the strings pointed to by "
"I<name> and I<value> (by contrast with B<putenv>(3))."
msgstr ""
"B<setenv>()  関数は、I<name> が存在しない場合 環境変数 I<name> に値 I<value> "
"を設定し、環境に追加する。 I<name> が環境に存在する場合、I<overwrite> が 0 以"
"外ならば その値を I<value> に変更し、I<overwrite> が 0 ならば I<name> の値を"
"変更しない。 この関数は、 (B<putenv>(3)  と違い)  I<name> と I<value> により"
"参照される文字列のコピーを行う。"

#. type: Plain text
#: build/C/man3/setenv.3:84
msgid ""
"The B<unsetenv>()  function deletes the variable I<name> from the "
"environment.  If I<name> does not exist in the environment, then the "
"function succeeds, and the environment is unchanged."
msgstr ""
"B<unsetenv>()  関数は、変数 I<name> を環境から削除する。 I<name> が環境にない"
"場合、この関数は成功し、環境は変更されない。"

#. type: Plain text
#: build/C/man3/setenv.3:91
msgid ""
"The B<setenv>()  function returns zero on success, or -1 on error, with "
"I<errno> set to indicate the cause of the error."
msgstr ""
"B<setenv>()  関数は、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
"I<errno> にエラーの原因を示す値がセットされる。"

#. type: Plain text
#: build/C/man3/setenv.3:98
msgid ""
"The B<unsetenv>()  function returns zero on success, or -1 on error, with "
"I<errno> set to indicate the cause of the error."
msgstr ""
"B<unsetenv>()  関数は、成功すると 0 を返す。 エラーの場合は -1 を返し、 "
"I<errno> を設定してエラーの原因を示す。"

#. type: Plain text
#: build/C/man3/setenv.3:104
msgid ""
"I<name> is NULL, points to a string of length 0, or contains an \\(aq=\\(aq "
"character."
msgstr ""
"I<name> が NULL であるか、長さが 0 の文字列を指しているか、 \\(aq=\\(aq 文字"
"が含まれている。"

#. type: Plain text
#: build/C/man3/setenv.3:107
msgid "Insufficient memory to add a new variable to the environment."
msgstr "環境に新しい変数を追加するのに十分なメモリがない。"

#. type: Plain text
#: build/C/man3/setenv.3:115
msgid ""
"POSIX.1-2001 does not require B<setenv>()  or B<unsetenv>()  to be reentrant."
msgstr ""
"POSIX.1-2001 は、 B<setenv>()  や B<unsetenv>()  がリエントラント (再入可能) "
"であることを要求していない。"

#. type: Plain text
#: build/C/man3/setenv.3:121
msgid ""
"Prior to glibc 2.2.2, B<unsetenv>()  was prototyped as returning I<void>; "
"more recent glibc versions follow the POSIX.1-2001-compliant prototype shown "
"in the SYNOPSIS."
msgstr ""
"glibc 2.2.2 以前では、 B<unsetenv>()  は 返り値が I<void> のプロトタイプで"
"あった。 もっと最近の glibc 版は、「書式」セクションで示しているように "
"POSIX.1-2001 互換のプロトタイプである。"

#. type: Plain text
#: build/C/man3/setenv.3:130
msgid ""
"POSIX.1-2001 specifies that if I<name> contains an \\(aq=\\(aq character, "
"then B<setenv>()  should fail with the error B<EINVAL>; however, versions of "
"glibc before 2.3.4 allowed an \\(aq=\\(aq sign in I<name>."
msgstr ""
"POSIX.1-2001 では 「I<name> に \\(aq=\\(aq 文字が含まれる場合、 B<setenv>()  "
"はエラー B<EINVAL> で失敗すべきである」と述べられている。 しかし 2.3.4 より前"
"のバージョンの glibc では、 I<name> に \\(aq=\\(aq 文字が含まれるのを許してい"
"る。"

#. type: Plain text
#: build/C/man3/setenv.3:135
msgid "B<clearenv>(3), B<getenv>(3), B<putenv>(3), B<environ>(7)"
msgstr "B<clearenv>(3), B<getenv>(3), B<putenv>(3), B<environ>(7)"

#. type: TH
#: build/C/man3/strtod.3:43
#, no-wrap
msgid "STRTOD"
msgstr "STRTOD"

#. type: Plain text
#: build/C/man3/strtod.3:46
msgid "strtod, strtof, strtold - convert ASCII string to floating-point number"
msgstr "strtod, strtof, strtold - ASCII 文字列を浮動小数点実数に変換する"

#. type: Plain text
#: build/C/man3/strtod.3:50
msgid "B<double strtod(const char *>I<nptr>B<, char **>I<endptr>B<);>"
msgstr "B<double strtod(const char *>I<nptr>B<, char **>I<endptr>B<);>"

#. type: Plain text
#: build/C/man3/strtod.3:52
msgid "B<float strtof(const char *>I<nptr>B<, char **>I<endptr>B<);>"
msgstr "B<float strtof(const char *>I<nptr>B<, char **>I<endptr>B<);>"

#. type: Plain text
#: build/C/man3/strtod.3:54
msgid "B<long double strtold(const char *>I<nptr>B<, char **>I<endptr>B<);>"
msgstr "B<long double strtold(const char *>I<nptr>B<, char **>I<endptr>B<);>"

#. type: Plain text
#: build/C/man3/strtod.3:63
msgid "B<strtof>(), B<strtold>():"
msgstr "B<strtof>(), B<strtold>():"

#. type: Plain text
#: build/C/man3/strtod.3:85
msgid ""
"The B<strtod>(), B<strtof>(), and B<strtold>()  functions convert the "
"initial portion of the string pointed to by I<nptr> to I<double>, I<float>, "
"and I<long double> representation, respectively."
msgstr ""
"B<strtod>(), B<strtof>(), B<strtold>()  関数は、 I<nptr> が指し示す文字列のは"
"じめの部分を I<double>, I<float>, I<long double> 型の値にそれぞれ変換する。"

#. type: Plain text
#: build/C/man3/strtod.3:92
msgid ""
"The expected form of the (initial portion of the) string is optional leading "
"white space as recognized by B<isspace>(3), an optional plus (\\(aq+\\(aq) "
"or minus sign (\\(aq-\\(aq) and then either (i) a decimal number, or (ii) a "
"hexadecimal number, or (iii) an infinity, or (iv) a NAN (not-a-number)."
msgstr ""
"入力する文字列 (の先頭部分) は以下の形式が期待されている。 先頭にホワイトス"
"ペース、 次にプラス (\\(aq+\\(aq) またはマイナス (\\(aq-\\(aq) の記号、 その"
"後に (i) 10 進数、(ii) 16 進数、(iii) 無限、 (iv) NAN (計算できない数、not-a-"
"number) のいずれかがある (ホワイトスペース、符号は省略可能。 ホワイトスペース"
"は B<isspace>(3)  で識別される)。"

#. type: Plain text
#: build/C/man3/strtod.3:101
msgid ""
"A I<decimal number> consists of a nonempty sequence of decimal digits "
"possibly containing a radix character (decimal point, locale-dependent, "
"usually \\(aq.\\(aq), optionally followed by a decimal exponent.  A decimal "
"exponent consists of an \\(aqE\\(aq or \\(aqe\\(aq, followed by an optional "
"plus or minus sign, followed by a nonempty sequence of decimal digits, and "
"indicates multiplication by a power of 10."
msgstr ""
"I<10 進数> は 1 文字以上の 10 進の数字の列からなり、 基を表す文字 (radix "
"charater)  (小数点。ロケールに依存するが、通常は \\(aq.\\(aq) が含まれること"
"もある。 この後に 10 進の指数部が続いても良い。 10 進の指数部は \\(aqE\\(aq "
"または \\(aqe\\(aq と、その後に置かれる正負記号 (省略可)、 およびその後に続"
"く 1 文字以上の 10 進の数字の列からなり、 10 の何乗であるかを表す。"

#. type: Plain text
#: build/C/man3/strtod.3:112
msgid ""
"A I<hexadecimal number> consists of a \"0x\" or \"0X\" followed by a "
"nonempty sequence of hexadecimal digits possibly containing a radix "
"character, optionally followed by a binary exponent.  A binary exponent "
"consists of a \\(aqP\\(aq or \\(aqp\\(aq, followed by an optional plus or "
"minus sign, followed by a nonempty sequence of decimal digits, and indicates "
"multiplication by a power of 2.  At least one of radix character and binary "
"exponent must be present."
msgstr ""
"I<16 進数> は、\"0x\" または \"0X\" とその後に続く 1 文字以上の 16 進の数字の"
"列からなり、 基を表す文字が含まれることもある。 この後に 2 進の指数部が続いて"
"も良い。 2 進の指数部は \\(aqP\\(aq または \\(aqp\\(aq と、その後に置かれる正"
"負記号 (省略可)、 およびその後に続く 1 文字以上の 10 進の数字の列から構成さ"
"れ、 2 の何乗であるかを表す。 基を表す文字と 2 進の指数部は、どちらか一方しか"
"存在してはならない。"

#. type: Plain text
#: build/C/man3/strtod.3:116
msgid "An I<infinity> is either \"INF\" or \"INFINITY\", disregarding case."
msgstr ""
"I<無限> は \"INF\" または \"INFINITY\" で表され、大文字小文字は区別されない。"

#.  From glibc 2.8's stdlib/strtod_l.c:
#.      We expect it to be a number which is put in the
#.      mantissa of the number.
#. type: Plain text
#: build/C/man3/strtod.3:126
msgid ""
"A I<NAN> is \"NAN\" (disregarding case) optionally followed by \\(aq(\\(aq, "
"a sequence of characters, followed by \\(aq)\\(aq.  The character string "
"specifies in an implementation-dependent way the type of NAN."
msgstr ""
"I<NAN> は \"NAN\" (大文字小文字は区別されない) で表され、 その後に \\(aq"
"(\\(aq 文字列 \\(aq)\\(aq が続く場合もある。 この文字列は実装に依存する NAN "
"を指定する。"

#. type: Plain text
#: build/C/man3/strtod.3:128
msgid "These functions return the converted value, if any."
msgstr "これらの関数は、変換された値があれば、それを返す。"

#. type: Plain text
#: build/C/man3/strtod.3:135
msgid ""
"If I<endptr> is not NULL, a pointer to the character after the last "
"character used in the conversion is stored in the location referenced by "
"I<endptr>."
msgstr ""
"I<endptr> が NULL でないときは、変換に使われた最終文字の次の文字へのポイン"
"ターが I<endptr> で参照される場所へ保存される。"

#. type: Plain text
#: build/C/man3/strtod.3:140
msgid ""
"If no conversion is performed, zero is returned and the value of I<nptr> is "
"stored in the location referenced by I<endptr>."
msgstr ""
"変換が行われなかったときには 0 が返る。そして I<endptr> が参照している場所に "
"I<nptr> の値 (変換対象である文字列の開始アドレス) が保存される。"

#. type: Plain text
#: build/C/man3/strtod.3:154
msgid ""
"If the correct value would cause overflow, plus or minus B<HUGE_VAL> "
"(B<HUGE_VALF>, B<HUGE_VALL>)  is returned (according to the sign of the "
"value), and B<ERANGE> is stored in I<errno>.  If the correct value would "
"cause underflow, zero is returned and B<ERANGE> is stored in I<errno>."
msgstr ""
"正しい形式の数値文字列であるが、変換結果がオーバーフローを起こした場合 には、"
"プラスまたはマイナスの B<HUGE_VAL> (B<HUGE_VALF>, B<HUGE_VALL>)  が返り (値の"
"符号による)、 B<ERANGE> が I<errno> に代入される。変換結果がアンダーフローを"
"起こした場合には 0 が返り、 B<ERANGE> が I<errno> に代入される。"

#. type: TP
#: build/C/man3/strtod.3:155 build/C/man3/strtol.3:131
#: build/C/man3/strtoul.3:134
#, no-wrap
msgid "B<ERANGE>"
msgstr "B<ERANGE>"

#. type: Plain text
#: build/C/man3/strtod.3:158
msgid "Overflow or underflow occurred."
msgstr "オーバーフローまたはアンダーフローが起こった。"

#. type: Plain text
#: build/C/man3/strtod.3:163
msgid "C89 describes B<strtod>(), C99 describes the other two functions."
msgstr "C89 では B<strtod>()  が、C99 では残りの 2 つの関数が記述されている。"

#. type: Plain text
#: build/C/man3/strtod.3:172
msgid ""
"Since 0 can legitimately be returned on both success and failure, the "
"calling program should set I<errno> to 0 before the call, and then determine "
"if an error occurred by checking whether I<errno> has a nonzero value after "
"the call."
msgstr ""
"成功、失敗どちらの場合でも 0 を返す可能性があるので、 プログラムは呼び出す前"
"に I<errno> を 0 に設定し、呼び出し後に I<errno> が 0 以外の値かどうかを確認"
"しエラーが発生したかどうかを判断する 必要がある。"

#. type: Plain text
#: build/C/man3/strtod.3:177 build/C/man3/strtoul.3:188
msgid ""
"See the example on the B<strtol>(3)  manual page; the use of the functions "
"described in this manual page is similar."
msgstr ""
"B<strtol>(3)  のマニュアルページの例を参照。 このページで説明した関数の使用方"
"法も同様である。"

#. type: Plain text
#: build/C/man3/strtod.3:183
msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtol>(3), B<strtoul>(3)"
msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtol>(3), B<strtoul>(3)"

#. type: TH
#: build/C/man3/strtoimax.3:23
#, no-wrap
msgid "STRTOIMAX"
msgstr "STRTOIMAX"

#. type: TH
#: build/C/man3/strtoimax.3:23
#, no-wrap
msgid "2003-11-28"
msgstr "2003-11-28"

#. type: Plain text
#: build/C/man3/strtoimax.3:26
msgid "strtoimax, strtoumax - convert string to integer"
msgstr "strtoimax, strtoumax - 文字列を整数に変換する"

#. type: Plain text
#: build/C/man3/strtoimax.3:29
#, no-wrap
msgid "B<#include E<lt>inttypes.hE<gt>>\n"
msgstr "B<#include E<lt>inttypes.hE<gt>>\n"

#. type: Plain text
#: build/C/man3/strtoimax.3:31
#, no-wrap
msgid "B<intmax_t strtoimax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<intmax_t strtoimax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"

#. type: Plain text
#: build/C/man3/strtoimax.3:33
#, no-wrap
msgid "B<uintmax_t strtoumax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<uintmax_t strtoumax(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"

#. type: Plain text
#: build/C/man3/strtoimax.3:44
msgid ""
"These functions are just like B<strtol>(3)  and B<strtoul>(3), except that "
"they return a value of type I<intmax_t> and I<uintmax_t>, respectively."
msgstr ""
"これらの関数はちょうど B<strtol>(3)  と B<strtoul>(3)  に似ているが、それぞ"
"れ I<intmax_t> と I<uintmax_t> 型の値を返す。"

#. type: Plain text
#: build/C/man3/strtoimax.3:57
msgid ""
"On success, the converted value is returned.  If nothing was found to "
"convert, zero is returned.  On overflow or underflow B<INTMAX_MAX> or "
"B<INTMAX_MIN> or B<UINTMAX_MAX> is returned, and I<errno> is set to "
"B<ERANGE>."
msgstr ""
"成功した場合、変換された値が返される。 変換するものが見つからなかった場合、0 "
"が返される。 オーバーフローまたはアンダーフローの場合、 B<INTMAX_MAX> または "
"B<INTMAX_MIN> または B<UINTMAX_MAX> が返され、 I<errno> が B<ERANGE> に設定さ"
"れる。"

#. type: Plain text
#: build/C/man3/strtoimax.3:65
msgid ""
"B<imaxabs>(3), B<imaxdiv>(3), B<strtol>(3), B<strtoul>(3), B<wcstoimax>(3)"
msgstr ""
"B<imaxabs>(3), B<imaxdiv>(3), B<strtol>(3), B<strtoul>(3), B<wcstoimax>(3)"

#. type: TH
#: build/C/man3/strtol.3:29
#, no-wrap
msgid "STRTOL"
msgstr "STRTOL"

#. type: Plain text
#: build/C/man3/strtol.3:32
msgid "strtol, strtoll, strtoq - convert a string to a long integer"
msgstr "strtol, strtoll, strtoq - 文字列を long int に変換する"

#. type: Plain text
#: build/C/man3/strtol.3:37
#, no-wrap
msgid "B<long int strtol(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<long int strtol(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"

#. type: Plain text
#: build/C/man3/strtol.3:40
#, no-wrap
msgid "B<long long int strtoll(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<long long int strtoll(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"

#. type: Plain text
#: build/C/man3/strtol.3:49
msgid "B<strtoll>():"
msgstr "B<strtoll>():"

#. type: Plain text
#: build/C/man3/strtol.3:52 build/C/man3/strtoul.3:55
msgid ""
"XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE "
"|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
msgstr ""
"XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE "
"|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"

#. type: Plain text
#: build/C/man3/strtol.3:63
msgid ""
"The B<strtol>()  function converts the initial part of the string in I<nptr> "
"to a long integer value according to the given I<base>, which must be "
"between 2 and 36 inclusive, or be the special value 0."
msgstr ""
"B<strtol>()  関数は、 I<nptr> の文字列の最初の部分を、 I<base> を基数として "
"long int に変換する。 この I<base> は 2 から 36 までの値 あるいは特別な意味を"
"持つ値 0 でなければならない。"

#. type: Plain text
#: build/C/man3/strtol.3:72 build/C/man3/strtoul.3:79
msgid ""
"The string may begin with an arbitrary amount of white space (as determined "
"by B<isspace>(3))  followed by a single optional \\(aq+\\(aq or \\(aq-\\(aq "
"sign.  If I<base> is zero or 16, the string may then include a \"0x\" "
"prefix, and the number will be read in base 16; otherwise, a zero I<base> is "
"taken as 10 (decimal) unless the next character is \\(aq0\\(aq, in which "
"case it is taken as 8 (octal)."
msgstr ""
"文字列の先頭には、任意の数の空白があってもよく (空白は B<isspace>(3) で判定さ"
"れる)、また数字の直前には \\(aq+\\(aq か \\(aq-\\(aq の 符号があってもよい。 "
"I<base> が 0 または 16 の場合には、文字列の先頭に \"0x\" を置くことが でき、"
"その場合には文字列は 16進数として扱われる。 これ以外の文字列で I<base> が 0 "
"の場合は、 文字列が \\(aq0\\(aq で始まるときは 8進数として、 それ以外のとき"
"は 10進数として扱われる。"

#. type: Plain text
#: build/C/man3/strtol.3:81
msgid ""
"The remainder of the string is converted to a I<long int> value in the "
"obvious manner, stopping at the first character which is not a valid digit "
"in the given base.  (In bases above 10, the letter \\(aqA\\(aq in either "
"upper or lower case represents 10, \\(aqB\\(aq represents 11, and so forth, "
"with \\(aqZ\\(aq representing 35.)"
msgstr ""
"数字を表す文字列は I<long int> に変換されるが、基数に対して 有効でない数字が"
"現れた時点で変換は終了する。(11進数以上では \\(aqA\\(aq は 大文字・小文字に関"
"わらず 10 を表し、 \\(aqB\\(aq は 11 を表現し、 以下同様に、 \\(aqZ\\(aq は "
"35 を表す。)"

#. type: Plain text
#: build/C/man3/strtol.3:93
msgid ""
"If I<endptr> is not NULL, B<strtol>()  stores the address of the first "
"invalid character in I<*endptr>.  If there were no digits at all, B<strtol>"
"()  stores the original value of I<nptr> in I<*endptr> (and returns 0).  In "
"particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is \\(aq"
"\\e0\\(aq on return, the entire string is valid."
msgstr ""
"I<endptr> がヌル値 (NULL) でない場合は、最初に現れた不正な文字が B<strtol>"
"()  によって I<*endptr> に保存されている。 文字列に有効な数字がひとつもなけれ"
"ば、 B<strtol>()  は I<nptr> の元の値を I<*endptr> に代入する (そして 0 を返"
"す)。 特に、I<*nptr> が \\(aq\\e0\\(aq 以外で、返された I<**endptr> が \\(aq"
"\\e0\\(aq ならば、文字列全体が有効だったことになる。"

#. type: Plain text
#: build/C/man3/strtol.3:99
msgid ""
"The B<strtoll>()  function works just like the B<strtol>()  function but "
"returns a long long integer value."
msgstr ""
"B<strtoll>()  関数は B<strtol>()  と同様だが、long long int 型の値を返す。"

#. type: Plain text
#: build/C/man3/strtol.3:124
msgid ""
"The B<strtol>()  function returns the result of the conversion, unless the "
"value would underflow or overflow.  If an underflow occurs, B<strtol>()  "
"returns B<LONG_MIN>.  If an overflow occurs, B<strtol>()  returns "
"B<LONG_MAX>.  In both cases, I<errno> is set to B<ERANGE>.  Precisely the "
"same holds for B<strtoll>()  (with B<LLONG_MIN> and B<LLONG_MAX> instead of "
"B<LONG_MIN> and B<LONG_MAX>)."
msgstr ""
"アンダーフローもオーバーフローも起きなかった場合、 B<strtol>()  関数は 変換さ"
"れた値を返す。オーバーフローした場合には B<LONG_MAX> が返り、 アンダーフロー"
"した場合には B<LONG_MIN> が返る。オーバーフロー、 アンダーフローのいずれの場"
"合にも 大域変数 I<errno> には B<ERANGE> が設定される。 B<strtoll>()  も同様で"
"あるが、 B<LONG_MIN> と B<LONG_MAX> の代わりに B<LLONG_MIN> と B<LLONG_MAX> "
"が返される。"

#. type: Plain text
#: build/C/man3/strtol.3:131 build/C/man3/strtoul.3:134
msgid "(not in C99)  The given I<base> contains an unsupported value."
msgstr "(C99 にはない) 指定された I<base> がサポートされていない値である。"

#. type: Plain text
#: build/C/man3/strtol.3:134 build/C/man3/strtoul.3:137
msgid "The resulting value was out of range."
msgstr "結果の値が範囲外である。"

#. type: Plain text
#: build/C/man3/strtol.3:137 build/C/man3/strtoul.3:140
msgid ""
"The implementation may also set I<errno> to B<EINVAL> in case no conversion "
"was performed (no digits seen, and 0 returned)."
msgstr ""
"実装によっては、変換が行われなかった場合 (数字がなく、0 を返した場合)、 "
"I<errno> に B<EINVAL> が設定される場合がある。"

#. type: Plain text
#: build/C/man3/strtol.3:142
msgid ""
"B<strtol>()  conforms to SVr4, 4.3BSD, C89, C99 and POSIX.1-2001, and "
"B<strtoll>()  to C99 and POSIX.1-2001."
msgstr ""
"B<strtol>()  は SVr4, 4.3BSD, C89, C99 と POSIX.1-2001 に準拠している。 "
"B<strtoll>()  は C99 と POSIX.1-2001 に準拠している。"

#. type: Plain text
#: build/C/man3/strtol.3:160
msgid ""
"Since B<strtol>()  can legitimately return 0, B<LONG_MAX>, or B<LONG_MIN> "
"(B<LLONG_MAX> or B<LLONG_MIN> for B<strtoll>())  on both success and "
"failure, the calling program should set I<errno> to 0 before the call, and "
"then determine if an error occurred by checking whether I<errno> has a "
"nonzero value after the call."
msgstr ""
"B<strtol ()> からは成功、失敗どちらの場合でも 0, B<LONG_MAX>, B<LONG_MIN> "
"(B<strtoll>()  では B<LLONG_MAX>, B<LLONG_MIN>)  が返る可能性があるので、 プ"
"ログラムは関数を呼び出す前に I<errno> を 0 に設定し、呼び出し後に I<errno> "
"が 0 以外の値かどうかを確認しエラーが発生したかどうかを判断する 必要がある。"

#. type: Plain text
#: build/C/man3/strtol.3:164
msgid ""
"In locales other than the \"C\" locale, other strings may also be accepted.  "
"(For example, the thousands separator of the current locale may be "
"supported.)"
msgstr ""
"\"C\" 以外のロケールの場合、その他の文字列も受け付けられるかもしれない。 (例"
"えば、現在のロケールの 1000 毎の区切り文字がサポートされているかもしれない。)"

#. type: Plain text
#: build/C/man3/strtol.3:166 build/C/man3/strtoul.3:165
msgid "BSD also has"
msgstr "BSD には、"

#. type: Plain text
#: build/C/man3/strtol.3:170
#, no-wrap
msgid "B<quad_t strtoq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<quad_t strtoq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"

#. type: Plain text
#: build/C/man3/strtol.3:179
msgid ""
"with completely analogous definition.  Depending on the wordsize of the "
"current architecture, this may be equivalent to B<strtoll>()  or to B<strtol>"
"()."
msgstr ""
"という完全に同様の定義を持つ関数がある。 使用中のアーキテクチャのワード長次第"
"であるが、この関数は B<strtoll>()  か B<strtol>()  と等価となることもある。"

#. type: Plain text
#: build/C/man3/strtol.3:193
msgid ""
"The program shown below demonstrates the use of B<strtol>().  The first "
"command-line argument specifies a string from which B<strtol>()  should "
"parse a number.  The second (optional) argument specifies the base to be "
"used for the conversion.  (This argument is converted to numeric form using "
"B<atoi>(3), a function that performs no error checking and has a simpler "
"interface than B<strtol>().)  Some examples of the results produced by this "
"program are the following:"
msgstr ""
"以下のプログラムは B<strtol>()  の使用例である。 最初のコマンドライン引き数に"
"は B<strtol>()  が数字として解釈する文字列を指定する。 (省略可能な) 二番目の"
"引き数には 変換に使用される基数を指定する (この引き数は B<atoi>(3)  を使って"
"数値に変換される。 B<atoi>(3)  は B<strtol>()  よりも簡単なインタフェースを持"
"つ関数で、 その中ではエラーチェックは行われない)。 このプログラムの実行例をい"
"くつか以下に示す:"

#. type: Plain text
#: build/C/man3/strtol.3:209
#, no-wrap
msgid ""
"$B< ./a.out 123>\n"
"strtol() returned 123\n"
"$B< ./a.out \\(aq    123\\(aq>\n"
"strtol() returned 123\n"
"$B< ./a.out 123abc>\n"
"strtol() returned 123\n"
"Further characters after number: abc\n"
"$B< ./a.out 123abc 55>\n"
"strtol: Invalid argument\n"
"$B< ./a.out \\(aq\\(aq>\n"
"No digits were found\n"
"$B< ./a.out 4000000000>\n"
"strtol: Numerical result out of range\n"
msgstr ""
"$B< ./a.out 123>\n"
"strtol() returned 123\n"
"$B< ./a.out \\(aq    123\\(aq>\n"
"strtol() returned 123\n"
"$B< ./a.out 123abc>\n"
"strtol() returned 123\n"
"Further characters after number: abc\n"
"$B< ./a.out 123abc 55>\n"
"strtol: Invalid argument\n"
"$B< ./a.out \\(aq\\(aq>\n"
"No digits were found\n"
"$B< ./a.out 4000000000>\n"
"strtol: Numerical result out of range\n"

#. type: SS
#: build/C/man3/strtol.3:211
#, no-wrap
msgid "Program source"
msgstr "プログラムのソース"

#. type: Plain text
#: build/C/man3/strtol.3:218
#, no-wrap
msgid ""
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>limits.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"
"#include E<lt>errno.hE<gt>\n"
msgstr ""
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>limits.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"
"#include E<lt>errno.hE<gt>\n"

#. type: Plain text
#: build/C/man3/strtol.3:225
#, no-wrap
msgid ""
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
"    int base;\n"
"    char *endptr, *str;\n"
"    long val;\n"
msgstr ""
"int\n"
"main(int argc, char *argv[])\n"
"{\n"
"    int base;\n"
"    char *endptr, *str;\n"
"    long val;\n"

#. type: Plain text
#: build/C/man3/strtol.3:230
#, no-wrap
msgid ""
"    if (argc E<lt> 2) {\n"
"        fprintf(stderr, \"Usage: %s str [base]\\en\", argv[0]);\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"
msgstr ""
"    if (argc E<lt> 2) {\n"
"        fprintf(stderr, \"Usage: %s str [base]\\en\", argv[0]);\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"

#. type: Plain text
#: build/C/man3/strtol.3:233
#, no-wrap
msgid ""
"    str = argv[1];\n"
"    base = (argc E<gt> 2) ? atoi(argv[2]) : 10;\n"
msgstr ""
"    str = argv[1];\n"
"    base = (argc E<gt> 2) ? atoi(argv[2]) : 10;\n"

#. type: Plain text
#: build/C/man3/strtol.3:236
#, no-wrap
msgid ""
"    errno = 0;    /* To distinguish success/failure after call */\n"
"    val = strtol(str, &endptr, base);\n"
msgstr ""
"    errno = 0;    /* To distinguish success/failure after call */\n"
"    val = strtol(str, &endptr, base);\n"

#. type: Plain text
#: build/C/man3/strtol.3:238
#, no-wrap
msgid "    /* Check for various possible errors */\n"
msgstr "    /* Check for various possible errors */\n"

#. type: Plain text
#: build/C/man3/strtol.3:244
#, no-wrap
msgid ""
"    if ((errno == ERANGE && (val == LONG_MAX || val == LONG_MIN))\n"
"            || (errno != 0 && val == 0)) {\n"
"        perror(\"strtol\");\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"
msgstr ""
"    if ((errno == ERANGE && (val == LONG_MAX || val == LONG_MIN))\n"
"            || (errno != 0 && val == 0)) {\n"
"        perror(\"strtol\");\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"

#. type: Plain text
#: build/C/man3/strtol.3:249
#, no-wrap
msgid ""
"    if (endptr == str) {\n"
"        fprintf(stderr, \"No digits were found\\en\");\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"
msgstr ""
"    if (endptr == str) {\n"
"        fprintf(stderr, \"No digits were found\\en\");\n"
"        exit(EXIT_FAILURE);\n"
"    }\n"

#. type: Plain text
#: build/C/man3/strtol.3:251
#, no-wrap
msgid "    /* If we got here, strtol() successfully parsed a number */\n"
msgstr "    /* If we got here, strtol() successfully parsed a number */\n"

#. type: Plain text
#: build/C/man3/strtol.3:253
#, no-wrap
msgid "    printf(\"strtol() returned %ld\\en\", val);\n"
msgstr "    printf(\"strtol() returned %ld\\en\", val);\n"

#. type: Plain text
#: build/C/man3/strtol.3:256
#, no-wrap
msgid ""
"    if (*endptr != \\(aq\\e0\\(aq)        /* Not necessarily an error... */\n"
"        printf(\"Further characters after number: %s\\en\", endptr);\n"
msgstr ""
"    if (*endptr != \\(aq\\e0\\(aq)        /* Not necessarily an error... */\n"
"        printf(\"Further characters after number: %s\\en\", endptr);\n"

#. type: Plain text
#: build/C/man3/strtol.3:266
msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtoul>(3)"
msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtoul>(3)"

#. type: TH
#: build/C/man3/strtoul.3:31
#, no-wrap
msgid "STRTOUL"
msgstr "STRTOUL"

#. type: TH
#: build/C/man3/strtoul.3:31
#, no-wrap
msgid "2011-09-15"
msgstr "2011-09-15"

#. type: Plain text
#: build/C/man3/strtoul.3:34
msgid ""
"strtoul, strtoull, strtouq - convert a string to an unsigned long integer"
msgstr "strtoul, strtoull, strtouq - 文字列を unsigned long int に変換する"

#. type: Plain text
#: build/C/man3/strtoul.3:40
#, no-wrap
msgid "B<unsigned long int strtoul(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<unsigned long int strtoul(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"

#. type: Plain text
#: build/C/man3/strtoul.3:43
#, no-wrap
msgid ""
"B<unsigned long long int strtoull(const char *>I<nptr>B<, char **>I<endptr>B<,>\n"
"B<                                int >I<base>B<);>\n"
msgstr ""
"B<unsigned long long int strtoull(const char *>I<nptr>B<, char **>I<endptr>B<,>\n"
"B<                                int >I<base>B<);>\n"

#. type: Plain text
#: build/C/man3/strtoul.3:52
msgid "B<strtoull>():"
msgstr "B<strtoull>():"

#. type: Plain text
#: build/C/man3/strtoul.3:69
msgid ""
"The B<strtoul>()  function converts the initial part of the string in "
"I<nptr> to an I<unsigned long int> value according to the given I<base>, "
"which must be between 2 and 36 inclusive, or be the special value 0."
msgstr ""
"B<strtoul>()  関数は、 I<nptr> の文字列の最初の部分を、 I<base> を基数として "
"I<unsigned long int> に変換する。 この I<base> は 2 から 36 までの値 あるいは"
"特別な意味を持つ値 0 でなければならない。"

#. type: Plain text
#: build/C/man3/strtoul.3:88
msgid ""
"The remainder of the string is converted to an I<unsigned long int> value in "
"the obvious manner, stopping at the first character which is not a valid "
"digit in the given base.  (In bases above 10, the letter \\(aqA\\(aq in "
"either upper or lower case represents 10, \\(aqB\\(aq represents 11, and so "
"forth, with \\(aqZ\\(aq representing 35.)"
msgstr ""
"文字列の残りの部分は I<unsigned long int> に変換されるが、基数に対して 有効で"
"ない数字が現れた時点で変換は終了する。(11進数以上では \\(aqA\\(aq は 大文字・"
"小文字に関わらず 10 を表し、 \\(aqB\\(aq は 11 を表現し, 以下同様に、 \\(aqZ"
"\\(aq は 35 を表す。)"

#. type: Plain text
#: build/C/man3/strtoul.3:100
msgid ""
"If I<endptr> is not NULL, B<strtoul>()  stores the address of the first "
"invalid character in I<*endptr>.  If there were no digits at all, B<strtoul>"
"()  stores the original value of I<nptr> in I<*endptr> (and returns 0).  In "
"particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is \\(aq"
"\\e0\\(aq on return, the entire string is valid."
msgstr ""
"I<endptr> がヌル値 (NULL) でない場合、 B<strtoul>()  は最初に不正な文字が現れ"
"たアドレスを I<*endptr> に格納している。 文字列に有効な数字がひとつもなけれ"
"ば、 B<strtoul>()  は I<nptr> の元の値を I<*endptr> に代入する(そして 0 を返"
"す)。 特に、 I<*nptr> が \\(aq\\e0\\(aq 以外で、返された I<**endptr> が \\(aq"
"\\e0\\(aq ならば、文字列全体が有効だったことになる。"

#. type: Plain text
#: build/C/man3/strtoul.3:108
msgid ""
"The B<strtoull>()  function works just like the B<strtoul>()  function but "
"returns an I<unsigned long long int> value."
msgstr ""
"B<strtoull>()  関数は B<strtoul>()  関数と同様だが、 I<unsigned long long "
"int> 型の値を返す。"

#. type: Plain text
#: build/C/man3/strtoul.3:127
msgid ""
"The B<strtoul>()  function returns either the result of the conversion or, "
"if there was a leading minus sign, the negation of the result of the "
"conversion represented as an unsigned value, unless the original "
"(nonnegated) value would overflow; in the latter case, B<strtoul>()  returns "
"B<ULONG_MAX> and sets I<errno> to B<ERANGE>.  Precisely the same holds for "
"B<strtoull>()  (with B<ULLONG_MAX> instead of B<ULONG_MAX>)."
msgstr ""
"B<strtoul>()  関数は変換結果を返す。文字列がマイナス符号から始まっていた場 合"
"は、(符号反転前の値がオーバーフローしていなければ) 変換結果を符号反転した 値"
"を unsigned 型で返す。変換でオーバーフローが発生した場合は B<ULONG_MAX> を返"
"し、 I<errno> に B<ERANGE> を設定する。 (B<ULONG_MAX> を B<ULLONG_MAX> と読み"
"替えれば)  B<strtoull>()  は B<strtoul>()  と全く同じである。"

#. type: Plain text
#: build/C/man3/strtoul.3:145
msgid ""
"B<strtoul>()  conforms to SVr4, C89, C99 and POSIX-2001, and B<strtoull>()  "
"to C99 and POSIX.1-2001."
msgstr ""
"B<strtoul>()  は SVr4, C89, C99 と POSIX-2001 に準拠している。 B<strtoull>"
"()  は C99 と POSIX.1-2001 に準拠している。"

#. type: Plain text
#: build/C/man3/strtoul.3:159
msgid ""
"Since B<strtoul>()  can legitimately return 0 or B<ULONG_MAX> (B<ULLONG_MAX> "
"for B<strtoull>())  on both success and failure, the calling program should "
"set I<errno> to 0 before the call, and then determine if an error occurred "
"by checking whether I<errno> has a nonzero value after the call."
msgstr ""
"B<strtoul ()> からは成功、失敗どちらの場合でも 0 や B<ULONG_MAX> (B<strtoull>"
"()  では B<ULLONG_MAX>)  が返る可能性があるので、 プログラムは関数を呼び出す"
"前に I<errno> を 0 に設定し、呼び出し後に I<errno> が 0 以外の値かどうかを確"
"認しエラーが発生したかどうかを判断する 必要がある。"

#. type: Plain text
#: build/C/man3/strtoul.3:163
msgid ""
"In locales other than the \"C\" locale, other strings may be accepted.  (For "
"example, the thousands separator of the current locale may be supported.)"
msgstr ""
"\"C\" 以外のロケールの場合、その他の文字列も受け付けられるかもしれない。 (例"
"えば、現在のロケールの 1000 毎の区切り文字に対応しているかもしれない。)"

#. type: Plain text
#: build/C/man3/strtoul.3:169
#, no-wrap
msgid "B<u_quad_t strtouq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<u_quad_t strtouq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"

#. type: Plain text
#: build/C/man3/strtoul.3:178
msgid ""
"with completely analogous definition.  Depending on the wordsize of the "
"current architecture, this may be equivalent to B<strtoull>()  or to "
"B<strtoul>()."
msgstr ""
"という完全に同様の定義を持つ関数がある。 使用中のアーキテクチャのワード長次第"
"であるが、この関数は B<strtoull>()  や B<stroul>()  と等価な場合もありえる。"

#. type: Plain text
#: build/C/man3/strtoul.3:183
msgid ""
"Negative values are considered valid input and are silently converted to the "
"equivalent I<unsigned long int> value."
msgstr ""
"負の値も正当な入力とみなされ、エラーもなく、 対応する I<unsigned long int> 型"
"の値に変換される。"

#. type: Plain text
#: build/C/man3/strtoul.3:194
msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3)"
msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3)"

#. type: TH
#: build/C/man3/system.3:28
#, no-wrap
msgid "SYSTEM"
msgstr "SYSTEM"

#. type: TH
#: build/C/man3/system.3:28
#, no-wrap
msgid "2010-09-10"
msgstr "2010-09-10"

#. type: Plain text
#: build/C/man3/system.3:31
msgid "system - execute a shell command"
msgstr "system - シェルコマンドの実行"

#. type: Plain text
#: build/C/man3/system.3:36
#, no-wrap
msgid "B<int system(const char *>I<command>B<);>\n"
msgstr "B<int system(const char *>I<command>B<);>\n"

#. type: Plain text
#: build/C/man3/system.3:52
msgid ""
"B<system>()  executes a command specified in I<command> by calling B</bin/sh "
"-c> I<command>, and returns after the command has been completed.  During "
"execution of the command, B<SIGCHLD> will be blocked, and B<SIGINT> and "
"B<SIGQUIT> will be ignored."
msgstr ""
"B<system>()  は I<command> で指定したコマンドを B</bin/sh -c> I<command> の形"
"で実行する。指定したコマンドが終了すればこの関数も終了する。 コマンド実行中"
"は、 B<SIGCHLD> はブロックされ、 B<SIGINT> と B<SIGQUIT> は無視される。"

#. type: Plain text
#: build/C/man3/system.3:67
msgid ""
"The value returned is -1 on error (e.g.  B<fork>(2)  failed), and the return "
"status of the command otherwise.  This latter return status is in the format "
"specified in B<wait>(2).  Thus, the exit code of the command will be "
"I<WEXITSTATUS(status)>.  In case I</bin/sh> could not be executed, the exit "
"status will be that of a command that does I<exit(127)>."
msgstr ""
"エラーが発生した場合 (B<fork>(2)  に失敗した場合など)、-1 を返す。 そうでなけ"
"れば、コマンドのステータスを返す。 後者の場合、ステータスは B<wait>(2)  で定"
"義されているフォーマットで返ってくる。 従って、コマンドの終了コードは "
"I<WEXITSTATUS(status)> で得ることが出来る。 I</bin/sh> が実行出来なかった場"
"合、 終了ステータスはコマンドが I<exit(127)> を実行した場合と同じになる。"

#. type: Plain text
#: build/C/man3/system.3:73
msgid ""
"If the value of I<command> is NULL, B<system>()  returns nonzero if the "
"shell is available, and zero if not."
msgstr ""
"I<command> の値が NULL のときは、 B<system>()  はシェルが利用可能ならゼロ以外"
"の値を返し、利用不可ならゼロを返す。"

#. type: Plain text
#: build/C/man3/system.3:76
msgid "B<system>()  does not affect the wait status of any other children."
msgstr "B<system>()  は他の子プロセスのウエイトステータスには影響を与えない。"

#. type: Plain text
#: build/C/man3/system.3:78
msgid "C89, C99, POSIX.1-2001."
msgstr "C89, C99, POSIX.1-2001."

#. type: Plain text
#: build/C/man3/system.3:91
msgid ""
"If the B<_XOPEN_SOURCE> feature test macro is defined (before including "
"I<any> header files), then the macros described in B<wait>(2)  "
"(B<WEXITSTATUS>(), etc.) are made available when including I<E<lt>stdlib."
"hE<gt>>."
msgstr ""
"(「どの」ヘッダファイルをインクルードするよりも前に)  機能検査マクロ "
"B<_XOPEN_SOURCE> が定義された場合には、 B<wait>(2)  で説明されているマクロ群 "
"(B<WEXITSTATUS>()  等) が I<E<lt>stdlib.hE<gt>> をインクルードすると利用可能"
"になる。"

#. type: Plain text
#: build/C/man3/system.3:102
msgid ""
"As mentioned, B<system>()  ignores B<SIGINT> and B<SIGQUIT>.  This may make "
"programs that call it from a loop uninterruptible, unless they take care "
"themselves to check the exit status of the child.  E.g."
msgstr ""
"既に述べたように、 B<system>()  は B<SIGINT> と B<SIGQUIT> を無視する。 よっ"
"てループから B<system>()  を呼ぶプログラムは、 以下の例のように子プロセスの終"
"了状態を自分でチェックしておかないと、 中断できなくなるかもしれない。"

#. type: Plain text
#: build/C/man3/system.3:107
#, no-wrap
msgid ""
"    while (something) {\n"
"        int ret = system(\"foo\");\n"
msgstr ""
"    while (something) {\n"
"        int ret = system(\"foo\");\n"

#. type: Plain text
#: build/C/man3/system.3:112
#, no-wrap
msgid ""
"        if (WIFSIGNALED(ret) &&\n"
"            (WTERMSIG(ret) == SIGINT || WTERMSIG(ret) == SIGQUIT))\n"
"                break;\n"
"    }\n"
msgstr ""
"        if (WIFSIGNALED(ret) &&\n"
"            (WTERMSIG(ret) == SIGINT || WTERMSIG(ret) == SIGQUIT))\n"
"                break;\n"
"    }\n"

#. type: Plain text
#: build/C/man3/system.3:132
msgid ""
"Do not use B<system>()  from a program with set-user-ID or set-group-ID "
"privileges, because strange values for some environment variables might be "
"used to subvert system integrity.  Use the B<exec>(3)  family of functions "
"instead, but not B<execlp>(3)  or B<execvp>(3).  B<system>()  will not, in "
"fact, work properly from programs with set-user-ID or set-group-ID "
"privileges on systems on which I</bin/sh> is bash version 2, since bash 2 "
"drops privileges on startup.  (Debian uses a modified bash which does not do "
"this when invoked as B<sh>.)"
msgstr ""
"set-user-ID や set-group-ID の特権をもつプログラムの中では B<system>()  を"
"使ってはいけない。なぜなら、ある環境変数の未知の値によって システムの安全が損"
"なわれるからである。代わりに B<exec>(3)  関連の関数群の中で B<execlp>(3)  と "
"B<execvp>(3)  以外の関数を使用すべきである。 実際のところ、 B<system>()  は "
"I</bin/sh> が bash バージョン 2 であるシステムでは、 set-user-ID や set-"
"group-ID の特権を持つプログラムからは正しく動作しない。 なぜなら、bash バー"
"ジョン 2 はスタートアップ時に特権を落とすからである。 (Debian では、sh として"
"起動された時にはこのような動作を行なわないように 修正された bash を用いてい"
"る)"

#. type: Plain text
#: build/C/man3/system.3:146
msgid ""
"In versions of glibc before 2.1.3, the check for the availability of I</bin/"
"sh> was not actually performed if I<command> was NULL; instead it was always "
"assumed to be available, and B<system>()  always returned 1 in this case.  "
"Since glibc 2.1.3, this check is performed because, even though POSIX.1-2001 "
"requires a conforming implementation to provide a shell, that shell may not "
"be available or executable if the calling program has previously called "
"B<chroot>(2)  (which is not specified by POSIX.1-2001)."
msgstr ""
"glibc 2.1.3 より前のバージョンでは、 I<command> が NULL の場合に I</bin/sh> "
"が利用可能かどうかのチェックは実際には行わず、 いつでも利用可能であるとみなし"
"ていた。 B<system>()  はこの場合に常に 1 を返していた。 POSIX.1-2001 ではシェ"
"ルが提供されているという標準に準拠した実装を 要求しているが、glibc 2.1.3 以降"
"ではシェルのチェックを実行している。 なぜなら、呼び出し元のプログラムが "
"B<system>()  を呼び出すより前に (POSIX.1-2001 では規定されていない)  "
"B<chroot>(2)  を呼び出していた時には、シェルが利用可能でない場合や実行可能"
"ファイル でない場合があるからである。"

#. type: Plain text
#: build/C/man3/system.3:151
msgid ""
"It is possible for the shell command to return 127, so that code is not a "
"sure indication that the B<execve>(2)  call failed."
msgstr ""
"実行したシェルコマンドが 127 (B</bin/sh> の呼び出しに失敗した時に返す値) を返"
"すことも考えられる。 そのため、プログラムは (リターンコードを見るだけでは)  "
"B<execve>(2)  の呼び出しが失敗したことを確実に知ることはできない。"

#. type: Plain text
#: build/C/man3/system.3:156
msgid "B<sh>(1), B<signal>(2), B<wait>(2), B<exec>(3)"
msgstr "B<sh>(1), B<signal>(2), B<wait>(2), B<exec>(3)"

#. type: TH
#: build/C/man3/wcstombs.3:14
#, no-wrap
msgid "WCSTOMBS"
msgstr "WCSTOMBS"

#. type: TH
#: build/C/man3/wcstombs.3:14
#, no-wrap
msgid "2011-10-16"
msgstr "2011-10-16"

#. type: Plain text
#: build/C/man3/wcstombs.3:17
msgid "wcstombs - convert a wide-character string to a multibyte string"
msgstr "wcstombs - ワイド文字列をマルチバイト文字列に変換する"

#. type: Plain text
#: build/C/man3/wcstombs.3:22
#, no-wrap
msgid "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
msgstr "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"

#. type: Plain text
#: build/C/man3/wcstombs.3:33
msgid ""
"If I<dest> is not a NULL pointer, the B<wcstombs>()  function converts the "
"wide-character string I<src> to a multibyte string starting at I<dest>.  At "
"most I<n> bytes are written to I<dest>.  The conversion starts in the "
"initial state.  The conversion can stop for three reasons:"
msgstr ""
"I<dest> が NULL ポインタでない場合、 B<wcstombs>()  関数は ワイド文字列 "
"I<src> を I<dest> から始まるマルチバイト文字列に 変換する。I<dest> には最大"
"で I<n> バイトが書き込まれる。 変換は初期状態で開始される。変換は以下の3つの"
"理由により停止する。"

#. type: Plain text
#: build/C/man3/wcstombs.3:39
msgid ""
"1. A wide character has been encountered that can not be represented as a "
"multibyte sequence (according to the current locale).  In this case I<"
"(size_t)\\ -1> is returned."
msgstr ""
"1. (現在のロケールにおける)マルチバイト列で表現できないワイド文字に 遭遇した"
"場合。この場合には I<(size_t)\\ -1> が返される。"

#. type: Plain text
#: build/C/man3/wcstombs.3:43
msgid ""
"2. The length limit forces a stop.  In this case the number of bytes written "
"to I<dest> is returned, but the shift state at this point is lost."
msgstr ""
"2. 長さ制限によって強制停止させられた場合。この場合には I<dest> に 書き込まれ"
"たバイト数が返される。しかしこの時点でのシフト状態は失われる。"

#. type: Plain text
#: build/C/man3/wcstombs.3:49
msgid ""
"3. The wide-character string has been completely converted, including the "
"terminating null wide character (L\\(aq\\e0\\(aq).  In this case the "
"conversion ends in the initial state.  The number of bytes written to "
"I<dest>, excluding the terminating null byte (\\(aq\\e0\\(aq), is returned."
msgstr ""
"3. ワイド文字列が終端の NULL ワイド文字 (L\\(aq\\e0\\(aq) を含めて完全に変換"
"された場合。\n"
"この場合には変換は初期状態で終了し、 I<dest> に書き込まれたバイト数を返す\n"
"(終端の NULL バイト (\\(aq\\e0\\(aq) は含まれない)。"

#. type: Plain text
#: build/C/man3/wcstombs.3:52
msgid ""
"The programmer must ensure that there is room for at least I<n> bytes at "
"I<dest>."
msgstr ""
"プログラマーは I<dest> に最低でも I<n> バイトの空きがあることを 保証しなけれ"
"ばならない。"

#. type: Plain text
#: build/C/man3/wcstombs.3:56
msgid ""
"If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
"except that the converted bytes are not written out to memory, and that no "
"length limit exists."
msgstr ""
"I<dest> が NULL の場合、I<n> は無視される。上記と同様に変換が行 なわれるが変"
"換結果のバイト列はメモリには書き込まれない。 また長さの上限が存在しない。"

#. type: Plain text
#: build/C/man3/wcstombs.3:59
msgid ""
"In order to avoid the case 2 above, the programmer should make sure I<n> is "
"greater or equal to I<wcstombs(NULL,src,0)+1>."
msgstr ""
"上記の 2. の場合を避けるために、プログラマーは I<n> が I<wcstombs(NULL,"
"src,0)+1> 以上であることを保証しなければならない。"

#. type: Plain text
#: build/C/man3/wcstombs.3:68
msgid ""
"The B<wcstombs>()  function returns the number of bytes that make up the "
"converted part of multibyte sequence, not including the terminating null "
"byte.  If a wide character was encountered which could not be converted, I<"
"(size_t)\\ -1> is returned."
msgstr ""
"B<wcstombs>()  関数は生成したマルチバイト列のバイト数を返す。終端の ナル文字"
"は含まない。もし変換できないワイド文字に遭遇した場合には I<(size_t)\\ -1> を"
"返す。"

#. type: Plain text
#: build/C/man3/wcstombs.3:77
msgid ""
"The behavior of B<wcstombs>()  depends on the B<LC_CTYPE> category of the "
"current locale."
msgstr ""
"B<wcstombs>()  の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"

#. type: Plain text
#: build/C/man3/wcstombs.3:82
msgid ""
"The function B<wcsrtombs>(3)  provides a thread safe interface to the same "
"functionality."
msgstr ""
"B<wcsrtombs>()  関数は同じ機能のためのスレッド・セーフな インターフェースを提"
"供する。"

#. type: Plain text
#: build/C/man3/wcstombs.3:85
msgid "B<mbstowcs>(3), B<wcsrtombs>(3)"
msgstr "B<mbstowcs>(3), B<wcsrtombs>(3)"

#. type: TH
#: build/C/man3/wctomb.3:14
#, no-wrap
msgid "WCTOMB"
msgstr "WCTOMB"

#. type: Plain text
#: build/C/man3/wctomb.3:17
msgid "wctomb - convert a wide character to a multibyte sequence"
msgstr "wctomb - ワイド文字をマルチバイト列に変換する。"

#. type: Plain text
#: build/C/man3/wctomb.3:22
#, no-wrap
msgid "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
msgstr "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"

#. type: Plain text
#: build/C/man3/wctomb.3:36
msgid ""
"If I<s> is not NULL, the B<wctomb>()  function converts the wide character "
"I<wc> to its multibyte representation and stores it at the beginning of the "
"character array pointed to by I<s>.  It updates the shift state, which is "
"stored in a static anonymous variable only known to the wctomb function, and "
"returns the length of said multibyte representation, that is, the number of "
"bytes written at I<s>."
msgstr ""
"I<s> が NULL でなければ、 B<wctomb>()  関数はワイド文字 I<wc> を マルチバイト"
"表現に変換して I<s> の指す文字配列に格納する。 同時に wctomb 関数のみが使用す"
"る静的で名前のないシフト状態を更新する。 この関数はマルチバイト表現の長さ、す"
"なわち I<s> に書き込まれた バイト数を返す。"

#. type: Plain text
#: build/C/man3/wctomb.3:40
msgid ""
"The programmer must ensure that there is room for at least B<MB_CUR_MAX> "
"bytes at I<s>."
msgstr ""
"プログラマーは I<s> に少なくとも B<MB_CUR_MAX> バイトの空きがあることを保証し"
"なければならない。"

#.  The Dinkumware doc and the Single UNIX specification say this, but
#.  glibc doesn't implement this.
#. type: Plain text
#: build/C/man3/wctomb.3:50
msgid ""
"If I<s> is NULL, the B<wctomb>()  function resets the shift state, only "
"known to this function, to the initial state, and returns nonzero if the "
"encoding has nontrivial shift state, or zero if the encoding is stateless."
msgstr ""
"I<s> が NULL ならば、 B<wctomb>()  関数は自分のみが使用するシフト状態を 初期"
"状態に戻して、文字符号がシフト状態に依存しているならばゼロ以外を シフト状態に"
"依存しない場合にはゼロを返す。"

#. type: Plain text
#: build/C/man3/wctomb.3:59
msgid ""
"If I<s> is not NULL, the B<wctomb>()  function returns the number of bytes "
"that have been written to the byte array at I<s>.  If I<wc> can not be "
"represented as a multibyte sequence (according to the current locale), -1 is "
"returned."
msgstr ""
"I<s> が NULL でない場合 B<wctomb>()  関数はバイト配列 I<s> に 書き込まれたバ"
"イト数を返す。I<wc> が(現在のロケールにおいて)  マルチバイト列で表現できない"
"場合には -1 を返す。"

#. type: Plain text
#: build/C/man3/wctomb.3:64
msgid ""
"If I<s> is NULL, the B<wctomb>()  function returns nonzero if the encoding "
"has nontrivial shift state, or zero if the encoding is stateless."
msgstr ""
"I<s> が NULL の場合 B<wctomb>()  関数は文字符号がシフト状態に 依存している場"
"合にはゼロ以外、シフト状態に依存しない場合はゼロを返す。"

#. type: Plain text
#: build/C/man3/wctomb.3:73
msgid ""
"The behavior of B<wctomb>()  depends on the B<LC_CTYPE> category of the "
"current locale."
msgstr ""
"B<wctomb>()  関数の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存してい"
"る。"

#. type: Plain text
#: build/C/man3/wctomb.3:79
msgid ""
"This function is not multithread safe.  The function B<wcrtomb>(3)  provides "
"a better interface to the same functionality."
msgstr ""
"この関数はマルチスレッドでは安全ではない。 B<wcrtomb>(3)  関数は 同じ機能のよ"
"り良いインターフェースを提供する。"

#. type: Plain text
#: build/C/man3/wctomb.3:83
msgid "B<MB_CUR_MAX>(3), B<wcrtomb>(3), B<wcstombs>(3)"
msgstr "B<MB_CUR_MAX>(3), B<wcrtomb>(3), B<wcstombs>(3)"

#~ msgid ""
#~ "Recent versions of Linux libc (later than 5.4.23) and glibc (2.x)  "
#~ "include a B<malloc>()  implementation which is tunable via environment "
#~ "variables.  When B<MALLOC_CHECK_> is set, a special (less efficient) "
#~ "implementation is used which is designed to be tolerant against simple "
#~ "errors, such as double calls of B<free>()  with the same argument, or "
#~ "overruns of a single byte (off-by-one bugs).  Not all such errors can be "
#~ "protected against, however, and memory leaks can result.  If "
#~ "B<MALLOC_CHECK_> is set to 0, any detected heap corruption is silently "
#~ "ignored; if set to 1, a diagnostic message is printed on I<stderr>; if "
#~ "set to 2, B<abort>(3)  is called immediately; if set to 3, a diagnostic "
#~ "message is printed on I<stderr> and the program is aborted.  Using a "
#~ "nonzero B<MALLOC_CHECK_> value can be useful because otherwise a crash "
#~ "may happen much later, and the true cause for the problem is then very "
#~ "hard to track down."
#~ msgstr ""
#~ "最近のバージョンの Linux libc (5.4.23 以降) と glibc (2.x) では、 "
#~ "B<malloc>()  の動作を環境変数によって制御できるような実装がされている。 "
#~ "B<MALLOC_CHECK_> が設定されていると、特殊な実装が用いられ、 単純なエラーに"
#~ "は耐えることができるようになる (効率は悪くなる)。例えば、 B<free>()  を同"
#~ "じ引き数で二度呼び出してしまう、 1 バイトだけ行きすぎてしまう (off-by-one "
#~ "バグ) などがこれに当たる。 しかし、これらのエラーの全てを防ぐことができる"
#~ "わけではなく、 その場合にはメモリリークが起こってしまう。 "
#~ "B<MALLOC_CHECK_> が 0 にセットされていると、ヒープの破壊を黙って無視す"
#~ "る。 1 にセットされていると、診断メッセージが標準エラー出力に表示される。 "
#~ "2 にセットされていると、ただちに B<abort>(3)  が呼び出される。 3 にセット"
#~ "されていると、診断メッセージが標準エラー出力に表示され、 プログラムは強制"
#~ "終了 (abort) される。 B<MALLOC_CHECK_> に 0 以外の値をセットして役に立つ状"
#~ "況としては、 実際のプロセスのクラッシュがずっと後に起こり、 本当の原因を探"
#~ "し出すのが非常に困難な場合などが挙げられるだろう。"

#~ msgid "2009-01-13"
#~ msgstr "2009-01-13"

#~ msgid "B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
#~ msgstr "B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"

#~ msgid "B<void *malloc(size_t >I<size>B<);>\n"
#~ msgstr "B<void *malloc(size_t >I<size>B<);>\n"

#~ msgid "B<void free(void >I<*ptr>B<);>\n"
#~ msgstr "B<void free(void >I<*ptr>B<);>\n"

#~ msgid "B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
#~ msgstr "B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"

#~ msgid "#B< echo 2 E<gt> /proc/sys/vm/overcommit_memory>\n"
#~ msgstr "#B< echo 2 E<gt> /proc/sys/vm/overcommit_memory>\n"

#~ msgid ""
#~ "See also the kernel Documentation directory, files I<vm/overcommit-"
#~ "accounting> and I<sysctl/vm.txt>."
#~ msgstr ""
#~ "カーネルの付属文書の I<vm/overcommit-accounting> と I<sysctl/vm.txt> も参"
#~ "照のこと。"

#~ msgid "2008-06-19"
#~ msgstr "2008-06-19"

#~ msgid ""
#~ "B<mkstemp>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
#~ msgstr ""
#~ "B<mkstemp>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"

#~ msgid "B<mkostemp>()  is available since glibc 2.7."
#~ msgstr "B<mkostemp>()  は glibc 2.7 以降で利用可能である。"

#~ msgid "2008-08-29"
#~ msgstr "2008-08-29"
