Aracılığıyla paylaş


_rpt, _rptf, _rptw, _rptfw makrolar

Hata ayıklama raporu (yalnızca hata ayıklama sürümü) üreterek bir uygulamanın ilerlemesini izler. Dikkat edin n fonksiyonundaki bağımsız değişkenlerin sayısını belirtir args ve 0, 1, 2, 3, 4 veya 5 olabilir.

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

Parametreler

  • reportType
    Report type: _CRT_WARN, _CRT_ERROR, or _CRT_ASSERT.

  • format
    Denetim Biçimlendir kullanıcı iletiyi oluşturmak için kullanılan bir dize.

  • args
    Alternatifi bağımsız değişkenleri olarak kullanılan format.

Notlar

Bu makroları ele reportTypeve formatparametreleri. Buna ek olarak, bunlar en çok dört ek bağımsız değişkenler, makro adına eklenen numarasına göre değeriyle de alabilir. For example, _RPT0 and _RPTF0 take no additional arguments, _RPT1 and _RPTF1 take arg1, _RPT2 and _RPTF2 take arg1 and arg2, and so on.

_RPT Ve _RPTF makrolar benzer printf çalışması nedeniyle hata ayıklama işlemi sırasında bir uygulamanın ilerlemeyi izlemek için kullanılabilir. Ancak, bu makroları daha esnektir printf içine alınması gerekmez çünkü #ifdef bunları önlemek için ifadeleri adlı bir uygulama perakende yapısında. Bu esneklik kullanılarak elde _debug makro; _RPT ve _RPTF makrolar yalnızca kullanılabilir ne zaman _DEBUG bayrağı tanımlanır. Zaman _DEBUG olan tanımlı değil, bu makroları aramaları ön-işleme sırasında kaldırılır.

_RPTW Ve _RPTFW bu makroları geniş karakter sürümleri makroların. Gibi olduklarını wprintf ve geniş karakter dizeleri bağımsız olarak alır.

_RPT Makrolar çağrısı _CrtDbgReport bir kullanıcı iletiyi bir hata ayıklama raporu oluşturmak için işlev. _RPTW Makrolar çağrısı _CrtDbgReportW geniş karakterlerle aynı raporu oluşturmak için işlev. _RPTF Ve _RPTFW Makrolar nerede raporu makro çağrıldı, ayrıca kullanıcı iletisi kaynak dosyası ve satır numarası ile bir hata ayıklama raporu oluşturabilirsiniz. Kullanıcı iletiyi getirilmesiyle oluşturulan argn bağımsız değişkenleriyleformat dizesi tarafından tanımlanan aynı kuralları kullanarak printf işlevi.

_CrtDbgReportveya _CrtDbgReportW hata ayıklama raporu oluşturur ve dosya için tanımlanan ve geçerli rapor modları üzerinde temel hedefleri belirler reportType. _CrtSetReportMode ve _CrtSetReportFile işlevleri, her rapor türü için hedefleri tanımlamak için kullanılır.

Bir _RPT makro olarak adlandırılır ve ne _CrtSetReportMode ne de _CrtSetReportFile kaldırıldı olarak adlandırılan, iletileri aşağıdaki gibi görüntülenir.

Rapor türü

Çıktı hedefi

_CRT_WARN

Uyarı metni görüntülenmez.

_CRT_ERROR

Açılır pencere. Aynı şekilde, _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_WNDW); belirtilen.

_CRT_ASSERT

_CRT_ERROR ürünüyle aynı.

Ne zaman bir hata ayıklama iletisi penceresi hedef olan ve kullanıcının seçtiği yeniden düğmesini, _CrtDbgReport veya _CrtDbgReportW just-in-time (JIT) hata ayıklama etkin koşuluyla, bu makroları hata ayıklayıcısını başlatma neden 1 döndürür. Bir hata ayıklama hata işleme mekanizması olarak bu makroları kullanma hakkında daha fazla bilgi için bkz: Makro kullanarak doğrulama ve raporlama için.

Hata ayıklama raporu oluşturmak iki makro yok. _assert makro ancak, ifade bağımsız değişkenini yanlış olduğunda yalnızca bir rapor oluşturur. _asserte tam olarak benzer olduğu _ASSERT, ancak oluşturulan rapora başarısız ifade içerir.

Gereksinimler

Makro

Gerekli başlık

_RPTMakrolar

<crtdbg.h>

_RPTFMakrolar

<crtdbg.h>

_RPTWMakrolar

<crtdbg.h>

_RPTFWMakrolar

<crtdbg.h>

Daha fazla uyumluluk bilgileri için bkz: Uyumluluk giriş.

Kitaplıkları

Hata ayıklama sürümlerini c çalışma zamanı kitaplıkları yalnızca.

Bu makroların ve Crtdbg.h de dahil olmak üzere tarafından alınan rağmen bu makroları çalıştırma levler çağırması nedeniyle uygulama hata ayıklama kütüphanelerinden biri ile bağlanmanız gerekir.

Örnek

Örneğe bakın _assert konu.

.NET Framework Eşdeğeri

Yoktur. Standart c işlevi çağırmak için kullanmak PInvoke. Daha fazla bilgi için bkz: Platform Çağırma örnekleri.

Ayrıca bkz.

Başvuru

Yordamlar hata ayıklama