Я пытаюсь создать программу Magic Square на основе ввода текстового файла. Я застрял на массивах. Мне нужно получить размер массива из числа «n», а затем сохранить значения строк и столбцов в массиве 2d. Так вот пример из текстового файла:C++: Magic Square на основе txt-файла
3
4 9 2
3 5 7
8 1 6
3 будет п, то я был бы нужен 2d массив для хранения информации о п х п. Вот что я закодирован:
int main() {
int n;
ifstream inFile;
inFile.open("input.txt");
inFile >> n;
int square[n][n];
readSquare(n, square);
}
void readSquare(int n, int square[][]) {
ifstream inFile("input.txt");
for (int r = 0; r < n; r++)
{
for (int c = 0; c < n; c++)
{
inFile >> square[r][c];
cout << square[r][c];
system("pause");
}
}
}
Вы делаете это, чтобы узнать C++, или получить рабочую программу? – Beta
Вы не можете определить такие массивы (не постоянный размер), и вы не можете передавать многомерные массивы в качестве аргументов. Вместо этого вы должны использовать 'std :: vector>'. –
@Beta Я делаю это для задания домашней работы. Поэтому я думаю, «учиться C++». –