다음을 통해 공유


_RPT, _RPTF, _RPTW, _RPTFW 매크로

(디버그 버전에만 해당) 디버그 보고서를 생성하여 응용 프로그램의 진행률을 추적합니다. args 에서 인수의 갯수 n 을 지정합니다. 0,1,2,3,4 또는 5가 될 수 있습니다.

_RPTn( 
   reportType,
   format,
...[args]
); 
_RPTFn( 
   reportType,
   format,
   [args]
); 
_RPTWn( 
   reportType,
   format 
   [args]
); 
_RPTFWn( 
   reportType,
   format 
   [args]
);

매개 변수

  • reportType
    Report type: _CRT_WARN, _CRT_ERROR, 또는 _CRT_ASSERT.

  • format
    사용자 메시지를 작성하는데 사용하는 컨트롤 서식 문자열입니다.

  • args
    format 사용 되는 대체 인수입니다.

설명

이러한 모든 매크로는 reportType와 format매개변수들을 받습니다. 또한, 매크로 이름에 추가 숫자를 넣어 표시하는 4개의 추가적인 인수들을 수행할 수 있습니다. 예를 들면, _RPT0_RPTF0 는 추가적인 인수를 받지 않지만, _RPT1_RPTF1 는 arg1 을 받고, _RPT2_RPTF2 는 arg1 와 arg2 역시 받습니다.

_RPT_RPTF 매크로는 디버깅 과정 동안 응용프로그램의 진행률을 추적하기 위해 사용될 수 있기 때문에 printf 와 유사합니다. 그러나, 이러한 매크로는 응용프로그램의 정식 빌드에서 호출됨으로 그들을 막기위해 #ifdef 문에서 묶을 필요가 없기 때문에, printf 보다 유연성을 갖고 있습니다. 이러한 유연성을 DEBUG 매크로를 사용하여 얻을 수 있습니다: _RPT_RPTF 매크로는 오직 _DEBUG 플래그가 정의되었을 때 이용할 수 있습니다. _DEBUG 가 정의되지 않았을 때, 이러한 매크로를 호출하면 전처리시기에 제거됩니다.

_RPTW_RPTFW 매크로는 이러한 매크로의 와이드 문자 벼전입니다. 이들은 wprintf 와 비슷하고 인수로써 와이드 문자열을 받습니다.

_RPT 매크로는 사용자 메시지와 함께 디버그 보고서를 생성하는 _CrtDbgReport 함수를 호출합니다. _RPTW 매크로는 와이드 문자들과 함께 가틍ㄴ 보고서를 생성하기 위해 _CrtDbgReportW 함수를 호출합니다. _RPTF_RPTFW 매크로는 추가적으로 사용자 메시지를 위해 보고서 매크로가 호출되는 곳에서 줄 번호와 소스 파일을 사용하여 디버그 보고서를 생성합니다. 사용자 메시지는 printf 함수로 정의된 동일한 규칙을 사용하여 대체된 arg[n] 인수들을 format 문자열로 하여 생성됩니다.

_CrtDbgReport_CrtDbgReportW 는 디버그 보고서를 생성하고 reportType 에 대해 정의된 파일과 현재 보고서 모드에 기반한 이것의 목적지를 결정합니다. _CrtSetReportMode_CrtSetReportFile 함수들은 각 보고서 형식에 대한 대상을 정의하기 위해 사용됩니다.

_RPT 매크로가 _CrtSetReportMode_CrtSetReportFile 가 호출되어지지 않고 호출된 경우, 메시지는 다음과 같이 표시됩니다.

보고 형식

출력 대상

_CRT_WARN

경고 텍스트는 표시 되지 않습니다.

_CRT_ERROR

팝업 창입니다. _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_WNDW); 이 지정된 것과 같이

_CRT_ASSERT

_CRT_ERROR와 동일합니다.

대상이 디버그 메시지창이고 사용자가 재시도 버튼을 선택할 때, _CrtDbgReport 또는 _CrtDbgReportW 이 1을 반환하고, 디버를 시작하기위해 이 매크로를 시작하며, 적시(JIT) 디버깅이 활성화됩니다. 디버깅 오류를 처리하는 메커니즘으로 이 매크로를 사용하는 것에 관한 자세한 내용은 확인과 보고에 대한 매크로 사용을 참고하세요.

다른 두 개의 매크로가 디버그 보고서를 생성하기위해 존재합니다. 오직 인수식이 FLASE일 때. _ASSERT 매크로가 보고서를 생성합니다. _ASSERTE 는 정확하게 _ASSERT 와 같지만, 생성된 보고서에서 발생된 오류를 포함합니다.

요구 사항

매크로

필수 헤더

_RPT 매크로

<crtdbg.h>

_RPTF 매크로

<crtdbg.h>

_RPTW 매크로

<crtdbg.h>

_RPTFW 매크로

<crtdbg.h>

호환성에 대한 자세한 내용은 소개 단원의 호환성 부분을 참조하십시오.

라이브러리

C 런타임 라이브러리 의 유일한 디버그 버전입니다.

비록 이러한 매크로는 Crtdbg.h를 포함하여 얻게되지만, 응용프로그램은 이 매크로가 다른 런타임 함수들을 호출하기 때문에 디버그 라이브러리들 중 하나를 사용하여 연결해야 합니다.

예제

_ASSERT 항목에서 이런 예제를 참조하세요.

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출하려면 PInvoke를 사용합니다. 자세한 내용은 플랫폼 호출 예제를 참조하십시오.

참고 항목

참조

디버그 루틴