我的教練提出這個slide爲 「矩陣複製」:這段代碼不對嗎?
#define ROWSIZ 17
#define COLSIZ 27
int enamatrisen[ROWSIZ][COLSIZ];
int andramatrisen[ROWSIZ][COLSIZ];
void matcpy (int* dst, int* src)
{
int i, j;
for (i=0; i<ROWSIZ, i=i+1) /* rad-nr */
for (j=0; j<COLSIZ, j=j+1) /* kolumn-nr */
dst[i][j] = src[i][j];
}
但
1)是錯誤的地方說:,
應該;
和
2)的代碼沒有按不會編譯。 gcc抱怨指針被用作數組或類似的東西。什麼是正確的代碼?這項工作如何接近?難道不應該使用memcpy來代替它,還是這是爲了實現像memcpy之類的東西?
FWIW,而奇怪的,我相信 「」 將這裏的 '正確' 的效果。 –
它是「for(;;)」而不是「((,,)」),所以GCC正確地抱怨逗號。 – EGOrecords
是的,但是插入逗號,仍然可以得到一個有效的循環,但是,最終會出現無限循環,因爲逗號的評估只是序列中的最後一項......您需要額外的代碼在身體中擺脫它。我相信還是值得一提的。 –