Compartilhar via


_CrtSetDebugFillThreshold

Recupera ou altera o comportamento do buffer- preenchimento do controle de limite em funções de depuração.

size_t _CrtSetDebugFillThreshold(
   size_t _NewThreshold
);

Parâmetros

  • newThreshold
    Novo limite.

Valor de retorno

O limite anterior.

Comentários

As versões de depuração de algumas funções de segurança aprimoradas de CRT preenchem o buffer passado para eles com um caractere especial (0xFD). Isso ajuda a localizar os casos em que o tamanho incorreto foi passada para a função. Infelizmente, também reduz o desempenho. Para melhorar o desempenho, use _CrtSetDebugFillThreshold para desabilitar o buffer- preenchimento para os buffers maior que o limite. Um limite de 0 desabilitar-o-&z para todos os buffers.

O limite padrão é SIZE_T_MAX.

Esta é uma lista das funções afetadas.

Requisitos

Rotina

Cabeçalho necessário

_CrtSetDebugFillThreshold

<crtdbg.h>

Para obter mais informações sobre compatibilidade, consulte Compatibilidade na Introdução.

Bibliotecas

Versões de depuração das Bibliotecas em tempo de execução C somente.

Exemplo

// 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

Equivalência do .NET Framework

Não aplicável. Para chamar a função padrão de C, use PInvoke. Para obter mais informações, consulte Exemplos de chamadas de plataformas.

Consulte também

Referência

Rotinas de depuração