Я написал программу, которая делает 2d-массив, а затем устанавливает его номера. Второго шаг, который у меня есть проблема в нем, что, когда я хочу, чтобы переместить строки и столбцы, я сталкиваюсь с проблемой в этой линии nmatrix[i*c+j] = 0;
Как назначить два массива 2d
ошибка заключается в следующем: error: incompatible types in assignment of 'int' to 'int [(((sizetype)(((ssizetype)(c + shiftc)) + -1)) + 1)]'
здесь код:
void shiftMatrix(int *matrix, int r,int c ,int shiftr,int shiftc){
int nmatrix [r+shiftr][c+shiftc];
for(int i = 0; i< shiftr; i++)
{
for(int j = 0; j<shiftc;j++)
{
nmatrix[i*c+j] = 0;
}
}
for(int i = shiftr; i< r; i++)
{
for(int j = shiftc; j<c;j++)
{
nmatrix[i*c+j] = matrix[i*c+j];
}
}
}
Любая помощь пожалуйста ?? Заранее спасибо
Возможный дубликат http://stackoverflow.com/q/936687/356440 –
Вы хотите сдвинуть строки и столбцы, или будет достаточно сдвинуть только строки? (это очень важно для выбора решения) – anatolyg
Я хочу, чтобы их можно было сдвинуть –