#include <stdio.h> int main(int argc, char *argv[]) { puts("hello!"); }
$ gcc -Wall -O3 -o ./hello hello.c
$ gcc -Wall -O0 -g -o ./hello hello.c
$ gdb ./hello
(gdb) break main : ブレイクポイントを main 関数にする run : ブレイクポイントまで実行 next : ステップ実行 continue : ブレイクポイントの先を一気に実行 quit : デバッグを抜ける
list : ソースコードを表示 print : 変数の内容を表示 (print argc とか print argv[0] とかやるといい) whatis : 変数の型を表示 (whatis argc だと int whatis argv だと char**といったかんじで出る)