< C++ Programming < Code < Standard C Library
Standard C Memory Management
This section will cover memory management elements from the Standard C Library.
calloc
Syntax |
#include <cstdlib>
void *calloc( size_t num, size_t size);
|
The function calloc() allocates a block of memory that can store an array of num cells, each with a size size. Every cell of the array is set to value zero.
If the operation fails, calloc() returns "NULL".
EXAMPLE:
ptr = (float*)calloc(25, sizeof(float));
/* It would create an array of 25 cells, each one with a size of 4 bytes
“(sizeof(float))”, all the cells initialized with value 0 */
free
Syntax |
#include <cstdlib>
void free( void *p);
|
The function free() releases a previously allocated block from a call to calloc, malloc, or realloc.
malloc
Syntax |
#include <cstdlib>
void *malloc( size_t s );
|
The function malloc() allocates a block of memory of size s. The memory remains uninitialized.
If the operation fails, malloc() returns NULL.
realloc
Syntax |
#include <cstdlib>
void *realloc( void *p, size_t s);
|
The function realloc() resizes a block created by malloc() or calloc(), and returns a pointer to the new memory region.
If the resize operation fails, realloc() returns NULL and leaves the old memory region intact.
This article is issued from
Wikibooks.
The text is licensed under Creative
Commons - Attribution - Sharealike.
Additional terms may apply for the media files.