![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.1ベストアンサー
- 回答日時:
データ量を増やしたら、ってあるけど
どういう方法なのかが書かれてないね。
読み込みデータ量の事?
それともプログラム自体で書いてある確保領域の事?
前者なら読み方を工夫するように書き換えないとだめ
後者なら………もう少しどうやってるのか明確に判らないと書きようがないけどメモリ確保を明示的にやらないとだめかも。
No.4
- 回答日時:
スタックサイズの変更は簡単だけど根本原因ではないかもしれないので実は後回しにした方がいいと思う. つまり, まずはプログラムを見直すべきでしょう.
・処理の本質としてそんなにスタックを必要とするのか, それともプログラムが腐っていてスタックを食いつぶしているのかを確認しましょう.
・本当にそれだけのデータが必要なのか, 実際にはそのデータのうちの一部だけでいいのかというのも重要な点となります.
・プログラムとしてどうしても大量のデータが必要で, 実行時にメモリを確保すればいいというのであれば STL を使ってメモリ管理を行うのが簡単.
本当にどうにもならないならしょうがないのでスタックサイズを変更することになります. スタックサイズの変更はコマンドラインのコンパイラなら cl /? で出てくるオプションの一覧から探してください. Visual Studio の統合環境でも, プロパティを見ればそのうち見つかるはず.
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_14.png?e8efa67)
No.3
- 回答日時:
参考URLにスタックサイズの変更方法が記載されています。
但し、このエラーの原因は、スタックサイズが原因のようには思われません。スタックサイズの変更は、通常、最後の手段であることをご理解下さい。
参考URL:http://msdn.microsoft.com/ja-jp/library/tdkhxaks …
この回答へのお礼
お礼日時:2008/11/12 16:21
auto 宣言した配列を関数の外において大域変数に直したらメモリ不足にならずに正常計算終了しました。ありがとうございました。C/C++ではメモリ管理がスタック管理(auto変数等局所変数宣言した領域)とヒープ管理(大域変数やmalloc、free、new、 deleteで確保したメモリ)に分かれていることを再確認しました。
No.2
- 回答日時:
古いVCは /Fスタックサイズ で調整できたと思います。
100バイトにしたければ
cl /F100
のように。
コマンドプロンプトから cl -?
で説明がでるはず。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 Native Accessのインストールが先に進みません 2 2022/09/14 13:34
- Outlook(アウトルック) outlookの送信エラーについて 1 2022/05/13 12:04
- C言語・C++・C# Microsoft Visual Studio Community 2019 タブキーが入力できない 1 2022/04/30 06:39
- Windows 10 Windows Updateの更新ができない場合に初期化 3 2023/01/18 20:00
- その他(コンピューター・テクノロジー) PC利用中に勝手に起動する窓を消し去る方法を教えて下さい。 1 2023/05/08 16:48
- Windows 10 Windows Updateが動作しません 7 2022/08/12 16:26
- プリンタ・スキャナー キャノンmp490プリンター【エラー番号5400】で【プリンタートラブルが発生しました。電源を入れ直 2 2023/07/24 17:45
- C言語・C++・C# PC画面を録画するプログラムでdllの読み込みエラー 1 2023/04/22 08:31
- Windows 10 簡単にシステムの復元できるようにするには 6 2023/08/04 08:02
- フリーソフト フリーソフト[フリーオンライン動画兼音声変換ソフト]縦長になってしまう 2 2022/07/11 08:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
H8マイコン スタック領域に...
-
printf / sprintf のスタック消...
-
最大スタックサイズを大きくす...
-
GCCで関数の引数が渡らない
-
VB.netでDLLを読み込んで実行す...
-
関数のプロローグとエピローグ...
-
Visual C++ 2008 オーバーフロ...
-
プログラムの規模を表す単位「k...
-
パソコンでインターネット接続...
-
ubuntuで デイスク/deb/loopと...
-
MoveNextの処理速度は?
-
コンパクションとガーベジコレ...
-
[ASP]If~Else If~End If 対 Case
-
ステップ数について
-
Native VLANの変更
-
ミキサの原理
-
サブネットマスクが255.255.255...
-
ネットワークアイコンが黄色三...
-
URLの中の「?=○○」の意味は?
-
ライン数とステップ数の違いに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ゆゆにゃ。
-
エラー?メッセージ
-
VB.netでDLLを読み込んで実行す...
-
printf / sprintf のスタック消...
-
スタック領域変更
-
関数のプロローグとエピローグ...
-
スタックフレームの消滅
-
逆ポーランド記法
-
マス目上の移動のアルゴリズム
-
_CRTIMPの意味は?
-
gccでスタックサイズを変更する...
-
再帰処理を非再帰処理に書き換...
-
最大スタックサイズを大きくす...
-
C言語・スタックを使用した逆...
-
C言語のリスト、スタック、キュ...
-
C言語での配列初期化について
-
情報処理の問題で理解ができま...
-
objective-c undo機能について
-
基本情報技術者のデータ構造あ...
-
再帰関数を使うとき、ソフトウ...
おすすめ情報