Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Hata ayıklama yığınında ayrılan bellek bloklarının bütünlüğünü onaylar (yalnızca hata ayıklama sürümü).
Sözdizimi
int _CrtCheckMemory( void );
Dönüş değeri
Başarılı olursa döndürür _CrtCheckMemory TRUE; aksi takdirde işlevi döndürür FALSE.
Açıklamalar
işlevi, _CrtCheckMemory temel alınan temel yığını doğrulayarak ve her bellek bloğunu inceleyerek hata ayıklama yığını yöneticisi tarafından ayrılan belleği doğrular. Temel alınan temel yığında hata veya bellek tutarsızlığıyla karşılaşılırsa, hata ayıklama üst bilgisi bilgileri veya üzerine yazma arabellekleri, _CrtCheckMemory hata koşulunu açıklayan bilgiler içeren bir hata ayıklama raporu oluşturur. Tanımlanmadığında _DEBUG , çağrısı _CrtCheckMemory ön işleme sırasında kaldırılır.
işlevi kullanılarak _CrtSetDbgFlag bayrağın bit alanları _crtDbgFlag ayarlanarak davranışı _CrtCheckMemory denetlenebilir. Bit alanının AÇILMASI _CRTDBG_CHECK_ALWAYS_DF , her bellek ayırma işlemi istenildiğinde çağrılmasını sağlar _CrtCheckMemory . Bu yöntem yürütmeyi yavaşlatsa da, hataları hızla yakalamak için yararlıdır. Bit alanı KAPALI olarak kapatıldığında _CRTDBG_ALLOC_MEM_DF yığının doğrulanmaması ve hemen döndürülmesi TRUEneden olur_CrtCheckMemory.
Bu işlev veya FALSEdöndürdüğündenTRUE, temel hata ayıklama hata işleme mekanizması oluşturmak için makrolardan birine _ASSERT geçirilebilir. Aşağıdaki örnek yığında bozulma algılanırsa onay hatasına neden olur:
_ASSERTE( _CrtCheckMemory( ) );
Diğer hata ayıklama işlevleriyle nasıl _CrtCheckMemory kullanılabildiği hakkında daha fazla bilgi için bkz . Yığın durumu raporlama işlevleri. Bellek yönetimine ve hata ayıklama yığınına genel bakış için bkz . CRT hata ayıklama yığını ayrıntıları.
Gereksinimler
| Yordam | Gerekli başlık |
|---|---|
_CrtCheckMemory |
<crtdbg.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Kitaplıklar
Yalnızca C çalışma zamanı kitaplıklarının sürümlerinde hata ayıklama.
Örnek
nasıl kullanılacağına _CrtCheckMemoryilişkin bir örnek için bkz crt_dbg1. .