Main Content

warning

경고 메시지 표시

설명

예제

warning(msg)는 경고 메시지를 표시하고 lastwarn 함수에 대한 경고 상태를 설정합니다. msg가 비어 있는 경우 warninglastwarn에 대한 경고 상태를 재설정하지만, 어떤 텍스트도 표시하지 않습니다.

warning(msg,A)는 MATLAB® sprintf 함수에 사용되는 것과 같이 형식 변환 문자를 포함하는 메시지를 표시합니다. msg의 각 변환 문자는 값 A 중 하나로 변환됩니다.

warning(warnID,___)는 경고 메시지에 경고 ID를 추가합니다. 위에 열거된 구문의 입력 인수 중 하나를 포함할 수 있습니다. 이 ID를 통해 경고를 구별하고 MATLAB에서 경고가 발생할 때 수행할 동작을 제어할 수 있습니다.

예제

warning(state)는 모든 경고의 상태를 활성화하거나 비활성화하거나 표시합니다.

warning(state,warnID)는 지정한 경고의 상태에 대해 작동합니다.

warning은 모든 경고의 상태를 표시합니다. 이것은 warning('query')와 동일합니다.

예제

warnStruct = warning은 어떤 경고가 활성화되고 비활성화되는지에 대한 정보가 포함된 구조체 또는 구조체의 배열을 반환합니다. warnStructwarnID 또는 'all'을 포함한 identifier 필드와 대응하는 경고의 상태를 나타내는 state 필드를 포함합니다.

warning(warnStruct)는 구조체 배열 warnStruct에 지시된 대로, 현재 경고 설정을 설정합니다.

예제

warning(state,mode)는 MATLAB이 스택 추적을 표시하는지, 아니면 경고에 대한 추가 정보를 표시하는지를 제어합니다.

warnStruct = warning(state,mode)mode를 포함하는 identifier 필드와 mode의 현재 상태를 포함하는 state 필드가 들어 있는 구조체를 반환합니다. 출력 구조체 warnStructwarning 함수로 전달하면 특정 경고가 활성화되거나 비활성화되는 게 아니라 mode의 상태가 설정됩니다.

예제

모두 축소

메시지를 표시하는 경고를 생성합니다.

n = 7;
if ~ischar(n)
   warning('Input must be a character vector')
end
Warning: Input must be a character vector

경고 메시지에 n에 대한 정보를 포함시킵니다.

if ~ischar(n)
   warning('Input must be a character vector, not a %s',class(n))
end
Warning: Input must be a character vector, not a double

경고 메시지에 경고 ID를 추가합니다.

if ~ischar(n)
   warning('MyComponent:incorrectType',...
       'Input must be a character vector, not a %s',class(n))
end
Warning: Input must be a character vector, not a double 

모든 경고를 비활성화합니다.

warning('off')

경고를 쿼리합니다.

warning
All warnings have the state 'off'.

모든 경고를 활성화하고, 특이 행렬 경고를 비활성화하고, 모든 경고를 쿼리합니다.

warning('on')
warning('off','MATLAB:singularMatrix')
warning
The default warning state is 'on'. Warnings not set to the default are

State  Warning Identifier

    off  MATLAB:singularMatrix

특이 행렬 경고를 다시 활성화합니다.

warning('on','MATLAB:singularMatrix')

모든 경고를 활성화한 다음, 특이 행렬 경고를 비활성화합니다.

warning('on')
warning('off','MATLAB:singularMatrix')

현재 경고 설정을 저장합니다.

s = warning
s = 

2x1 struct array with fields:

    identifier
    state

두 구조체를 살펴봅니다.

s(1)
ans = 

    identifier: 'all'
         state: 'on'
s(2)
ans = 

    identifier: 'MATLAB:singularMatrix'
         state: 'off'

'MATLAB:singularMatrix'를 제외한 모든 경고가 활성화됩니다.

모든 경고를 비활성화하고 쿼리합니다.

warning('off')
warning('query')
All warnings have the state 'off'.

저장된 경고 상태 구조체를 복원하고 상태를 쿼리합니다.

warning(s)
warning('query')
The default warning state is 'on'. Warnings not set to the default are

State  Warning Identifier

    off  MATLAB:singularMatrix

verbose 설정과 backtrace 설정을 디폴트 값이 되도록 합니다.

warning('off','verbose')
warning('on','backtrace')

모든 경고를 켜고, MATLAB 경로에 존재하지 않는 폴더를 제거합니다.

