[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
8.2.1 Block allocation
The functions for allocating memory to a block follow the style of
malloc
and free
. In addition they also perform their own
error checking. If there is insufficient memory available to allocate a
block then the functions call the GSL error handler (with an error
number of GSL_ENOMEM
) in addition to returning a null
pointer. Thus if you use the library error handler to abort your program
then it isn't necessary to check every alloc
.
- Function: gsl_block * gsl_block_alloc (size_t n)
This function allocates memory for a block of n double-precision elements, returning a pointer to the block struct. The block is not initialized and so the values of its elements are undefined. Use the function
gsl_block_calloc
if you want to ensure that all the elements are initialized to zero.A null pointer is returned if insufficient memory is available to create the block.
- Function: gsl_block * gsl_block_calloc (size_t n)
This function allocates memory for a block and initializes all the elements of the block to zero.
- Function: void gsl_block_free (gsl_block * b)
This function frees the memory used by a block b previously allocated with
gsl_block_alloc
orgsl_block_calloc
. The block b must be a valid block object (a null pointer is not allowed).