C言語のプログラム実行イメージ (例:scanf()/printf())  
HDDからプロ  
グラムを取り出  
処理結果を  
HDDに保存  
メインメモリ  
ハードディスク  
CPU  
⑧処理結果を  
モニタに表示  
制御装置  
⑤⑦プログラム  
処理をCPUに  
伝達  
演算装置  
レジスタ  
キャッシュ  
PCI Express  
コントローラ  
メモリ  
コントローラ  
USB  
ドライバ  
CPU  
統合型GPU(チップセット)  
プログラム呼び出  
し命令  
⑥処理結果を  
メモリに格納  
HDDから取り出したぷtログラム  
をメモリ上に展開  
①キーボードで  
プログラム実行命令  
C言語のデータ型とサイズ  
メモリ上に展開された変数  
データ型  
データ型の名称  
バイト長 値の範囲  
メモリ上のイメージ  
型なし  
void  
void型  
文字列  
(unsigned) char  
(符号なし)文字型  
1
0~255  
signed char  
符号付き文字型  
符号なし短整数型  
(符号付)短整数型  
符号なし整数型  
1
2
2
4
4
-128~127  
アドレス  
数  
アドレス  
数  
整数型  
unsigned short int  
065535  
0x000A  
0x000B  
0x000C  
0x000D  
0x000E  
0x000F  
0x000A  
0x000B  
0x000C  
0x000D  
0x000E  
0x000F  
(
signed) short int  
unsigned int  
signed) int  
-3276832767  
04294967295  
-21474836482147483647  
char a  
‘あ’  
double a 122345  
(
(符号付き)整数型  
unsigned long int  
signed) long int  
符号なし長整数型  
4
4
04294967295  
(
(符号付)長整数型  
-21474836482147483647  
0x0010  
0x0011  
0x0012  
0x0013  
0x0014  
0x0015  
unsigned long long int 符号なし長長整数型  
8
018446744073709551615  
アドレス 変数  
(signed) long long int  
(符号付)長長整数型 8  
-9223372036854775808  
9223372036854775807  
0
0
0
0
0
0
x000A  
x000B  
x000C  
x000D  
x000E  
x000F  
浮動小数点型 float  
単精度浮動小数点型  
倍精度浮動小数点型  
4
8
最小の正の数1.175494e-38  
最大値3.402823e+38  
int a  
10  
double  
最小の正の数:2.225074e-  
3
08  
最大値1.797693e+308  
配列ではない変数  
例:配列ではない int  
ドレス  
数  
0
x000A  
x000B  
x000C  
x000D  
x000E  
x000F  
&
a
0
0
0
0
0
Int a  
1
先頭アドレス  
愛知県名古屋市  
名駅一丁目  
char[] の場合 (1次元配列)  
次元配列  
a = 平屋のアパート  
ドレス  
数  
0x000A  
0x000B  
0x000C  
0x000D  
0x000E  
0x000F  
a=〇〇団地の住=愛知県名古屋市  
駅一丁目  
a
char[] a a[0]  
a[1]  
‘あ’  
‘い’  
‘う’  
配列の場合の  
アドレス表記は  
a[2]  
&不要  
愛知県名古屋市  
名駅一丁目  
a[0]…〇  
名駅荘0号  
の住人  
a[1]…〇  
名駅荘1号  
の住人  
a[0]…名駅  
a[1]…〇〇  
名駅荘1号  
の枠  
a[2]…名駅  
2号室の  
0号室の  
次元配列  
a = 2階建て3部屋  
のアパート  
a[0][0]  
レジデンス名駅  
a[0][1]  
レジデンス名駅  
1階1号室  
a[0][2]  
レジデンス名駅  
1階2号室  
1階0号室  
アドレス 変数  
0
0
0
0
0
0
0
0
0
0
0
x000A  
a
x000B Int a[2][3] ‘あ’  
a[1][0]  
レジデンス名駅  
a[1][1]  
レジデンス名駅  
2階1号室  
a[1][2]  
レジデンス名駅  
2階2号室  
x000C a[0][1]  
x000D a[0][2]  
x000E a[1][0]  
x000F a[1][1]  
‘い’  
‘う’  
‘え’  
‘お’  
‘か’  
階0号室  
‘あ’  
階0号室 1階1号室  
の住人  
住人  
‘い’  
う’  
階2号室  
の住人  
x0010  
x0011  
x0012  
x0013  
x0014  
a[1][2]  
え’  
階0号室 2階1号室  
住人  
の住人  
‘お’  
’  
a = 愛知県名古屋市  
名駅一丁目 レジデ  
ンス名駅  
2階2号室  
の住人