いろいろな型

type.png

型とは?

概念を具体的に表現したものである。

暗黙のint(使用非推奨)

unsigned だけ書いたら4byteの型になる。intと自動的に解釈されたのかな。

unsigned a;

各型のサイズ

項目 c++ java
boolean型 1bit 0,1 8bit(VMに依存)
char型 1byte -128~127 2byte 0~655351
unsigned char型 1byte 0~255 unsignedという修飾子は存在しない
byte型 1byte -128~127 1byte -128~127
short型 2byte -32768~32767 2byte -32768~32767
unsigned short型 2byte 0~65535 unsignedという修飾子は存在しない
int型 4byte -2147483648~2147483647 4byte(32bit)
long型 4byte(32bit) 8byte(64bit)
float型 4byte(32bit) 4byte(32bit)
double型 8byte(64bit) 8byte(64bit)
Objectの参照(アドレス) 4byte(32bit) 4byte(32bit)

このことからわかることは、double,longを置くぐらいだったらオブジェクト変数を入れた方が節約できる。
float,intを入れるのとオブジェクト変数を入れるのは同じコスト
ということだ
Primitive Data Types-The java tutorials

各型の最大値・最小値

C言語ならINT_MINなどを使うが、
C++ならば、
std::numeric_limits<T>::min()
とかを使うらしいよ。
これならテンプレート関数に対応できて便利!

#include <limits>

する必要がある。

c++ではlimits.hをインクルードする必要がある
浮動小数点を扱うときはfloat.hをインクルードする必要がある

項目 サイズ(byte)
byte 1
char 1
unsigned char 1
short型 2
unsigned short 2
int 4
unsigned int 4
long 8
unsigned long int 8
long long int 8
unsigned long long 8
float 4
double 8

サポートサイト Wikidot.com