質問: c言語で巨大配列を作るにはどうすれば良いのでしょうか? c言語で巨大配列を作るにはどうすれば良いのでしょうか? テストで作ってみた配列を用いたプログラムが動かなかったので(コンパイルは正常)、なんでだろうと思って調べてみると、巨大な配列はcalloc関数等を用いて作る必要があると知りました。 しかし正直解説サイトを見てもよく意味が分かりませんでした...。 例えばa[1000][1000][1000]の様な配列は、どの様に作ればいいのでしょうか? a[x][y][z]みたいに表現して、aを変えて同じ様な配列を8個ほど作りたいです。 初心者なので勉強不足かも知れませんが、どうぞ宜しくお願い致します。
回答: ずいぶんメモリを使う処理なんですね(^^; メモリ上で処理しきれない場合は、一度dbなりファイルなりに 吐き出して、それを処理する形にするしかないと思いますよ。 例を拝見する限りでは、扱いたいのは固定長配列という事 なのですよね?ならばいっその事、単純なbyte配列にして、 後はロジック側で対応するのも一案です。固定長ならば、 その処理も簡単ですので。あえて配列にする必要はないと 思いますし、byte配列の方がファイルに吐き出した時に 扱いが楽......かも? もし自分ならばそう作っちゃいます。 ですが、これだと質問に対する答えでなく代替案ですよね。 もし配列にこだわる必要があるならスミマセン。