#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char* argv[]) {
int i;
int** arr = malloc(sizeof(int*) * 3);
for (i = 0; i < 3; i++) {
arr[i] = malloc(sizeof(int) * 3);
}
arr[0][0] = 1;
arr[0][1] = 2;
arr[0][2] = 3;
arr[1][0] = 4;
arr[1][1] = 5;
arr[1][2] = 6;
arr[2][0] = 7;
arr[2][1] = 8;
arr[2][2] = 9;
printf("Size is %llu\n", sizeof(arr) + size(arr[0]) * 3 + sizeof(int) * 3 * 3);
// Deallocation
for (i = 0; i < 3; i++) {
free(arr[i]);
arr[i] = NULL;
}
free(arr);
arr = NULL;
return 0;
}