代碼 for(int (*p)[4]=ia; p < p+3; ++p) 中 p+3 隨 p 遞增而變化,條件永真導致無限循環。
int (*end)[4] = ia + 3; // 固定終止地址
for (int (*p)[4] = ia; p < end; ++p) {
for (int *q = *p; q < *p + 4; ++q)
cout << *q << ' ';
cout << endl;
}
預先計算固定終止指針 end,避免邊界隨循環變量移動。