比较2d数组中的数字时的无限循环

时间:2017-02-05 05:34:39

标签: c++ multidimensional-array infinite-loop

尝试编写一个函数,查看数组中的数字是否比前一个增加或减少。

获得无限循环。

for(int col=0; col < 5; col++) {
    newArray[col][0] = printthis[col][0];
    for(int row = 2; row < 5; row++) {
        cout << col << "\t" << row << "\n";
        if(stoi(printthis[col][row]) > stoi(printthis[col][--row])) {
            newArray[col][row] = "Up";    
        }
        else {
            newArray[col][row] = "Down";    
        } //if else            
    }//inner loop
}

1 个答案:

答案 0 :(得分:2)

此处循环索引减少,因此它将始终保持值2,请注意--row

if(stoi(printthis[col][row]) > stoi(printthis[col][--row])){

你可能想要:

if(stoi(printthis[col][row]) > stoi(printthis[col][row-1])){

此外,循环应该从row = 1而不是2开始,以与第一行而不是第二行进行比较。