Это действительно прямая (если редактируется) копия вашего кода?
Эта строка:
int n = 10; double array[n][n];
недопустима в C ++.Вы не можете объявить массив с переменными размерами.Это будет работать:
const int n = 10; double array[n][n];
Вы хотите объявить checkArray как:
bool checkArray(double array[][10])
, и вы абсолютно не хотите делать это:
double length = sizeof(array);
, потому что этоприсваивает length
размер указателя в байтах (4 или 8.) Вам необходимо явно указать количество строк.Кроме того, вам гораздо лучше объявить length
как int
, а еще лучше size_t
.
Это выглядит как приличный ресурс: http://www.fredosaurus.com/notes-cpp/arrayptr/22twodim.html