0
私の目標はstr_main
のアドレス空間を把握することですが、gdbはブレークポイントをスキップします。GDBブレークポイントが停止しない
住所の場所はどのようにして確認できますか?
私はシンプルなCプログラム、stack.c
持っている:私はしかし、行21にブレークポイントを設定し、GDBを入力すると、私は、デバッガを実行すると、私は次のメッセージを取得、
....
19 int main(int argc, char **argv[])
20 {
21 char str_main[517];
22 FILE *badfile;
23
24 badfile = fopen("badfile","r");
....
を:
Breakpoint 1, main(argc=1, argv=0xbffff3d4) at stack.c:24
24 badfile = fopen("badfile","r");
を
実際には、行22はコンパイルされたバイナリの実行可能な行ではありません。しかし、何が問題なのですか? 24行目で停止することは、あなたがしたいことを完全には大丈夫です。 22行目のデバッガで、24行目に表示されないことがわかると思いますか?つまり、問題はありません。 – kaylum