디버그 모드 보기
Debug 모드에서는 디버깅 중에 애플리케이션의 상태를 확인할 수 있습니다.

다음과 같은 다양한 방법으로 디버거를 활용할 수 있습니다:
- 실행 중인 애플리케이션을 중단합니다.
- 중단점을 설정할 수 있습니다.
- 애플리케이션을 한 줄씩 또는 한 명령어씩 단계별로 실행합니다.
- 호출 스택의 내용을 확인합니다.
- 로컬 및 전역 변수의 내용을 확인하고 수정할 수 있습니다.
- 디버깅 중인 애플리케이션의 레지스터 및 메모리 내용을 확인하고 수정합니다.
- 로드된 공유 라이브러리 목록을 확인합니다.
- 코드 섹션을 디스어셈블합니다.
다음 표는 ‘ Debug ’ 모드의 보기를 요약하고, 자세한 정보를 확인할 수 있는 링크를 제공합니다.
| 보기 | 목적 | 자세히 알아보기 |
|---|---|---|
| 스택 | 현재 위치로 이어지는 중첩된 함수 호출을 호출 스택 추적 형태로 확인합니다. | 호출 스택 추적 보기 |
| 중단점 사전 설정 중단점 | 조건이 포함된 중단점을 설정하여 애플리케이션을 제어된 방식으로 중지시킬 수 있습니다. 감시점은 표현식의 값이 변경될 때 애플리케이션을 중지시킵니다. | 중단점 설정 |
| 스레드 | 스레드 간 전환. | 스레드 보기 |
| 모듈 | 애플리케이션에 포함된 모듈에 대한 정보를 확인합니다. | 모듈 보기 |
| 소스 파일 | 프로젝트에 포함된 소스 파일 목록을 확인합니다. | 소스 파일 보기 |
| 로컬 변수 | 최상위 스택 프레임에 있는 함수의 매개변수 및 지역 변수에 대한 정보를 확인합니다. | 로컬 변수 및 함수 매개변수 |
| 식 | 산술 표현식 또는 함수 호출의 값을 계산합니다. | 식 평가 |
| 레지스터 | CPU 레지스터의 현재 상태를 확인하여 기계 수준에서 애플리케이션을 분석합니다. | 레지스터 상태 확인 및 편집 |
| 주변기기 레지스터 | 주변 장치 레지스터의 현재 상태를 확인합니다. | 주변기기 레지스터 |
| 전역 디버거 로그 디버거 로그 | 디버거가 작동하지 않는 원인을 파악하기 위해 디버그 출력을 확인합니다. 로그 뷰는 콘솔 역할을 하므로, 로그에서 텍스트 커서가 위치한 줄의 내용을 디버거로 직접 전송할 수 있습니다. | 디버거 문제 해결 |
| 디스어셈블러 | 현재 함수에 대한 디어셈블된 코드를 확인합니다. | 디스어셈블된 코드 보기 |
| 편집기 | 현재 소스 파일을 텍스트 편집기에서 열어 수정합니다. | 코드 편집 |
참고: 디버깅 중에만 ‘ Views ’ 메뉴에 일부 뷰가 표시됩니다.
디버그 뷰 관리
디버깅을 수행하지 않을 때, ‘ Debug ’ 모드는 ‘ Debugger Preset ’ 관점을 표시합니다:

디버깅 중에는 C++ 또는 QML 애플리케이션을 디버깅하는 데 일반적으로 필요한 뷰가 표시됩니다. 다른 뷰를 표시하거나 숨기려면 ‘ Views ’로 이동하십시오.
Qt Creator 의 뷰를 화면상의 새로운 위치로 드래그할 수 있습니다. Qt Creator 는 향후 세션을 위해 뷰의 크기와 위치를 관점(perspective)으로 저장합니다. 뷰를 원래 크기와 위치로 재설정하려면 View > Views > Reset to Default Layout 를 선택하십시오.
뷰에서 열을 표시하거나 숨기려면 컨텍스트 메뉴에서 ‘ Show Column ’을 선택하여 토글하십시오.
디버그 뷰 사용자 지정
디버그 뷰의 모양과 동작을 변경하려면 ‘ Preferences ’ > ‘ Debugger ’ > ‘ General ’에서 환경 설정을 지정하십시오.

예를 들어, 다음과 같은 설정이 가능합니다:
- 디버그 뷰에서 행 색상을 번갈아 가며 표시할 수 있습니다.
- 메인 편집기의 글꼴 크기 변경 사항을 적용할 수 있습니다.
- 디버깅 중에 메인 편집기에 툴팁을 표시할 수 있습니다.
- 디버거가 종료될 때 임시 소스 및 메모리 뷰를 닫고 이전에 사용하던 Qt Creator 모드로 전환합니다.
- 디버깅 중인 애플리케이션이 중단되면 ‘ Qt Creator ’을 전경으로 가져올 수 있습니다.
Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.