Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
int main(int ac, char *av[]) { printf("%d"); return 0; }
これがガベージを出力することはわかっていますが、gdbを使用してプログラムをトレースしてガベージ値を確認する方法は?
ブレークポイントを設定しprintf、次を使用してスタックを調べることができます$esp
printf
$esp
gdbガベージ値についてはわかりません。しかしprintf、あなたの場合、たまたまva_argsスタックから「未定義」(実際には「初期化されていない」、つまり以前のガベージを含む)値を取得(を使用)します。
gdb
va_args