[c++] 다양한 디버깅 명령어와 옵션
디버깅은 코드에서 버그를 찾고 해결하는 과정입니다. C++에서는 여러 가지 디버깅 명령어와 옵션을 사용하여 효과적으로 디버깅할 수 있습니다. 여기에서는 주요한 디버깅 명령어와 옵션 몇 가지를 살펴보겠습니다.
1. Breakpoint 활용
1-1. Breakpoint 설정과 제거
코드 실행 중 원하는 위치에 breakpoint를 설정하려면 break
명령어와 함께 함수나 라인 번호를 지정합니다.
break MyClass::MyFunction // MyClass의 MyFunction에 breakpoint 설정
break 20 // 20번 라인에 breakpoint 설정
Breakpoint 제거는 delete
명령어를 사용합니다.
delete 1 // ID가 1인 breakpoint 제거
1-2. 조건부 Breakpoint
특정 조건이 충족될 때만 breakpoint가 동작하도록 설정할 수 있습니다.
break 15 if x == 0 // x가 0일 때 15번 라인에 breakpoint 설정
2. 변수 및 메모리 확인
2-1. 변수 값 확인
변수의 현재 값을 확인하기 위해서는 print
또는 p
명령어를 사용합니다.
p x // 변수 x의 값 출력
2-2. 메모리 확인
메모리 주소의 내용을 확인할 때는 x
명령어를 사용합니다.
x/16xb &variable // variable의 주소로부터 16바이트를 16진수로 출력
3. 프로그램 제어
3-1. 다음 줄로 이동
다음 줄로 이동하는 명령어는 next
또는 n
입니다.
next // 다음 줄로 이동
3-2. 함수 내부로 들어가기
함수 내부로 들어가려면 step
또는 s
명령어를 사용합니다.
step // 함수 내부로 이동
이 외에도 C++ 디버거에는 다양한 명령어와 옵션이 제공됩니다. 이러한 디버깅 도구를 효과적으로 활용하여 코드의 버그를 찾아내고 해결할 수 있습니다.