Обмен строк 2D-массива внутри структуры с помощью указателя в C - PullRequest
0 голосов
/ 08 февраля 2020

Я пытаюсь создать функцию для замены двух строк из двумерного двойного массива внутри структуры, используя указатель на эту структуру.

Пока это мой код функции.

void swap_rows(struct Double_Array* ptr , int r1 , int r2){

   double temp = ptr->array[r1];

   ptr->array[r1] = ptr->array[r2];

   ptr->array[r2] = temp;

}

Вот ошибки, которые я получаю:

cannot convert 'double*' to 'double' in initialization  
invalid array assignment    
incompatible types in assignment of 'double' to 'double [9]'

Массив является частью структуры, которая размещается в памяти. Однако я получаю ошибки при компиляции.

1 Ответ

0 голосов
/ 08 февраля 2020

Прежде всего, вам нужно получить доступ к 2D-массиву, используя два его индекса, например array[0][r1], а затем поменять местами r1 и r2 столбец за столбцом в al oop, как в как поменять местами две строки в матрице (в C)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...