내가 자주 쓰는 gdb 명령어 모음 + 단축키 정리
내가 자주 쓰는 gdb 명령어 모음 + 단축키 정리
내가 자주 쓰는 gdb 명령어 모음 + 단축키 정리
gdb는 강력한 디버깅 도구지만, 명령어가 많아 처음엔 어렵게 느껴질 수 있습니다.
이 글에서는 제가 실무와 학습 중에 자주 사용하는 gdb 명령어와 단축키를 정리해 봤습니다.
필요할 때 빠르게 찾아보고 바로 쓸 수 있도록 구성했어요!
🛠️ 기본 디버깅 명령어
| 명령어 | 설명 |
|---|---|
run 또는 r | 프로그램 실행 |
break main 또는 b main | 브레이크포인트 설정 |
next 또는 n | 현재 줄 실행 후 다음 줄로 (함수 내부로 들어가지 않음) |
step 또는 s | 현재 줄 실행, 함수라면 내부로 진입 |
continue 또는 c | 다음 브레이크포인트까지 계속 실행 |
quit 또는 q | gdb 종료 |
🔍 코드 및 변수 확인
| 명령어 | 설명 |
|---|---|
list 또는 l | 현재 위치의 소스코드 출력 |
print var 또는 p var | 변수 값 출력 |
info locals | 지역 변수 목록 보기 |
info args | 함수 인자 보기 |
bt | backtrace — 호출 스택 보기 |
frame N | N번째 프레임으로 이동 |
up, down | 위/아래 스택 프레임으로 이동 |
💾 메모리 분석 명령어
| 명령어 | 설명 |
|---|---|
x/Nf addr | 주소에서 메모리 조회 (N은 개수, f는 포맷) |
예: x/4x &var | 16진수 4칸 출력 |
예: x/4d &var | 10진수 4칸 출력 |
set var varname = val | 변수 값 변경 |
🎯 조건부 브레이크포인트
(gdb) break func if var == 10
→ var == 10일 때만 멈추는 조건 브레이크포인트
📁 파일 관련
| 명령어 | 설명 |
|---|---|
file prog | 디버깅할 실행 파일 설정 |
core corefile | core 파일 불러오기 |
symbol-file a.out | 심볼 정보 따로 로드 |
🧠 유용한 단축키 요약
| 키 | 기능 |
|---|---|
Enter | 이전 명령 반복 실행 |
Ctrl + l | 화면 초기화 (clear screen) |
Ctrl + d | 종료 (quit과 동일) |
Ctrl + c | 현재 실행 중단 (pause) |
✅ 실전에서 자주 쓰는 조합
b main
r
n
n
p some_var
x/4x &some_var
bt
→ 한 번 익숙해지면 gdb는 C 디버깅에서 없어선 안 될 도구가 됩니다.
This post is licensed under CC BY 4.0 by the author.