c_calloc — std::calloc
c_calloc — std::calloc
std::calloc는 C 언어에서 온 저수준 메모리 할당 함수예요. num개의 객체를 각각 size 바이트 크기로 할당하고, 모든 바이트를 0으로 초기화해요. <cstdlib> 헤더에 제공돼요.
배열처럼 "개수 × 크기" 형태의 메모리를 0으로 초기화된 상태로 한 번에 얻고 싶을 때 유용해요. 다만 이 함수로 할당한 메모리는 std::free로 해제해야 해요.
출처: cppreference
본문
std::calloc는 num개의 객체 배열에 대한 저장 공간을 할당하고, 모든 바이트를 0으로 초기화해요.
void* calloc(std::size_t num, std::size_t size);
num— 객체의 개수size— 각 객체의 크기(바이트)
할당에 성공하면 할당된 메모리의 시작을 가리키는 포인터를 반환하고, 실패하면 nullptr을 반환해요. 반환된 포인터는 어떤 객체 타입에도 정렬되어 있어요.
할당된 메모리는 std::free로 해제해야 해요. num * size가 오버플로우하면 실패할 수 있어요.