假设我有一个这样的数组:
1 0 0
0 2 1
0 1 0
所以我想检查2以上的数字是否为0,如果为真则将其更改为2。假设 i = 1 且 j = 1:
string var = "2";
if(tab[i][j] == var && tab[i-1][j] == "0") {
tab[i-1][j] = "2";
}
这是我得到段错误的地方,如果我在 if 语句中将 0 更改为 1,它工作正常。为什么?甚至尝试将二维数组设为 int,同样的问题。
将“0”更改为“0”,反之亦然=同样的问题。
for(int i = 0; i < n; i++) {
vector<string> current_row;
for(int j =0; j < m; j++) {
myfile >> buff;
current_row.push_back(buff);
}
tab.push_back(current_row);
}
这就是我填充它的方式。