다음을 통해 공유


free

할당을 취소 하거나 메모리 블록을 해제 합니다.

void free( 
   void *memblock 
);

매개 변수

  • memblock
    메모리 블록이 해제 될 때까지 이전에 할당 합니다.

설명

free 함수는 메모리 블록을 할당 취소 (memblock)는 이전에 할당 된를 호출 하 여 calloc, malloc, 또는 realloc.해제 된 바이트 블록 할당 된 경우 요청 된 바이트 수에 해당 하는 것 (나의 재할당 realloc).경우 memblock 입니다 NULL, 포인터를 무시 하 고 free 즉시 반환 합니다.잘못 된 포인터 해제 하려고 (의해 할당 된 메모리 블록에 대 한 포인터 calloc, malloc, 또는 realloc) 후속 할당 요청에 영향을 줄 및 오류를 발생 시킬 수 있습니다.

메모리를 늘리기에 오류가 발생 하면 errno 정보 실패와 운영 체제에서 특성에 설정 됩니다.자세한 내용은 errno, _doserrno, _sys_errlist, _sys_nerr를 참조하십시오.

메모리 블록이 해제 된 후 _heapmin 사용 하지 않는 영역을 결합 하 고 운영 체제로 해제 힙 사용 가능한 메모리 양을 최소화 합니다.운영 체제로 해제 되지 않습니다 해제 된 메모리 사용 가능한 풀으로 복원 된 및 할당에 대 한 다시 사용할 수 있습니다.

C 런타임 라이브러리의 디버그 버전을 응용 프로그램이 연결 될 때 free 확인 _free_dbg.디버깅 프로세스 동안 힙 관리 하는 방법에 대 한 자세한 내용은 참조 하십시오. CRT 디버그 힙.

free표시 된 __declspec(noalias), 함수에서 전역 변수를 수정 하려면 보장 하는.자세한 내용은 별칭.

사용 하 여 할당 된 메모리 공간을 _malloca를 사용 하 여 _freea.

요구 사항

Function

필수 헤더

free

<stdlib.h> 및 <malloc.h>

추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

예제

예제를 보려면 malloc.

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.

참고 항목

참조

메모리 할당

_alloca

calloc

malloc

realloc

_free_dbg

_heapmin

_freea