blob: ec71658ff3c514af335d37d6ef063c38e79d095d (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
/*
* === FUNCTION ======================================================================
* Name: calloc_double_matrix
* Description: Allocate a dynamic double-matrix of size rows*columns;
* return a pointer.
* =====================================================================================
*/
double**
calloc_double_matrix ( int rows, int columns )
{
int i;
double **m;
m = calloc ( rows, sizeof(double*) ); /* allocate pointer array */
assert( m != NULL); /* abort if allocation failed */
*m = calloc ( rows*columns, sizeof(double) );/* allocate data array */
assert(*m != NULL); /* abort if allocation failed */
for ( i=1; i<rows; i+=1 ) /* set pointers */
m[i] = m[i-1] + columns;
return m;
} /* ---------- end of function calloc_double_matrix ---------- */
/*
* === FUNCTION ======================================================================
* Name: free_matrix_double
* Description: Free a dynamic double-matrix.
* =====================================================================================
*/
void
free_double_matrix ( double **m )
{
free(*m); /* free data array */
free( m); /* free pointer array */
return ;
} /* ---------- end of function free_double_matrix ---------- */
|