_RPT, _RPTF, _RPTW, _RPTFW (Macros)
y
div
eof
not
or
xor
TOC
Collapse the table of content
Expand the table of content
Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

_RPT, _RPTF, _RPTW, _RPTFW (Macros)

 

Realiza el seguimiento del progreso de una aplicación genera un informe de depuración (versión de depuración solo).  Observe que n especifica el número de argumentos en args y puede ser 0, 1, 2, 3, 4, 5.  


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

reportType

Informe tipo: _CRT_WARN, _CRT_ERROR, o _CRT_ASSERT.

format

Cadena de la Formato- CONTROL utilizada para crear el mensaje de usuario.

args

Argumentos de sustitución utilizados por format.

Todas estas macros toman los parámetrosde reportTypeyde format.  Además, también aceptan hasta cuatro argumentos adicionales, significados por el número anexado al nombre de la macro.  Por ejemplo, _RPT0 y _RPTF0 no toman ningún argumento adicional, _RPT1 y _RPTF1 toma arg1, _RPT2 y _RPTF2 toma arg1 y arg2, etc.  

Las macros de _RPT y de _RPTF son similares a la función de printf , porque se pueden utilizar para seguir el progreso de una aplicación durante el proceso de depuración.  Sin embargo, estas macros son más flexibles que printf porque no es necesario encerrar en las instrucciones de #ifdef para evitar que se muestran en una compilación comercial de una aplicación.  Esta flexibilidad se logra mediante la macro de _DEBUG ; las macros de _RPT y de _RPTF sólo están disponibles cuando se define la marca de _DEBUG .  Cuando _DEBUG no está definido, las llamadas a estas macros se quitan durante el preprocesamiento.  

Las macros de _RPTW y de _RPTFW son versiones de caracteres anchos de estas macros.  Son los wprintf y tome las cadenas de caracteres como argumentos.  

Las macros de _RPT llaman a la función de _CrtDbgReport para generar un informe de depuración con un mensaje de usuario.  Las macros de _RPTW llaman a la función de _CrtDbgReportW para generar el mismo informe con los caracteres anchos.  Las macros de _RPTF y de _RPTFW crean un informe de depuración con el archivo de código fuente y el número de línea donde la macro de informe se llamó, además del mensaje de usuario.  El mensaje de usuario crea sustituyendo los argumentos de arg[n] en la cadena de format , utilizando las mismas reglas definidas por la función de printf .  

_CrtDbgReport o _CrtDbgReportW genera el informe de depuración y determina los destinos basándose en los modos de informe y el archivo actuales definidos para reportType.  Las funciones de _CrtSetReportMode y de _CrtSetReportFile se utilizan para definir los destinos para cada tipo de informe.  

Si se llama a una macro de _RPT y no se ha llamado a _CrtSetReportMode ni _CrtSetReportFile , los mensajes se muestran como sigue.

Tipo de informe

Destino de salida

_CRT_WARN

El texto de advertencia no se muestra.

_CRT_ERROR

Una ventana emergente.  Igual que si _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_WNDW); se hubiera especificado.  

_CRT_ASSERT

Igual que _CRT_ERROR.

Cuando el destino es una ventana de mensajes de depuración y el usuario elija el botón de Reintentar , _CrtDbgReport o _CrtDbgReportW devuelve 1, haciendo que estas macros enciendan el depurador, siempre que está habilitada la depuración just-in-time de (JIT).  Para obtener más información sobre cómo utilizar estas macros como mecanismo de control de errores de la depuración, vea Utilizando las macros para comprobación e informes.  

Otras dos macros existen que generan un informe de depuración.  La macro de _ASSERT genera un informe, pero únicamente cuando el argumento de la expresión se evalúa como FALSE.   _ASSERTE es exactamente igual _ASSERT, pero incluye la expresión incorrectos en el informe generado.  

Requisitos

Macro

Encabezado necesario

macros de_RPT

<crtdbg.h>

macros de_RPTF

<crtdbg.h>

macros de_RPTW

<crtdbg.h>

macros de_RPTFW

<crtdbg.h>

Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.

Solo las versiones de depuración de las bibliotecas en tiempo de ejecución de C.

Aunque se trata de macros y son obtenidas incluye Crtdbg.h, la aplicación debe vincularse a una de las bibliotecas de depuración porque estas macros llaman a otras funciones en tiempo de ejecución.

Ejemplo

Vea el ejemplo del tema de _ASSERT .

Equivalente en .NET Framework

No es aplicable Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Mostrar:
© 2016 Microsoft