memset
size の動的配列を設定するために使用しようとしていますrownum x rownmum
。ただし、showarr
以下に示すように関数を呼び出すと、すべてゼロ (つまり ASCII 48
) の出力を取得する代わりに、ランダム/ガベージ値が取得されます。
void showarr(int **a, int rownum)
{
for ( int i = 0; i < rownum; i++) {
for ( int j = 0; j < rownum; j++) {
cout<<a[i][j]<<endl;
}
}
}
int main(int argc, char *argv[])
{
int n;
cin>>n;
int rownum;
cin>>rownum;
int **a = new int* [rownum] ;
for ( int i = 0; i <rownum; i++) {
a[i] = new int[rownum];
}
for (int i = 0; i < rownum; i++) {
memset(a[i],48,sizeof(a[i]));
}
showarr(a,rownum);
return 0;
}