Здравствуйте, я пытаюсь использовать функцию std :: copy() для копирования двухмерного массива. Мне было интересно, можно ли так это сделать! Я продолжаю получать «Ошибка сегментации», но массив скопирован правильно. Я попытался вычесть несколько и добавить несколько к концу для функции копирования, но без успеха.std :: copy двухмерный массив
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);
Совершенно очевидно, что «Минт + строка * колонки» является неправильной, и оказывается, что это значение соответствует целым строкам, например, что «+ строка MyInt * столбцы = 1» означает, что он будет копировать весь первый ряд , если «myint + rows * columns = 2» копирует первые две строки и т. д. Может ли кто-нибудь объяснить операцию для меня?
Эта часть кода отлично работает на моей машине. Вы уверены, что именно эта часть вашего кода вызывает ошибку сегментации? – texasbruce