みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

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

解決済みの質問

【VC++6.0(MFC)】スタックメモリサイズの変更方法

いつも大変お世話になっております。
VC++初心者です。

スタックメモリサイズがデフォルトで1Mが設定されているようですが、
それを確認、及び、変更する方法を教えていただけませんでしょうか。
(具体的には、1.0Mから0.5Mにしたいです。)

ちなみに、某サイトで
「プロジェクトのプロパティ→リンカ→システム→スタックのサイズの設定」
で変更可能であるとあったのですが、「プロジェクトのプロパティ」が何を指すのか分かりませんでした。
お手数ですが、よろしくお願いします。

投稿日時 - 2009-09-30 11:33:15

QNo.5330517

困ってます

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

それはおそらくVS2002以降の場合ですね。
VC++6.0では、プロジェクト(メニュー)→設定→リンク(タブ)→アウトプット(ドロップダウンリストボックス)→スタックアロケーション→予約がスタックサイズです。
Debug、Release個別に設定できますので注意してください。

リンカのデフォルト値が使われるので、1MBかどうかの確認はできません。
ですが、普通にVC++のリンカを使っていれば1MBです。
http://msdn.microsoft.com/ja-jp/library/8cxs58a6.aspx

投稿日時 - 2009-09-30 12:16:45

補足

早速のご回答、ありがとうございます。

確認できました。
教えて頂いたMSDNを見ますと、「スタックのサイズをバイト単位で
指定します」とありますから、私の場合、0.5Mにしたいので、
その「予約」欄に「500,000」を入力すればよいということでしょうか。

投稿日時 - 2009-09-30 12:43:18

お礼

たびたび、すみません。

ヒープサイズの変更も教えていただけませんでしょうか。

投稿日時 - 2009-09-30 15:09:13

ANo.1

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

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

回答(3)

ANo.3

jgk

メモリの場合、1MB=1024 * 1024の場合がほとんどですので、
デフォルトの半分という意味なら、524288ですね。
もちろん、500000でもかまいません、

ヒープサイズはVC++6.0はGUI上にないみたいなので、プロジェクトオプションに直接書き込むか、
ソースコードにてプラグマで設定ですね。
#pragma comment(linker, "/HEAP:??????")
http://msdn.microsoft.com/ja-jp/library/f90ybzkh.aspx

投稿日時 - 2009-09-30 16:07:30

補足

ご回答、ありがとうございます。

>メモリの場合、1MB=1024 * 1024の場合がほとんどですので、
>デフォルトの半分という意味なら、524288ですね。
厳密に言えば、ご指摘頂いた数値が正しいそうですね。

また、設定方法をご教授して頂き、ありがとうございました。

投稿日時 - 2009-10-01 11:50:35

ANo.2

zwi

色々試すのは良い事ですが、何でも聞くのはプログラマーとしての成長の阻害にしかなりません。
1.まず試してみる。
2.検索して調べてみる。
3.1と2を繰り返しても分からなかったら質問する。
ぐらいの気持ちがないと教えて君になってしまいますよ。

「ヒープサイズ 変更 VC++」で検索すれば出てきますので、そのぐらい検索しましょう。

投稿日時 - 2009-09-30 15:58:00

補足

ご回答、ありがとうございます。

ご指摘のとおり、もう少し調べてから質問させて頂きたいと思います。
MSDNで調べても、VC++6に対するVisual Studio 開発環境で設定する方法が
検索できなかったので、質問させていただきました。

投稿日時 - 2009-10-01 09:39:51

あなたにオススメの質問