実現したいこと
スタックメモリの容量を知りたいです。
そこで、スタックオーバフローを意図的に起こす方法を教えてください。
プログラムを作って、実際に出力する場合とデバッグでエラーを起こす場合の両方知りたいです。
前提
C言語。
以下のプログラムに記述を加えて、スタックメモリの容量を知りたいです。
#include <stdio.h> int main(void){ char box[]; return 0; }
無限に再帰呼び出しするとか…。

それ以上の說明は不要だと思いますね
目的がよくわかりません。
スタックサイズは普通は設定内容を確認しますが (Linuxだとシェルコマンドの ulimit -s でKB単位の数値が出ます)、
スタックサイズ自体を知るのが目的じゃなくて、スタックオーバーフローを起こすのが目的ということでしょうか?
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13288534078
この辺のクラス違いとかいう気がして仕方がありませんけれど。
「C言語」の範囲ではスタックオーバーフローしたことを知るのは(大胆にオーバーフローして例外が発生したり壊滅的打撃を受けてクラッシュしたりした場合以外は)不可能と言っておけばいいんじゃないかしら。
もちろん、そういうことをシステムに問い合わせる関数があるなら別ですけれど。それなら環境を指定してもらわないと。
前提とするオペレーティングシステムは何ですか。それによって知る方法は変わることがあります。
返答はこのコメント欄に書くのではなく、質問文を編集して書いてください。

回答1件
あなたの回答
tips
プレビュー