Я хочу создать массив указателей на массивы из 3 поплавков. Каков правильный способ сделать это?
float *array1[SIZE]; // I think it is automatically allocated
// OR
float **array1 = calloc(SIZE, sizeof(float*));
free(array1);
for (int i = 0; i < SIZE; i++) {
array1[i] = (float[]){0,0,0};
// OR
array1[i] = calloc(3, sizeof(float));
}
Тогда как я могу освободить данные? Я почти уверен, что только free(array1);
не будет работать, поэтому я бы освободил каждый указатель в массиве, затем освободил массив, или, поскольку я выделил три поплавков, я бы освободил каждый float, затем каждый 3 массива float, затем весь массив???