_heapset
최소한의 일관성에 대 한 힙을 검사 하 고 빈 항목을 지정한 값으로 설정 합니다.
int _heapset(
unsigned int fill
);
매개 변수
- fill
문자를 입력 합니다.
반환 값
_heapsetmalloc.h에 정의 된 다음 정수 매니페스트 상수 중 하나를 반환 합니다.
_HEAPBADBEGIN
초기 헤더 정보가 잘못 되었거나 없습니다._HEAPBADNODE
힙 손상 또는 잘못 된 노드를 찾을 수 있습니다._HEAPEMPTY
힙 초기화 되지 않았습니다._HEAPOK
힙 일관 되 게 표시 됩니다.
뿐만 아니라, 오류가 발생 하면 _heapset 설정 errno 에 ENOSYS.
설명
_heapset 함수를 사용할 수 있는 메모리 위치 또는 실수로 덮어쓴 된 노드를 보여 줍니다.
_heapset힙의 최소한의 일관성을 검사 하 고 각 바이트 힙 사용 가능한 항목을 설정 하는 fill 값입니다.알려진된 값이 힙 메모리 위치 사용할 수 있는 노드를 포함 하 고 실수로 해제 된 메모리에 기록 된 데이터가 들어 있는 표시 합니다.운영 체제에서 지원 하지 않는 경우 _heapset함수 (예: Windows 98)를 반환 합니다. _HEAPOK 를 설정 하 고 errno 에 ENOSYS.
요구 사항
루틴 |
필수 헤더 |
선택적 헤더 |
---|---|---|
_heapset |
<malloc.h> |
<errno.h> |
더 많은 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.
예제
// 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 );
}
해당 .NET Framework 항목
해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.