_heapset_heapset

힙에서 최소한의 일관성을 검사하고 사용 가능한 항목을 지정된 값으로 설정합니다.Checks heaps for minimal consistency and sets the free entries to a specified value.

중요

이 함수는 사용되지 않습니다.This function is obsolete. Visual Studio 2015부터 CRT에서 사용할 수 없습니다.Beginning in Visual Studio 2015, it is not available in the CRT.

구문Syntax

int _heapset(   
   unsigned int fill   
);  

매개 변수Parameters

fill
채우기 문자.Fill character.

반환 값Return Value

_heapset는 Malloc.h에 정의된 다음 정수 매니페스트 상수 중 하나를 반환합니다._heapset returns one of the following integer manifest constants defined in Malloc.h.

_HEAPBADBEGIN
초기 헤더 정보가 잘못되었거나 없습니다.Initial header information invalid or not found.

_HEAPBADNODE
힙이 손상되었거나 잘못된 노드가 있습니다.Heap damaged or bad node found.

_HEAPEMPTY
힙이 초기화되지 않았습니다.Heap not initialized.

_HEAPOK
힙이 일치하는 것 같습니다.Heap appears to be consistent.

또한 오류가 발생하는 경우 _heapseterrnoENOSYS로 설정합니다.In addition, if an error occurs, _heapset sets errno to ENOSYS.

설명Remarks

_heapset 함수는 실수로 덮어쓴 사용 가능한 메모리 위치 또는 노드를 표시합니다.The _heapset function shows free memory locations or nodes that have been unintentionally overwritten.

_heapset 는 힙에서 최소한의 일관성을 검사한 다음 힙에서 사용 가능한 항목의 각 바이트를 fill 값으로 설정합니다._heapset checks for minimal consistency on the heap and then sets each byte of the heap's free entries to the fill value. 이 알려진 값은 사용 가능한 노드를 포함하는 힙의 메모리 위치와 해제된 메모리에 실수로 기록된 데이터를 포함하는 메모리 위치를 표시합니다.This known value shows which memory locations of the heap contain free nodes and which contain data that were unintentionally written to freed memory. 운영 체제가 _heapset(예: Windows 98)을 지원하지 않는 경우 함수에서 _HEAPOK를 반환하고 errnoENOSYS로 설정합니다.If the operating system does not support _heapset(for example, Windows 98), the function returns _HEAPOK and sets errno to ENOSYS.

요구 사항Requirements

루틴Routine 필수 헤더Required header 선택적 헤더Optional header
_heapset <malloc.h><malloc.h> <errno.h><errno.h>

호환성에 대한 자세한 내용은 소개에서 호환성을 참조하세요.For more compatibility information, see Compatibility in the Introduction.

예제Example

// crt_heapset.c  
// This program checks the heap and  
// fills in free entries with the character 'Z'.  

#include <malloc.h>  
#include <stdio.h>  
#include <stdlib.h>  

int main( void )  
{  
   int heapstatus;  
   char *buffer;  

   if( (buffer = malloc( 1 )) == NULL ) // Make sure heap is   
      exit( 0 );                        //    initialized       
   heapstatus = _heapset( 'Z' );        // Fill in free entries   
   switch( heapstatus )  
   {  
   case _HEAPOK:  
      printf( "OK - heap is fine\n" );  
      break;  
   case _HEAPEMPTY:  
      printf( "OK - heap is empty\n" );  
      break;  
   case _HEAPBADBEGIN:  
      printf( "ERROR - bad start of heap\n" );  
      break;  
   case _HEAPBADNODE:  
      printf( "ERROR - bad node in heap\n" );  
      break;  
   }  
   free( buffer );  
}  
OK - heap is fine  

참고 항목See Also

메모리 할당 Memory Allocation
_heapadd _heapadd
_heapchk _heapchk
_heapmin _heapmin
_heapwalk_heapwalk