我有一個相當簡單的程序。它從看起來像這樣的文件中讀取矩陣從文件中讀取矩陣,給它主
4 4
a b c d
a b c d
a b c d
a b c d
並且在控制檯中輸出它。該計劃如預期運行:
#include <iostream>
#include <fstream>
using namespace std;
int main() {
int n, m;
ifstream myfile;
myfile.open ("matrix.txt");
myfile >> n >> m;
char mat[n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
myfile >> mat[i][j];
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
cout << mat[i][j];
}
cout << endl;
}
return 0;
}
現在,這個計劃是要長出很多,所以我想開始使用headerfiles和聲明的功能外,使我的主要看上去更像
int main() {
readMat();
printMat();
}
我的問題是,我真的不知道如何做到這一點。我應該在哪裏聲明矩陣,以便兩個函數都能「看到」它?我不能在全球範圍內聲明它爲char mat[n][m]
,因爲我只知道readMat()
內部的n
和m
。
或者是我的整個設計有缺陷,有更好的方法來做到這一點? 我會感激每一個小小的提示。
我還沒有在C++中使用多個文件。
使用'矢量<矢量>'工作謝謝:) –