Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ruft den Schwellenwert ab, der das Verhalten beim Füllen von Puffern in Debugfunktionen steuert, oder ändert ihn.
Syntax
size_t _CrtSetDebugFillThreshold( size_t newThreshold );
Die Parameter
newThreshold
Neue Schwellenwertgröße in Bytes.
Rückgabewert
Der vorherige Schwellenwert.
Bemerkungen
Die Debugversionen einiger CRT-Funktionen mit erhöhter Sicherheit füllen den Puffer, der an sie übergeben wird, mit einem Sonderzeichen (0xFE). Dieses Füllzeichen hilft dabei, Fälle zu finden, in denen die falsche Größe an die Funktion übergeben wurde. Leider reduziert es auch die Leistung. Um die Leistung zu verbessern, deaktivieren Sie _CrtSetDebugFillThreshold
die Pufferfüllung für Puffer, die größer als der newThreshold
Schwellenwert sind. Der newThreshold
Wert 0 deaktiviert sie für alle Puffer.
Der Standardschwellenwert ist SIZE_T_MAX
.
Hier ist eine Liste der betroffenen Funktionen:
-
asctime_s
,_wasctime_s
-
_cgets_s
,_cgetws_s
-
ctime_s
, ,_ctime32_s
_ctime64_s
,_wctime_s
, ,_wctime32_s
_wctime64_s
_ecvt_s
_fcvt_s
_gcvt_s
-
_itoa_s
,_ltoa_s
,_ultoa_s
,_i64toa_s
,_ui64toa_s
, ,_itow_s
,_ultow_s
_ltow_s
,_i64tow_s
,_ui64tow_s
-
_makepath_s
,_wmakepath_s
-
_mbsnbcat_s
,_mbsnbcat_s_l
-
_mbsnbcpy_s
,_mbsnbcpy_s_l
-
_mbsnbset_s
,_mbsnbset_s_l
-
_mktemp_s
,_wmktemp_s
-
_splitpath_s
,_wsplitpath_s
-
strcat_s
,wcscat_s
,_mbscat_s
-
strcpy_s
,wcscpy_s
,_mbscpy_s
-
_strdate_s
,_wstrdate_s
-
strerror_s
, ,_strerror_s
_wcserror_s
__wcserror_s
-
_strlwr_s
, ,_strlwr_s_l
_mbslwr_s
,_mbslwr_s_l
, ,_wcslwr_s
_wcslwr_s_l
-
strncat_s
, ,_strncat_s_l
wcsncat_s
,_wcsncat_s_l
, ,_mbsncat_s
_mbsncat_s_l
-
strncpy_s
, ,_strncpy_s_l
wcsncpy_s
,_wcsncpy_s_l
, ,_mbsncpy_s
_mbsncpy_s_l
-
_strnset_s
, ,_strnset_s_l
_wcsnset_s
,_wcsnset_s_l
, ,_mbsnset_s
_mbsnset_s_l
-
_strset_s
, ,_strset_s_l
_wcsset_s
,_wcsset_s_l
, ,_mbsset_s
_mbsset_s_l
-
_strtime_s
,_wstrtime_s
-
_strupr_s
, ,_strupr_s_l
_mbsupr_s
,_mbsupr_s_l
, ,_wcsupr_s
_wcsupr_s_l
-
vsnprintf_s
,_vsnprintf_s
, ,_vsnwprintf_s
_vsnprintf_s_l
, _vsnwpr'intf_s_l
Anforderungen
Routine | Erforderlicher Header |
---|---|
_CrtSetDebugFillThreshold |
<crtdbg.h> |
Diese Funktion ist Microsoft-spezifisch. Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Bibliotheken
Debuggen Sie nur Versionen der C-Laufzeitbibliotheken .
Beispiel
// crt_crtsetdebugfillthreshold.c
// compile with: cl /MTd crt_crtsetdebugfillthreshold.c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <crtdbg.h>
void Clear( char buff[], size_t size )
{
for( int i=0; i<size; ++i )
buff[i] = 0;
}
void Print( char buff[], size_t size )
{
for( int i=0; i<size; ++i )
printf( "%02x %c\n", (unsigned char)buff[i], buff[i] );
}
int main( void )
{
char buff[10];
printf( "With buffer-filling on:\n" );
strcpy_s( buff, _countof(buff), "howdy" );
Print( buff, _countof(buff) );
_CrtSetDebugFillThreshold( 0 );
printf( "With buffer-filling off:\n" );
Clear( buff, _countof(buff) );
strcpy_s( buff, _countof(buff), "howdy" );
Print( buff, _countof(buff) );
}
With buffer-filling on:
68 h
6f o
77 w
64 d
79 y
00
fe ■
fe ■
fe ■
fe ■
With buffer-filling off:
68 h
6f o
77 w
64 d
79 y
00
00
00
00
00