주요 콘텐츠

디버그 중 값 검토하기

R2021b 이후. 다음을 대체: Examine Value While Debugging (R2021a).

코드 파일을 디버그할 때, MATLAB®이 일시 중지되어 있는 동안 현재 작업 공간에 있는 모든 변수의 값을 볼 수 있습니다. 코드 라인이 예상된 결과를 생성하는지 여부를 확인하려는 경우 값을 검토하면 유용합니다. 예상된 결과가 생성된 경우 코드 실행을 계속하거나 다음 라인으로 이동할 수 있습니다. 예상된 결과가 생성되지 않은 경우 해당 라인 또는 이전 라인에 오류가 있을 수 있습니다.

변수 값 검토하기

디버그하는 중 다음과 같은 여러 방법으로 변수 값을 검토할 수 있습니다.

  • 작업 공간 패널 — 작업 공간 패널에 현재 작업 공간에 있는 모든 변수가 표시됩니다. 작업 공간 패널의 열에는 변수의 현재 값이 표시됩니다. 추가 세부 정보를 보려면 변수를 더블 클릭하십시오. 변수 편집기가 열리고 해당 변수에 대한 내용이 표시됩니다. 변수 편집기에서 변수를 여는 데는 openvar 함수를 사용할 수도 있습니다.

    Workspace panel showing two variables, n and x, with the current value for each variable displayed in the Value column

  • 편집기 및 라이브 편집기 — 편집기 및 라이브 편집기에서 변수 값을 보려면 커서를 변수 위에 놓으십시오. 데이터팁에 현재 변수 값이 표시됩니다. 커서를 이동할 때까지 데이터팁이 표시된 상태로 유지됩니다. 데이터팁을 표시하는 데 어려움이 있는 경우 변수가 포함된 라인을 클릭한 후 변수 옆으로 포인터를 이동합니다.

    편집기에서 디버그할 때는 항상 데이터팁이 활성화되어 있습니다. 라이브 편집기에서 데이터팁을 비활성화하려면 또는 편집기에서 파일을 편집하는 경우 보기 탭으로 이동하여 데이터팁 버튼을 클릭하여 끄십시오.

    Script with a data tip showing the value of the variable n

    편집기 및 라이브 편집기에서 변수 또는 방정식을 선택하고, 마우스 오른쪽 버튼을 클릭한 후 명령 창에서 선택 항목 실행을 선택하여 변수 또는 방정식의 값을 볼 수도 있습니다. MATLAB은 명령 창에 변수 또는 방정식의 값을 표시합니다.

    참고

    MATLAB이 작업을 수행하는 동안에는(예: 파일 실행) 선택 항목을 실행할 수 없습니다.

  • 명령 창 — 명령 창에서 변수 값을 검토하려면 변수 이름을 입력하십시오. 예를 들어, 변수 n의 값을 보려면 n을 입력하고 Enter를 누르십시오. 명령 창에 변수 이름과 해당 값이 표시됩니다. 현재 작업 공간에 있는 변수를 모두 보려면 who 함수를 호출하십시오.

현재 작업 공간 외부에 있는 변수 값 보기

함수를 디버깅하거나 호출된 함수 또는 호출된 파일로 이동하면 디버거 패널은 함수 호출 스택 섹션의 현재 라인에서 일시 중지되기 전까지 실행한 함수 목록을 표시합니다. 함수 호출 스택이라고도 하는 이 목록은 MATLAB이 일시 중지된 현재 스크립트나 함수부터 처음 호출된 스크립트나 함수까지 목록의 위에서 아래로 순서대로 함수를 표시합니다. (R2025a 이후)

열려 있지 않은 디버거 패널을 열려면 편집기 탭이나 라이브 편집기 탭으로 이동한 후 분석 섹션에서 디버거를 클릭합니다. 사이드바의 패널 더 열기 버튼 을 사용하여 패널을 열 수도 있습니다.

Debugger panel with the Function call stack section showing that the debugger is paused at line 3 of plotRand.m

R2025a 이전: 함수 호출 스택은 파일 상단에 표시되며 이 목록에는 함수가 순서대로 표시됩니다. 다시 말해, 처음 호출된 스크립트나 함수부터 MATLAB이 일시 중지된 현재 스크립트나 함수까지 왼쪽에서 오른쪽 방향으로 표시됩니다.

dbstack 함수를 사용하여 명령 창에서 현재 작업 공간을 볼 수도 있습니다.

dbstack
> In mean (line 48)
In plotRand (line 5)

함수 호출 스택 내의 각 함수마다 이에 대응하는 작업 공간이 있습니다. 작업 공간에는 MATLAB 내에서 생성한 변수, 또는 데이터 파일이나 다른 프로그램에서 가져온 변수가 있습니다. 명령 창을 통해 할당된 변수나 스크립트를 사용하여 생성된 변수는 기본 작업 공간에 속합니다. 함수에서 생성된 변수는 그 함수 고유의 작업 공간에 속합니다. 현재 작업 공간의 외부에 있는 변수 값을 검토하려면 디버거 패널 함수 호출 스택 섹션에서 해당 함수를 선택하십시오.

명령 창에서 dbup 함수와 dbdown 함수를 사용하여 함수 호출 스택의 이전 작업 공간이나 다음 작업 공간을 선택할 수도 있습니다. 현재 작업 공간의 변수를 나열하려면 who 또는 whos 함수를 사용하십시오.

MATLAB이 변수를 덮어쓰는 도중에 다른 작업 공간에서 이 변수의 값을 보려고 하면 MATLAB이 명령 창에 오류를 표시합니다.

K>> x
Variable "x" is inaccessible. When a variable appears on both sides of an assignment
statement, the variable may become temporarily unavailable during processing. 
작업 공간을 선택할 때 함수 호출 스택의 오른쪽에 있는 드롭다운 목록을 사용하든지 아니면 dbup 명령을 사용하든지 상관없이 오류가 발생할 수 있습니다.

참고 항목

도움말 항목