Заполнение двумерного массива, находящегося в структуре строками
Есть структура, заполненная двумерными массивами
typedef struct
{
char** f;
char** s;
char** t;
char** f4;
char** f5;
} RICK;
Из мейна я передаю в функцию указатель на структуру и пытаюсь заполнить элементы строками (Мне нужны массивы строк)
int size = max_size(text), current_size = 0; // max_size выясняет количество байт файла.
char* size_test = (char*)malloc(size);
while ((fscanf(text, "%c", &check[0])) == 1)
{
if (check[0] == '^' || check[0] == '#')
{
...
}
else
{
fseek(text, -1, SEEK_CUR);
current_size = strlen(fgets(size_test, size, text));
heyho->f5[idx_secf5++] = (char*)calloc(current_size, 1);
heyho->f5[idx_secf5 - 1] = size_test;
}
}
По какой-то причине в итоге получаю, что все элементы массива f5 на выходе равны последнему считанному значению, хотя, вроде как, указатели на элементы должны отличаться, индексы же разные. Спасибо!