浮動小数点数型(float型 double型)の最大値と最小値 - float.h
当ページのリンクには広告が含まれています。
スポンサーリンク
ここでは「float.h」を使って、浮動小数点数型の最大値と最小値、浮動小数点で表現できる最小値を確認する方法を紹介します。
float.h
「float.h」ファイルには、以下のように浮動小数点数型の最大値、浮動小数点で表現できる最小値……などが定義されています。
| FLT_MIN | float型の浮動小数点で表現できる最小値 |
| FLT_MAX | float型の最大値 |
| DBL_MIN | double型の浮動小数点で表現できる最小値 |
| DBL_MAX | double型の最大値 |
| LDBL_MIN | long double の浮動小数点で表現できる最小値 |
| LDBL_MAX | long double の最大値 |
それでは実際に以下のプログラムで、浮動小数点数型の最大値と最小値、浮動小数点で表現できる最小値を確認してみましょう。
#include <stdio.h>
#include <float.h>
int main(void) {
/* float */
printf("float の最大値 = %e\n", FLT_MAX);
printf("float の最小値 = %e\n", -FLT_MAX);
printf("float の浮動小数点で表現できる最小値 = %e\n\n", FLT_MIN);
/* double */
printf("double の最大値 = %e\n", DBL_MAX);
printf("double の最小値 = %e\n", -DBL_MAX);
printf("double の浮動小数点で表現できる最小値 = %e\n\n", DBL_MIN);
/* long double */
printf("long double の最大値 = %Le\n", LDBL_MAX);
printf("long double の最小値 = %Le\n", -LDBL_MAX);
printf("long double の浮動小数点で表現できる最小値 = %Le\n\n", LDBL_MIN);
return 0;
}
※ 最小値は最大値にマイナスを付けた値です。
実行結果です。
float の最大値 = 3.402823e+38 float の最小値 = -3.402823e+38 float の浮動小数点で表現できる最小値 = 1.175494e-38 double の最大値 = 1.797693e+308 double の最小値 = -1.797693e+308 double の浮動小数点で表現できる最小値 = 2.225074e-308 long double の最大値 = 1.189731e+4932 long double の最小値 = -1.189731e+4932 long double の浮動小数点で表現できる最小値 = 3.362103e-4932
※ 最小値は最大値に -1をかけたものです。
お使いの環境で利用できる最大値と最小値を確認してみましょう。