.\" the American National Standards Committee X3, on Information
.\" Processing Systems.
.\"
+.\" %%%LICENSE_START(BSD_4_CLAUSE_UCB)
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
+.\" %%%LICENSE_END
.\"
.\" @(#)strtod.3 5.3 (Berkeley) 6/29/91
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
-.TH STRTOD 3 2010\-09\-20 Linux "Linux Programmer's Manual"
+.\"
+.\" Japanese Version Copyright (c) 1998-1999
+.\" Michihide Hotta and NAKANO Takeo all rights reserved.
+.\" Translated Fri Jun 26 1998 by Yasushi Shoji <yashi@yashi.com>
+.\" Updated & Modified Sun Mar 14 1999 by NAKANO Takeo <nakano@apm.seikei.ac.jp>
+.\" Updated & Modified Sun Jul 1 16:59:53 JST 2001
+.\" by Yuichi SATO <ysato@h4.dion.ne.jp>
+.\" Updated & Modified 2006-07-20,
+.\" Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.36
+.\"
+.TH STRTOD 3 2014\-08\-19 Linux "Linux Programmer's Manual"
.SH 名前
strtod, strtof, strtold \- ASCII 文字列を浮動小数点実数に変換する
.SH 書式
.br
または \fIcc\ \-std=c99\fP
.RE
-.ad l
+.ad
.SH 説明
\fBstrtod\fP(), \fBstrtof\fP(), \fBstrtold\fP() 関数は、 \fInptr\fP が指し示す文字列のはじめの部分を
\fIdouble\fP, \fIfloat\fP, \fIlong double\fP 型の値にそれぞれ変換する。
.LP
\fI無限\fP は "INF" または "INFINITY" で表され、大文字小文字は区別されない。
.LP
-.\" 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.
-\fINAN\fP は "NAN" (大文字小文字は区別されない) で表され、 その後に \(aq(\(aq 文字列 \(aq)\(aq が続く場合もある。
-この文字列は実装に依存する NAN を指定する。
+\fINAN\fP は "NAN" (大文字小文字は区別されない) で表され、 その後に文字列 \fI(n\-char\-sequence)\fP が続く場合もある。
+\fI(n\-char\-sequence)\fP は実装に依存する NAN の型を指定する。
.SH 返り値
これらの関数は、変換された値があれば、それを返す。
.TP
\fBERANGE\fP
オーバーフローまたはアンダーフローが起こった。
+.SH 属性
+.SS "マルチスレッディング (pthreads(7) 参照)"
+関数 \fBstrtod\fP(), \fBstrtof\fP(), \fBstrtold\fP() は、例外付きのスレッドセーフである。実行中に
+\fBsetlocale\fP(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。
.SH 準拠
C89 では \fBstrtod\fP() が、C99 では残りの 2 つの関数が記述されている。
.SH 注意
成功、失敗どちらの場合でも 0 を返す可能性があるので、 プログラムは呼び出す前に \fIerrno\fP を 0 に設定し、呼び出し後に \fIerrno\fP
が 0 以外の値かどうかを確認しエラーが発生したかどうかを判断する 必要がある。
+
+.\" 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.
+.\" It looks as though at least FreeBSD (according to the manual) does
+.\" something similar.
+.\" C11 says: "An implementation may use the n-char sequence to determine
+.\" extra information to be represented in the NaN's significant."
+glibc の実装では、"NAN" の後ろに置くことができる \fIn\-char\-sequence\fP は、整数値として解釈される (基数の 8 や 16
+を示す '0' や '0x' を接頭辞として付けることができる)。 この整数値は返り値の仮数部として使われる。
.SH 例
\fBstrtol\fP(3) のマニュアルページの例を参照。 このページで説明した関数の使用方法も同様である。
.SH 関連項目
-\fBatof\fP(3), \fBatoi\fP(3), \fBatol\fP(3), \fBstrtol\fP(3), \fBstrtoul\fP(3)
+\fBatof\fP(3), \fBatoi\fP(3), \fBatol\fP(3), \fBnan\fP(3), \fBnanf\fP(3), \fBnanl\fP(3),
+\fBstrtol\fP(3), \fBstrtoul\fP(3)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.41 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。