メモリは一次元であると考えられているので、誰でも「多次元配列がメモリでどのように表されるか」を親切に伝える(そして説明する)ことができます。
前もって感謝します。
4074 次
2 に答える
1
言語の実装によって異なりますが、多くの場合、それらは行ごとに連続したメモリブロックとして表されます。私は自分のブログにそれについて書きました:
割り当てられた配列は、メモリの継続チャンクとしてヒープメモリに格納されます。2次元配列(上記の例と同じ)も同様に格納されます。配列の各行(インデックスx、0 – x、n)は一緒に格納されるため、x、yセルに到達するには、j +( i *幅)場所。
C ++で実装されているhoiw配列の詳細については、以下を参照してください 。C ++注:2次元配列のメモリレイアウト
私が見つけたプログラミング言語のほとんどは、多次元配列を格納するのと同様の方法を使用しています。
于 2011-08-16T06:40:42.940 に答える
0
多次元配列は、配列アドレス指定関数によって線形化され、多次元配列を1次元配列に変換します。この一次元配列はメモリに保存されます。
于 2014-03-10T08:57:19.793 に答える