C++ 无限循环

C++ 无限循环,c++,for-loop,infinite-loop,C++,For Loop,Infinite Loop,这可能是一个愚蠢的问题,但我不能真正理解为什么这个FOR循环无限运行。代码如下: for(int k=0;k<size-1;k++){ for(int i=k+1;i<size;i++){ for(int j=k+1;j<size;j++){ if(k=0){ a[i][j]=((a[i][j]*a[k][k]) - (a[i][k]*a[k][j])); }else{

这可能是一个愚蠢的问题,但我不能真正理解为什么这个FOR循环无限运行。代码如下:

for(int k=0;k<size-1;k++){
    for(int i=k+1;i<size;i++){
        for(int j=k+1;j<size;j++){
            if(k=0){
                a[i][j]=((a[i][j]*a[k][k]) - (a[i][k]*a[k][j]));
            }else{
                a[i][j]=((a[i][j]*a[k][k]) - (a[i][k]*a[k][j]))/a[k-1][k-1];
            }
        }
    }
}
在我的例子中,size的值是3,有人能告诉我为什么这是一个无限循环吗?

ifk=0{…将值0赋给k,所以在外循环的第二次迭代中,您可以跳回外循环的第一次迭代


使用ifk==0{…而不是。

因为k=0。在编译器中打开详细警告,我敢打赌它会告诉你问题出在哪里。谢谢伙计…新手犯了错误