今日の人気記事

  1. switch文 - 数値による場合分け
  2. 条件演算子(3項演算子)「? :」

浮動小数点数型(float型 double型)の最大値と最小値 - float.h

当ページのリンクには広告が含まれています。

スポンサーリンク

ここでは「float.h」を使って、浮動小数点数型の最大値と最小値、浮動小数点で表現できる最小値を確認する方法を紹介します。

float.h

「float.h」ファイルには、以下のように浮動小数点数型の最大値、浮動小数点で表現できる最小値……などが定義されています。

FLT_MINfloat型の浮動小数点で表現できる最小値
FLT_MAXfloat型の最大値
DBL_MINdouble型の浮動小数点で表現できる最小値
DBL_MAXdouble型の最大値
LDBL_MINlong double の浮動小数点で表現できる最小値
LDBL_MAXlong 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をかけたものです。

お使いの環境で利用できる最大値と最小値を確認してみましょう。

基本構文 の人気記事

  1. printf関数の変換指定子
  2. 条件演算子(3項演算子)「? :」
  3. 配列の要素を出力(表示)する
  4. while文 - 繰り返し処理
  5. continue文 - ループをスキップ
  6. 関数を呼び出す方法 - 引数なし&戻り値なし
  7. else if文 - 複数の条件式 - 条件分岐
  8. 変数名の付け方 - 命名規則
  9. int main(void) - プログラムの基本
  10. 関数のプロトタイプ宣言

関連記事(一部広告含む)