std :: copy dwuwymiarowa tablica
Witam Próbuję użyć funkcji std :: copy () do skopiowania dwuwymiarowej tablicy. Zastanawiałem się, czy można to zrobić tak! Ciągle otrzymuję „Błąd segmentacji”, ale tablica jest poprawnie kopiowana. Próbowałem odjąć kilka i dodać kilka do przypadku końcowego dla funkcji kopiowania, ale bez powodzenia.
const int rows = 3;
const int columns = 3;
int myint[rows][columns]={{1,2,3},{4,5,6},{7,8,9}};
int favint[rows][columns];
std::copy(myint, myint+rows*columns,favint);
Oczywiste jest, że „kolumny myint + rows *” są niepoprawne i okazuje się, że ta wartość odpowiada całym wierszom, tak że „myint + rows * columns = 1” oznacza, że skopiuje cały pierwszy wiersz. jeśli „myint + rows * columns = 2” kopiuje dwa pierwsze wiersze itd. Czy ktoś może mi to wyjaśnić?