Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Récupère ou modifie le seuil de contrôle du comportement de remplissage de la mémoire tampon dans les fonctions de débogage.
Syntaxe
size_t _CrtSetDebugFillThreshold( size_t newThreshold );
Paramètres
newThreshold
Nouvelle taille de seuil en octets.
Valeur retournée
Valeur de seuil précédente.
Remarques
Les versions de débogage de certaines fonctions CRT à sécurité renforcée remplissent la mémoire tampon qui leur est passée avec un caractère spécial (0xFE). Ce caractère de remplissage permet de rechercher les cas où une taille incorrecte a été passée à la fonction. Malheureusement, cela réduit également les performances. Pour améliorer les performances, utilisez _CrtSetDebugFillThreshold pour désactiver le remplissage de la mémoire tampon pour les tampons plus grands que le newThreshold seuil. La newThreshold valeur 0 le désactive pour tous les tampons.
Le seuil par défaut est SIZE_T_MAX.
Voici une liste des fonctions affectées :
-
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_ltow_s_ultow_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_vsnprintf_s_l, ,_vsnwprintf_s_vsnwprintf_s_l
Spécifications
| Routine | En-tête requis |
|---|---|
_CrtSetDebugFillThreshold |
<crtdbg.h> |
Cette fonction est spécifique à Microsoft. Pour plus d’informations sur la compatibilité, consultez Compatibility.
Bibliothèques
Déboguer uniquement les versions des bibliothèques d’exécution C .
Exemple :
// 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