2次元配列を関数に渡して印刷するのが好きです。 ここまでは私のコードです。コメントに表示されるように、互換性のないタイプののためにコンパイルされません。C++ 2次元配列を関数に渡します
QUESTION
にはどうすれprintIt
に2次元配列を渡すことができますか? 私はprintIt(int a(*)[50][50])
に調整した場合returning array is not allowed
using namespace std;
void printIt(int a[50][50]);
int main(int args, char *argv[])
{
int a[50][50];
int j = 0;
for (int i = 1; i < 6; i++)
{
a[i][j] = i;
// the same should be printed out inside printIt
cout << " " << a[i][j];
// not compiling
// argument of type int is incompatible with int(*)[50]
printIt(a[i][j]);
}
}
void printIt(int a[50][50])
{
cout << " " << a[50][50];
}
'printIt(a);'と 'a [50] [50]; 'は境界外の配列にアクセスしています。私はあなたのコードで何をしているのか分からない。だから実際に何を達成したいのですか? –
_ "メモリの場所" _ではなく、ゴミ値が表示されます。 –
[50] [50]を実行すると、結果は7862380になります。 これはちょっとしたことです。私は二次元配列で遊んで結果を印刷しました。だから私は、別の関数にどのようにそれを抽出することができますが、それは私が詰まっているところです。 – xhallix