我有在C.說2D陣列我的二維陣列的一個問題是board[d][d]
(d=7
),我想的board[d-1][d-2]
值賦給int
。當我這樣做,我得到錯誤,如果我printf board[d-1][d-2]
我得到32766
。數組中的最高值是d*d-1=48
。 我在做什麼錯?如何訪問二維陣列值和assing值與INT用C
int main(void)
{
int d=7;
int nr=(d*d)-1;
int board[d][d];
int u=board[d-1][d-2];
bool even=false;
if ((d/2)*2!=d)
{
even=true;
}
printf("%d\n", even);
printf("%i\n", board[d-1][d-2]); //result here is 32764?
for(int i=0;i<d;i++)
{
for(int j=0;j<d;j++)
{
board[i][j]=nr;
nr--;
printf(" %2d", board[i][j]);
}
printf("\n");
}
return 0;
}
我把以後的詮釋ü for循環,所以現在它的初始化,謝謝你的幫助。 – lkoks
@lkoks upvote答案接受是stackoverflow方式說謝謝:)祝你好運在你的編碼努力! –
什麼是內存垃圾? – 2501