1 /* ---- memory allocation ---- */ 2 3 4 #include <stdlib.h> 5 #include <stdio.h> 6 7 8 int *alloc_1d_int(int n1); 9 void free_1d_int(int *i); 10 double *alloc_1d_double(int n1); 11 void free_1d_double(double *d); 12 int **alloc_2d_int(int n1, int n2); 13 void free_2d_int(int **ii); 14 double **alloc_2d_double(int n1, int n2); 15 void free_2d_double(double **dd); 16 int ***alloc_3d_int(int n1, int n2, int n3); 17 void free_3d_int(int ***iii); 18 double ***alloc_3d_double(int n1, int n2, int n3); 19 void free_3d_double(double ***ddd); 20 21