配列はなぜ0から始まるのか?インデックスの考え方

最終更新日

配列を学び始めると、「なぜ最初の番号が1ではなく0なのか」でつまずくことがあります。これは単なる慣習ではなく、コンピュータがデータの位置を扱う考え方と関係しています。

この記事では、配列の基本イメージから、0番目という考え方、インデックスを読むときの注意点までを入門向けに整理します。

そもそもとしての配列とは

このお話を進める前に、そもそもとして「配列」とはどんな存在なのかをおさらいしておきましょう。配列を簡単に言えば、「データをまとめて格納しておく箱」のイメージです。

身近な例で考えると「引き出しの付いた棚」のように、まとめて複数のものをしまうものが配列です。

コンピュータ(もしくはプログラム)の世界では、「データを保持する」という考え方があり、「データをひとつ保持する」か、「データを複数保持する」かの違いで呼び方が異なるといったイメージで、配列の場合は複数保持する方に該当します。

コンピュータの世界ではなぜ配列が必要なのか?

コンピュータは「何かしらの補助」なしでは処理しているデータを覚えることができないわすれん帽な存在です。頭の回転は早いのに、すぐに自分は何をしてたんだっけ?となってしまいます。これらの問題を解決するために、「データを覚えることを補助」してくれる機能が準備されています。

この補助機能のことを「メモリ」と呼びます。配列は、このメモリにデータを読み書きすることで、データを忘れることなく処理を進めることができるのです。

少々遠回りな説明になっていますが、イメージとしては以上となります。

なぜ配列は0から始まるのか

それでは、前提となる配列とその仕組をなんとなくおさらいしたところで、本題となる「配列は0」から始まるというお話に進みたいと思います。

ざっくりと結論を述べると、以下のような理由からコンピュータの世界では配列は0から始まると言われています。

  • 配列はメモリの場所をではなく、データをしまった範囲で数える
  • 配列ではスタート地点のことを0という
  • 配列の数え方は「スタート地点」、「スタート地点の1つとなり」、「スタート地点から2つとなり」となる
  • 配列の数え方は「数」ではなく「距離」

これらの理由を先ほどの例えで説明した「引き出しの付いた棚」で改めてイメージしてみましょう。

例えば、洋服好きのあなたは、この棚に洋服をしまうことを決めました。そして、5段ある引き出しの、1段目には靴下やインナー、2段目にはズボン、残りはすべて大好きなTシャツをしまうことにしました。

まず、配列の考え方は、これらの洋服の種類毎にグループにします。今回は大好きなTシャツを対象に解説を進めます。Tシャツは棚の3段を使っています。この3段を配列として扱います。つぎのようなイメージとなります。

このような決まりごとから、配列は0から始まるという仕組みになっているのです。

シェアする