Everything

strtold


数を表現する文字列をlong double型の浮動小数点値に変換します。

[指定形式]

#include <stdlib.h>

long double strtold(const char *nptr, char **endptr);

[引数]

nptr 変換する数を表現する文字列へのポインタ

endptr 浮動小数点値を構成していない最初の文字へのポインタを格納 する記憶域へのポインタ

[戻り値]

正常:nptrが指している文字列が浮動小数点型を構成しない文字で始まっている時:0

nptrが指している文字列が浮動小数点型を構成する文字で始まっている時:変換されたlong double型の浮動小数点値

異常:変換後の値がオーバフローの時:変換する文字列の符号と同符号をもつHUGE_VALL

変換後の値がアンダフローの時:0

[備考]

変換後の値がオーバフロー/アンダフローをおこした時はerrnoを設定します。

strtold関数は、最初の数字もしくは小数点から浮動小数点値を構成しない文字の直前までをlong double型の浮動小数点値に変換します。ただし、指数部も小数点も現われなかった時は、小数点は文字列の最後の数字の後に続くと仮定されます。endptrの指す領域には、浮動小数点型を構成しない最初の文字へのポインタを設定します。数字を読み込む前に浮動小数点型を構成しない文字がある場合はnptrの値を設定します。endptrがNULLの場合、この設定は行われません。