はじめての C

Arrays and Pointers in C

いくつかの 注意点

1) 配列等式は、抽象的な データ型と それの 実行とを 結びつける 重要な ものです。

FORTRAN (や 他の言語) では、それは プログラマからは 「隠されて」いて、配列参照が なされるときに、コンパイラが 自動的に、いつでも その 必要とされる コードを 「移植する」のです。

2) より 多次元の 配列では、その 等式が ずっと 複雑になります。

いくつかの プログラミング言語では、その 次元 dimension に 対し、任意の 制限が 課せられていて、例えば FORTRAN では 最大が 7次元に なっています。

3) 注意するのは、配列等式では、カッコ ( ) を とり除く 分割法 distributed law (ちょうど、前の 例の 配列等式で、はじめの 2つの 説明での、算術演算を 計算したような) は 使わず、「反復的に iteratively」 計算するのが、より 効果的だと いうことです。 K&R 方式では、反復的に 作動しています。

これから、例えば 多等式を 反復演算する ホルネル公式の 1つが 連想されます。

a * x**2 + b * x + c = (a * x + b) * x + c

この 方法では、x の 乗数が とり除かれています。

4) 列 row の 数は、この 配列等式には 入ってきません。 また、要素の アドレスを 計算する 必要も ないのです。

その 理由は - ちょうど FORTRAN の assumed-size 配列のように - 2次元配列に 渡される ルーティンでは、最初の 次元を 指定する 必要が ないからです。