Поделиться через


_CrtSetDebugFillThreshold

Извлекает или изменяет поведение, управляющее порогом заполнения буфера в функциях отладки.

Синтаксис

size_t _CrtSetDebugFillThreshold( size_t newThreshold );

Параметры

newThreshold
Новый размер порогового значения в байтах.

Возвращаемое значение

Предыдущее пороговое значение.

Замечания

Отладочные версии некоторых функций CRT, улучшенных с безопасностью, заполняют буфер, переданный им специальным символом (0xFE). Этот символ заливки помогает найти случаи, когда неверный размер был передан функции. К сожалению, это также снижает производительность. Чтобы повысить производительность, используйте _CrtSetDebugFillThreshold для отключения заполнения буфера для буферов, превышающих пороговое newThreshold значение. Значение newThreshold 0 отключает его для всех буферов.

Пороговое значение по умолчанию — SIZE_T_MAX.

Ниже приведен список затронутых функций:

Требования

Маршрут Обязательный заголовок
_CrtSetDebugFillThreshold <crtdbg.h>

Эта функция связана с корпорацией Майкрософт. Дополнительные сведения о совместимости см. в разделе Совместимость.

Библиотеки

Отладка версий только библиотек времени выполнения C.

Пример

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

См. также

Отладка подпрограмм