warning('on')
rmpath('nosuchfolder')
Warning: "nosuchfolder" not found in path. 
> In rmpath at 57 

확장된 경고 메시지를 표시하려면 세부 정보 표시를 활성화하십시오.

warning('on','verbose')
rmpath('nosuchfolder')
Warning: "nosuchfolder" not found in path.
(Type "warning off MATLAB:rmpath:DirNotFound" to suppress this warning.)
 
> In rmpath at 57 

스택 추적 표시를 비활성화합니다.

warning('off','backtrace')
rmpath('nosuchfolder')
Warning: "nosuchfolder" not found in path.
(Type "warning off MATLAB:rmpath:DirNotFound" to suppress this warning.)

특이 행렬을 계산합니다.

A = eye(2);
B = [3 6; 4 8];
C = B\A;
Warning: Matrix is singular to working precision.

경고 ID를 찾고, 현재 경고 상태를 저장하고, 특정 경고를 비활성화합니다.

[msgStr,warnId] = lastwarn;
warnStruct = warning('off',warnId);
C = B\A;

이전 경고 상태를 복원합니다.

warning(warnStruct);
C = B\A;
Warning: Matrix is singular to working precision.

입력 인수

모두 축소

경고 원인과 오류를 해결할 수 있는 방법에 대한 정보로, 문자형 벡터나 string형 스칼라로 지정됩니다. 메시지의 형식을 지정하려면 \t, \n 등의 이스케이프 시퀀스를 사용하십시오. sprintf 함수가 지원하는 형식 지정자(예: %s 또는 %d)를 사용할 수도 있습니다. A 입력 인수를 통해 변환 지정자의 값을 지정합니다. 자세한 내용은 텍스트 형식 지정하기 항목을 참조하십시오.

참고

MATLAB에서 경고 메시지에 포함된 특수 문자(예: \t, \n, %s, %d)를 변환하도록 하려면 warning에 두 개 이상의 입력 인수를 지정해야 합니다.

예: 'Input must be a character vector.'

msg의 변환 지정자를 대체하는 값으로, 문자형 벡터, string형 스칼라 또는 숫자형 스칼라로 지정됩니다.

경고에 대한 식별자로, 문자형 벡터, string형 스칼라, 'all' 또는 'last'로 지정됩니다. 경고 ID를 사용하여 프로그램 내에서 경고의 원인을 보다 효율적으로 식별하거나 선정한 경고 모음을 제어할 수 있습니다.

경고 ID에는 하나 이상의 component 필드와 mnemonic 필드가 포함됩니다. 필드는 콜론으로 구분되어야 합니다. 예를 들어, 구성요소 필드 component와 니모닉 필드 mnemonic을 갖는 경고 ID는 'component:mnemonic'으로 지정됩니다. 구성요소 필드와 니모닉 필드는 각각 영문자로 시작해야 합니다. 나머지 문자는 영숫자(A–Z, a–z, 0–9)나 밑줄일 수 있습니다. warnID는 공백 문자를 포함할 수 없습니다. 식별자를 생성하는 방법에 대한 자세한 내용은 MException을 참조하십시오.

경고의 state를 설정하는 경우 warnID의 값은 'all' 또는 'last'일 수 있습니다. 'all'을 사용하여 모든 경고의 상태를 설정하고, 'last'를 사용하여 마지막으로 발생한 경고의 상태를 설정합니다.

예: 'MATLAB:singularMatrix'

예: 'MATLAB:narginchk:notEnoughInputs'

경고 제어 표시자로, 'on', 'off' 또는 'query'로 지정됩니다. 'on' 또는 'off'를 사용하여 MATLAB이 경고를 발생시킬지 여부를 제어합니다. 경고의 현재 상태를 쿼리하려면 'query'를 사용하십시오.

경고 설정으로, 어떤 경고가 활성화되고 어떤 경고가 비활성화되는지에 대한 정보를 포함하는 구조체나 구조체의 배열로 지정됩니다. warnStructwarnID 또는 'all'을 포함하는 identifier 필드와 해당 경고의 상태를 나타내는 state 필드를 포함합니다.

설정의 세부 정보 표시와 스택 추적 표시로, 'backtrace' 또는 'verbose'로 지정됩니다. 기본적으로, 세부 정보 표시의 상태는 'off'로 설정되고 스택 추적 표시의 상태는 'on'으로 설정됩니다.

확장 기능

버전 내역

R2006a 이전에 개발됨