【C言語】int型、float型、double型、char型の範囲(下限と上限)を求めるプログラム

それぞれの範囲(下限と上限)の表

どうも! 高杉 皆為(@MinatameT)です。

この記事では、int型、float型、double型、char型の範囲(下限と上限)を求める方法を紹介します。変数はすべて「符号付き」です。

まずは、求めた結果を表にまとめます。

変数の型下限上限
int-21474836482147483647
float1.175494*10^(-38)3.402823*10^(38)
double2.225074*10^(-308)1.797693*10^(308)
char-128127

コンパイラーによって結果が変わるそうなのですが、私の使用しているコンパイラーでの結果は上の表のとおりです。

掛け算の記号は「*」、累乗の記号は「^」で表しています。

それでは、上の表の値を求めたプログラムを紹介します。

それぞれの範囲(下限と上限)を求めるプログラム

ソースコード

#include<stdio.h>
#include<limits.h>
#include<float.h>

int main(void)
{
  int IntMax;
  int IntMin;
  float FloatMax;
  float FloatMin;
  double DoubleMax;
  double DoubleMin;
  char CharMax;
  char CharMin;

  IntMax = INT_MAX;
  IntMin = INT_MIN;
  FloatMax = FLT_MAX;
  FloatMin = FLT_MIN;
  DoubleMax = DBL_MAX;
  DoubleMin = DBL_MIN;
  CharMax = CHAR_MAX;
  CharMin = CHAR_MIN;

  printf("int型の上限 = %d\n",IntMax);
  printf("int型の下限 = %d\n",IntMin);
  printf("float型の上限 = %e\n",FloatMax);
  printf("float型の下限 = %e\n",FloatMin);
  printf("double型の上限 = %e\n",DoubleMax);
  printf("double型の下限 = %e\n",DoubleMin);
  printf("char型の上限 = %d\n",CharMax);
  printf("char型の下限 = %d\n",CharMin);

  return(0);
}

下限と上限を求めるためには、#include<stdio.h>に続いて、次の2行が必要です。忘れないようにしましょう。

#include<limits.h>
#include<float.h>

実行結果の例

int型の上限 = 2147483647
int型の下限 = -2147483648
float型の上限 = 3.402823e+38
float型の下限 = 1.175494e-38
double型の上限 = 1.797693e+308
double型の下限 = 2.225074e-308
char型の上限 = 127
char型の下限 = -128

eは「*10^」という意味ですので、例えば、e+38なら「*10^38(掛ける10の38乗)」になります。

前述のとおり、コンパイラーによって結果が変わるようなので、上記の結果と多少は違っていてもOKです。

今回はここまでです。皆さん、お疲れ様でした。


 

みなためじゃんけん

 

このコーナーは、私と擬似的にじゃんけんできるコーナーです。

みなためじゃんけん、じゃんけんぽん!

 

私が出したのは……





 

チョキでした! グーの勝利です!



この記事をSNSでシェアする

プログラミングカテゴリーの最新記事(5件)

最新記事(10件)

管理人のTwitter

内部リンク集