я пытаюсь перераспределить массив внутри функции.
unsigned findShlasa(int matrix[COL_MATRIX_A][ROW_MATRIX_A], Sa *ar, list head)
{
Node* current_pos;
unsigned count = 0;
unsigned row_index, col_index;
for (col_index = 0; col_index < COL_MATRIX_A; col_index++)
{
for (row_index = 0; row_index < ROW_MATRIX_A; row_index++)
{
if ((row_index + col_index) == matrix[col_index][row_index])
{
if (!head)
{
ar = (Sa*) malloc(sizeof(Shlasha));
head = (list) malloc(sizeof(list));
current_pos = head;
count++;
}
else
{
count++;
ar = (Sa*) realloc(ar, count * sizeof(Shlasha));
current_pos->next = (Node*) malloc(sizeof(Node));
}
.....
когда я пытаюсь напечатать массив вне этой функции, он не работает, потому что теперь он указывает на другое место в памяти. как я могу перераспределить его внутри функции и по-прежнему указывать на одно и то же место вне функции?
P.S: Sa* - указатель на структуру