4、配列(テーブル)
① int su[4];
② float fsu[10];
③ char moji[5];
配列は、繰返し列に配置されたエリアです。変数名の後ろに付けた[]の中の数字が繰返し取られるエリアの数を指定しています。
1)①は、int(整数)を4回繰返しエリアを定義する(エリアを確保する。又はエリアを取る。)という意味です。
2)②は、float(浮動小数点)を10回繰返しエリアを定義するという意味です。
3)③は、char(文字)を5回繰返しエリアを定義する意味です。ただ、文字を繰り返すと文字列を格納するエリアに成ります。文字列を格納すると特別に文字列の終わりには、NULLが入ることになっています。この場合、4文字しか格納することはできません。
(1) 文字列の最後には、NULLを格納する。文字列の終わりを判別できないと文字列の最後が正しく表示されない。
(2) 文字列は繰返し数から1引いた。この場合、4しか格納することが出来ない。
*NULLは、全てのビットがゼロの文字です。
4)①の配列に数字を格納する例を示します。
su[0] = 1;
su[1] = 2;
su[2] = 3;
su[3] = 4;
suの変数名の後ろの[n]の中の数値は、配列のn番目を示します。
su[0] = 1;は、suの0番目に1を格納するという意味です。配列は、0番目から始まり、3番目で終わります。0、1、2、3と4つのエリアが確保されています。
5)①で初期値の編集の仕方を示します。
int su[4] = { 1, 2, 3, 4};
初期値は、{}の中に『, 』で区切り記述します。0番目から順に設定されます。
最後には、文の終わりの『;』(セミコロン)を付けるのを忘れないようにしましょう。
6)③で文字列の初期値の編集の仕方を示します。
char[5] = “abcd”;
(1) 文字列は「“」(2重リテラル)で囲みます。
(2) char[0]~char[4]にa, b, c, d、 NULLの文字が順に格納されます。
(3) 次と同じ意味に成ります。
char[5] = { ‘a’, ‘b’, ‘c’, ‘d’, ‘\0’};
‘\0’は、NULLのことで全てのビットが0の文字です。
7)配列の大きさの省略
初期値を設定すると第一の配列の大きさを省略できます。
int su[] = { 1, 2, 3, 4}; (4を省略)
char moji[] = “abcd”; (5を省略)
int su[][2] = { { 1, 2}, { 11. 21}, { 12, 22} }; (3を省略)