Debug Session

디버깅 세션은 재현 조건에서 수정 검증까지 좁혀 간다

브레이크포인트를 많이 찍기보다 어떤 상태를 확인할지 정하고, 한 단계씩 실행 흐름과 변수 값을 대조한다.

1

재현 고정

입력값, 빌드 구성, 실행 순서를 기록해 같은 문제를 다시 만든다.

2

디버그 빌드

-g, -O0, /Zi처럼 소스와 상태가 맞게 빌드한다.

3

멈출 위치

증상 직전, 의심 함수 입구, 조건이 바뀌는 줄에 중단점을 둔다.

4

상태 관찰

Locals, Watch, Call Stack, Memory 창으로 값과 호출 경로를 맞춘다.

5

수정 확인

같은 재현 조건으로 다시 실행해 결과와 주변 동작이 유지되는지 본다.

Step Over

현재 줄 결과만 볼 때

함수 내부가 의심스럽지 않으면 한 줄 실행 후 변수 변화를 확인한다.

Step Into

호출 내부가 의심될 때

calculate_sum처럼 결과를 만드는 함수 안으로 들어간다.

Step Out

현재 함수는 확인됐을 때

호출자로 돌아가 반환값이 어디서 잘못 쓰이는지 이어서 본다.

Run to Cursor

반복을 건너뛸 때

이미 확인한 구간은 지나가고 다음 관찰 지점에서 멈춘다.