C言語入門|7章のまとめ

ここまで、本当にお疲れさまでした 😊
7章では、C言語における 配列 という大きなテーマに、じっくり向き合ってきました。

最初は、

「配列って、箱が並んでるだけでしょ?」

と思っていたかもしれません。
でも学習を進めるうちに、

  • 型の考え方
  • ループとの関係
  • 使ってはいけない操作
  • String型の正体

など、配列の奥深さを感じたはずです。

この「7章のまとめ」では、
配列とは何だったのか をもう一度整理しながら、
頭の中をスッキリさせていきましょう。

配列とは何だったのか

配列とは、

  • 同じ種類のデータ
  • 決まった順番
  • まとめて格納 できる

データ構造でした。

配列を構成する基本要素は、次の2つです。

用語意味
要素配列の中に並ぶ1つ1つの箱
添え字要素の位置を表す番号

添え字は 0から始まる という点が、とても重要でしたね。

要素数使える添え字
50 ~ 4
100 ~ 9

このルールは、C言語では絶対に外せません。

配列の準備と利用の流れ

配列を使うときの基本的な流れも、7章でしっかり学びました。

配列を使う手順

  1. 格納したいデータの型を決める。
  2. 必要な要素数を決める。
  3. 配列を宣言する。
  4. 添え字を使って要素にアクセスする。

配列の要素には、次の形でアクセスします。

配列名[添え字]

これは、
配列の何番目の箱を使うかを指定している
と考えると分かりやすいですね。

配列は宣言と同時に初期化できる

配列は、基本型の変数と同じように
宣言と同時に初期化 することもできました。

int scores[] = {70, 80, 90};

この書き方では、

  • 要素数は 3
  • 添え字は 0 ~ 2

という配列が自動的に用意されます。

初期化は、
配列の内容を一目で把握できる
とても便利な書き方でしたね。

配列の型は要素の型とは別物

7章の中でも、特に大切だった考え方が
配列の型 です。

int data[5];

このとき、

対象
dataint[5] 型
data[0]int 型

という関係になっていました。

配列全体は、

  • int 型
    ではなく
  • int[5] 型

という 配列型(集成体型) です。

この違いを意識できるようになったのは、
7章の大きな成果のひとつです。

配列の応用:世界が一気に広がった

7章の後半では、
配列をさらに発展させた使い方も学びました。

多次元配列

  • 配列の要素に、さらに配列を持たせる。
  • 表やマップのようなデータを扱える。

2次元配列は、

という2つの添え字で管理する、
表形式のデータ構造 でした。

構造体配列

さらに、

  • 配列の要素に
  • 構造体型を使う

という、実用的な形にも触れました。

これによって、

  • 1人分の情報
  • 1件分のデータ

を、
1要素としてまとめて管理 できるようになりました。

実務に近づいた感覚を得られた人も多いはずです。

配列型の注意点はとても重要

7章で何度も強調してきたのが、
配列型の注意点 でした。

配列は集成体型です。
そのため、次のような操作は 直接行えません

  • 表示
  • 計算
  • 比較
  • 代入

特に配列は、

  • コンパイルエラーにならない。
  • でも実行結果がおかしくなる。

というケースが多く、
注意が必要でした。

正しい考え方は「要素単位で扱う」

7章を通して、
何度も出てきた合言葉があります。

配列は、要素ごとに扱う

  • 表示したいなら、1要素ずつ表示する。
  • 計算したいなら、1要素ずつ計算する。
  • 比較したいなら、1要素ずつ比較する。

この考え方が身についたなら、
配列に関してはもう大きな一歩を踏み出しています。

String型の正体も見抜けるようになった

7章の終盤では、
String型の正体にも迫りました。

String型は、

  • 特別な型
    ではなく
  • char配列型の別名

でしたね。

これにより、

  • なぜ代入できないのか
  • なぜ比較できないのか
  • なぜ %s だけ表示できるのか

といった疑問が、
すべて配列のルールに結びついて理解できました。

7章を終えた今、見えている景色

7章を終えた今、
あなたはもう、

  • 配列を宣言できる。
  • ループで自在に扱える。
  • 危険な使い方を避けられる。
  • String型の正体を説明できる。

そんなレベルに到達しています。

配列は、
C言語の基礎でありながら、最初の関門 でもあります。

ここを乗り越えた経験は、
この先の学習で必ず大きな武器になります。

次へ進む前に

この章で学んだ内容は、
今後登場する

  • ポインタ
  • 関数
  • 動的メモリ

といった話題とも、
深くつながっていきます。

もし少しでも不安があれば、
7章をもう一度読み返してみてください。

「分かったつもり」が
「ちゃんと分かっている」に変わるはずです 😊