| Код | void Func(int matrix[4][4]) { int i, j, n; for (i=0; i<=3; i++){ for (j=0; j<=3; j++){ n = matrix[i][j]; if (n = 0) //здесь проходит мимо условия, даже если (n = matrix[i][j];) n=0 { //Операторы } } }
}
int main(int argc, char* argv[]) { int matrix[4][4]; int i, j, sch=1; for (i=0; i<=3; i++){ for (j=0; j<=3; j++){ if (sch == 16){ matrix[i][j] = 0;} //Последнему элементу присваиваю 0 else{ matrix[i][j] = sch; sch=sch + 1;} } } Func(matrix); return 0; }
|
Если сделать так: if (n = 5), то условие принимается, даже если (n = matrix[i][j];) n = 1 Проверял в отладчике. |