#include #include double *vector(long size) { double *v; v = (double *)malloc((size_t)((size) * sizeof(double))); if(v == NULL) fprintf(stderr, "Error : allocation failure in vector().\n"); return v; } void free_vector(double *v) { free(v); } double **matrix(long rows, long cols) { double **m, **p; long i; m = (double **)malloc((size_t)(rows * sizeof(double *))); if(m == NULL) printf("Error : allocation failure 1 in matrix().\n"); *m = (double *)malloc((size_t)(rows * cols * sizeof(double))); if(*m == NULL) printf("Error : allocation failure 2 in matrix().\n"); for(p = m, i = 1; i < rows; i++, p++) *(p + 1) = *p + cols; return m; } void free_matrix(double **m) { free(m); }