2014-02-24 48 views
-3

有人可以幫我解釋下面的代碼,什麼爲每個循環?爲什麼grey.rows - 1和grey.cols - 1?什麼是grey.cols-1和grey.rows -1與兩個for循環

for(int y = 1; y < grey.rows - 1; y++){ 
     for(int x = 1; x < grey.cols - 1; x++){ 
+1

沒有任何額外的上下文無人能夠爲您解答這個問題! – John3136

+2

顯然,代碼避免了2d數組的邊緣。 – this

+0

對不起,我來自印度尼西亞。我不能很好地說英語來展示它的細節。 (int y = 0; y Monic92

回答

2

因此,對於所述陣列:

int rows = 5; 
int cols = 5; 
int array[][5] = { 
        {1, 1, 1, 1, 1}, 
        {1, 0, 0, 0, 1}, 
        {1, 0, 0, 0, 1}, 
        {1, 0, 0, 0, 1}, 
        {1, 1, 1, 1, 1} 
}; //as an illustrative example of what elements would be processed. 

所討論的陣列具有五行的,因爲它從索引1至最後一個索引迭代 - 1,這將避免的第一和最後一個元素當前數組。

因此,在這種情況下所有將被迭代的將是0的中心。

+0

謝謝你褻瀆,它明確 – Monic92

+0

請再次解釋它。在(y,x)= 0; – Monic92