はじめまして。どうしてもよくわからないので教えてください。
sizeof演算子は変数のサイズを調べるとありますが、なぜ4や8になるのかわかりません。
#include <stdio.h>
int main(void)
{
int i1 = 1, i2 = 1000000000; // 0が9個
double d1 = 1, d2 = 999999.999999; // 9が6+6個
printf("i1のサイズ %d, i2のサイズ %d \n",
sizeof(i1), sizeof(i2));
printf("d1のサイズ %d, d2のサイズ %d \n",
sizeof(d1), sizeof(d2));
return 0;
}
上を実行すると
i1のサイズが4、i2が4、
d1のサイズが8、d2が8
になるのですが、なぜそうなるのかわかりません。文字数のサイズかと思ったのですが違うようですし、変数のサイズとはどういうものなんでしょうか?
sizeof演算子について
Re:sizeof演算子について
> 使用するメモリの容量ということは、型によって事前に決まっているのでしょうか?
型による、メモリ使用量というのは決まっています。
http://www.geocities.jp/ky_webid/c/010.html
ここをみて少し勉強してみてください。
勉強した上で、あらためてsizeofでサイズをはかると理解できるはずです。
型による、メモリ使用量というのは決まっています。
http://www.geocities.jp/ky_webid/c/010.html
ここをみて少し勉強してみてください。
勉強した上で、あらためてsizeofでサイズをはかると理解できるはずです。
Re:sizeof演算子について
ありがとうございます!
初めて見る内容だったので(省かれていたようです)、これなら理解できそうです。助かりました。
また何かあったらよろしくお願いします。
初めて見る内容だったので(省かれていたようです)、これなら理解できそうです。助かりました。
また何かあったらよろしくお願いします。