今日の人気記事

  1. printf関数の変換指定子
  2. 乱数 - 1〜10のランダムな数値を出力する
  3. continue文 - ループをスキップ
  4. MinGW - gcc の環境設定(パスを通す) - Windows環境
  5. 入力した文字列の文字数を表示する(出力)

浮動小数点数型(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. continue文 - ループをスキップ
  5. while文 - 繰り返し処理
  6. 比較演算子 - 条件分岐
  7. (前置・後置)インクリメント演算子, ++
  8. 関数のプロトタイプ宣言
  9. 数値の桁揃え
  10. break文 - ループから抜ける

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