calloc
요소가 초기화 배열에 메모리를 할당 합니다.
void *calloc(
size_t num,
size_t size
);
매개 변수
num
요소의 수입니다.size
각 요소의 길이 (바이트)에서입니다.
반환 값
calloc할당 된 공간에 포인터를 반환 합니다.반환 값에서 가리키는 저장소 공간 개체의 저장소를 적절 하 게 맞출 수 보장 됩니다.이외의 다른 형식에는 포인터를 가져올 수 void, 반환 값을 캐스팅 하는 형식을 사용 합니다.
설명
calloc 함수를 배열에 저장 공간 할당 num 요소, 길이 size 바이트입니다.각 요소는 0으로 초기화 됩니다.
calloc설정 하는 errno 에 ENOMEM 메모리 할당 오류가 발생 하는 경우 또는 메모리 양을 초과할 경우 _HEAP_MAXREQ.이 문제 및 기타 오류 코드에 대 한 자세한 내용은 errno, _doserrno, _sys_errlist, _sys_nerr.
calloc호출 malloc C++를 사용 하도록 _set_new_mode 새 처리기 모드를 설정 하는 함수입니다.새 처리기 모드를 나타내는 것인지, 오류가 발생 하면 malloc 으로 설정 새 처리기 루틴을 호출 하는 것 _set_new_handler.기본적으로 malloc 메모리 할당에 실패 시 새 처리기 루틴을 호출 하지 않습니다.이 기본 동작을 재정의할 수 있습니다 있도록, calloc 메모리를 할당 하지 못할 malloc 에서 동일한 새 처리기 루틴을 호출 방법을 new 연산자 같은 이유로 실패 하는 경우를 하지.기본값을 재정의 하려면 호출
_set_new_mode(1)
초기 단계에서 프로그램 또는 NEWMODE와 연결 합니다.OBJ (see 연결 옵션).
C 런타임 라이브러리의 디버그 버전을 응용 프로그램이 연결 될 때 calloc 확인 _calloc_dbg.디버깅 프로세스 동안 힙 관리 하는 방법에 대 한 자세한 내용은 참조 하십시오. CRT 디버그 힙.
calloc표시 된 __declspec(noalias) 및 __declspec(restrict), 함수가 전역 변수를 수정 하려면 보장 되 고 별칭이 지정 된 포인터가 반환 수 없습니다.자세한 내용은 별칭 및 제한.
요구 사항
루틴 |
필수 헤더 |
---|---|
calloc |
<stdlib.h> 및 <malloc.h> |
추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.
예제
// crt_calloc.c
// This program uses calloc to allocate space for
// 40 long integers. It initializes each element to zero.
#include <stdio.h>
#include <malloc.h>
int main( void )
{
long *buffer;
buffer = (long *)calloc( 40, sizeof( long ) );
if( buffer != NULL )
printf( "Allocated 40 long integers\n" );
else
printf( "Can't allocate memory\n" );
free( buffer );
}
해당 .NET Framework 항목
해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.