Condividi tramite


_CrtSetDebugFillThreshold

Recupera o modifica la soglia controllando il comportamento del riempimento del buffer nelle funzioni di debug.

size_t _CrtSetDebugFillThreshold(
   size_t _NewThreshold
);

Parametri

  • newThreshold
    Nuova soglia.

Valore restituito

La soglia precedente.

Note

Le versioni di debug delle funzioni di sicurezza avanzata CRT riempiono il buffer passato a queste con un carattere speciale (0xFD). Ciò consente di individuare i casi in cui la dimensione errata è stata passata alla funzione. Sfortunatamente, questo riduce anche le prestazioni. Per migliorare le prestazioni, utilizzare _CrtSetDebugFillThreshold per disabilitare il riempimento del buffer per i buffer più grandi della soglia. Una soglia di 0 lo disabiliterà per tutti i buffer.

La soglia predefinita è SIZE_T_MAX.

Segue un elenco delle funzioni coinvolte.

Requisiti

Routine

Intestazione obbligatoria

_CrtSetDebugFillThreshold

<crtdbg.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.

Librerie

Solo versioni di debug di Librerie di runtime C.

Esempio

// crt_crtsetdebugfillthreshold.cpp
// compile with: /MTd
#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
fd  ²
fd  ²
fd  ²
fd  ²
With buffer-filling off:
68  h
6f  o
77  w
64  d
79  y
00
00
00
00
00

Equivalente .NET Framework

Non applicabile. Per chiamare la funzione standard C, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di Invocazione della Piattaforma.

Vedere anche

Riferimenti

Routine di debug