我寫了下面的代碼,期望在運行時得到123456789。然而,相反,我得到了124457789,我可以爲我的生活找出原因。爲什麼我的代碼不能執行我認爲應該執行的操作?C++二維數組:每個元素被賦予一個數字,但輸出是一個不同的數字
如果我改變了數字,第三個和第六個數字仍然與第四個和第七個數字相同。
#include<iostream>
#include<string>
#include<cmath>
using namespace std;
int main(){
int matrix[2][2];
matrix[0][0]=1;
matrix[0][1]=2;
matrix[0][2]=3;
matrix[1][0]=4;
matrix[1][1]=5;
matrix[1][2]=6;
matrix[2][0]=7;
matrix[2][1]=8;
matrix[2][2]=9;
cout<<matrix[0][0];
cout<<matrix[0][1];
cout<<matrix[0][2];
cout<<matrix[1][0];
cout<<matrix[1][1];
cout<<matrix[1][2];
cout<<matrix[2][0];
cout<<matrix[2][1];
cout<<matrix[2][2];
}
所以當我聲明時,它開始從1開始計數,但是當我真正使用它時,它開始從0開始計數? 謝謝,它現在有效:D – Einherjer
@Einherjer數組在C/C++中是基於'0'索引的。習慣這一點。維度的* size *是一個正數,但索引總是從零開始並運行到'(n-1)',其中'n'是聲明的維度大小。 – WhozCraig