Y'all have some entertaining ways to malloc a 2D array, for sure.
Code:
#include <stdio.h>
#include <stdlib.h>
#define ROWS 80
#define COLS 10
void printIt(int **array1)
{
int i, j;
for (i = 0; i < ROWS; ++i) {
for (j = 0; j < COLS; ++j) {
printf(" %5d ", array1[i][j]);
}
putchar('\n');
}
}
int main(void) {
int i, j;
int **array;
array = malloc(ROWS * sizeof(int*));
for (i = 0; i < ROWS; +++i)
array[i] = malloc(COLS * sizeof(int));
for (i = 0; i < ROWS; ++i) {
for (j = 0; j < COLS; ++j) {
array[i][j] = i + j;
}
}
printIt(array);
for(i=0;i<ROWS;++i) {
free(array[i]);
}
free(array);
return 0;
}