##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::calloc

From cppreference.com
< cpp‎ | memory‎ | c

Defined in header `<cstdlib>` |  |
void* calloc( std::size_t num, std::size_t size ); |  |

Allocates memory for an array of `num` objects of size `size` and initializes it to all bits zero.

If allocation succeeds, returns a pointer to the lowest (first) byte in the allocated memory block that is suitably aligned for any object type.

If `size` is zero, the behavior is implementation defined (null pointer may be returned, or some non-null pointer may be returned that may not be used to access storage)

### [edit] Parameters

num | - | number of objects
size | - | size of each object

### [edit] Return value

Pointer to the beginning of newly allocated memory or NULL if error has occurred. The pointer must be deallocated with free().

### [edit] Notes

Due to the alignment requirements, the number of allocated bytes is not necessarily equal to `num*size`.

Initialization to all bits zero does not guarantee that a floating-point or a pointer would be initialized to 0.0 and the null pointer value, respectively (although that is true on all common platforms)

### [edit] Example

| This section is incomplete Reason: no example

### [edit] See also

C documentation for calloc

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/memory/c/calloc&oldid=71407"
Category:

- Todo no example