こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

変数の宣言について

変数の宣言のことなんですけど,何個ぐらい宣言できるのでしょうか?相当な数を宣言するとメモリ不足になってしまうそうで・・・。これから作ろうとしているプログラムは変数を相当数(それこそ万単位)なもので。ご回答の方,よろしくお願いします。

投稿日時 - 2002-07-10 10:57:04

QNo.310724

困ってます

質問者が選んだベストアンサー

多次元配列のサイズを計算してみましょう。
型のサイズ(Integerなら2byte)に各次元の要素数を掛けた値です。
Integerが一万個なら約20Kbyteです。
この程度でメモリを心配する必要はありませんね。

投稿日時 - 2002-07-10 15:55:26

ANo.6

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(6)

ANo.5

動的配列、つまり、ReDimで配列のサイズを定義するような作りにすれば、スタック上にメモリが確保されなくなるので大きな領域を確保することが可能です。

投稿日時 - 2002-07-10 15:39:48

ANo.4

> 何個ぐらい宣言できるのでしょうか?

これは、実行するマシンに依存するのでまちまちです。

まぁ、、それが回答なのですが、、
変数を動的に変更する方法で、使い回すわけにはいかないんですか?

多分、、慣れている人が書けば
数万もの宣言は必要ないと思いますよ。。?

アルゴリズムの変更方法を質問した方が早いと思います。

そのプログラムを立ち上げたら
他のソフト立ち上げられない程のプログラムを作ってみた。
というのは、、プログラマとしてどうでしょう。。?

投稿日時 - 2002-07-10 14:49:52

ANo.3

>宣言するのは配列で,多次元配列を使いたいんです。
>それを,「integer」で宣言して,計算結果を配列にいれ,
>Excelのグラフの等高線みたいなグラフを作図したいと考えています。

計算結果(データ保存)であれば、Excel(xls)ファイルに保存して
利用するようにすればいいと思いますよ。

グラフ利用なら、後々のことも考えてエクセルで検討するので如何でしょうか。

投稿日時 - 2002-07-10 14:17:47

ANo.2

配列でない変数を1万個も使うのですか。信じられない。
配列の要素が1万個になるかも知れないと言うことでは
ないですか。時系列的測定・観測値などではないのですか。
・むしろVBの親戚のVBAで処理を考えられたら。こちらは
65536行×256列のセルを理論的に使えるし、
メモリの利用も、最小限になるよう、(素人の方法でなく)理論に裏付けられた仕掛けがあると思う(推定)。
・CSVファイルのフィールドに記録し、バッチ処理をすれば
変数はそんなに要らないと推定する。
・処理をモジュールに分けられませんか。
・配列のメモリの解放も検討しては。
多分1万個のデータの具体例具体像を示したら、アドバイス
しようとする人がでるのでは。

投稿日時 - 2002-07-10 12:15:01

補足

宣言するのは配列で,多次元配列を使いたいんです。それを,「integer」で宣言して,計算結果を配列にいれ,Excelのグラフの等高線みたいなグラフを作図したいと考えています。また,計算上同じような配列をもう一組用意しなければならない状態なので・・・。もう少し勉強してみます。

投稿日時 - 2002-07-10 13:03:44

ANo.1

開発、実行環境のマシンでのメモリが何MBあるかわからないので、答えようがないのですが、
変数で確保するメモリの容量の合計はどのくらいになるのでしょうか?
その値とマシンのメモリの値を比較して考えてみればわかるのではないでしょうか?

あと、万単位の変数がすべて有効なままプログラムは実行されるのでしょうか?
そのときおりに使わない変数は開放していけばいいのではないでしょうか。

投稿日時 - 2002-07-10 11:12:00

あなたにオススメの質問