2Dアレイを作成しましたが、失敗し、「lab10.exeの0x77a415deで未処理の例外:0xC0000374:ヒープが破損しています」というメッセージが表示されます。ここからどこに行くのか、どのようにデバッグするのかわからない。配列のサイズやmalloc()の使用と関係があると思います。よろしくお願いします!
//Get the number of Columns from the user
printf("Enter the number of rows and columns:\n");
scanf("%d", &dimension);
//Allocate 1-D Array of Pointers, Array 'a'
a = (int** ) malloc( sizeof(int)*dimension);
if(a == NULL)
{
printf("\nError Allocating Memory");
exit(1);
}
//Allocate Rows for 2-D Array; Array 'a'
for(r = 0; r < dimension; r++)
{
a[r] = (int*) malloc( sizeof(int) * dimension);
if (a[r] == NULL)
{
for(i = 0; i< r; i++)
free(a[i]);
printf("\nError Allocating Memory");
exit(1);
}
}
もっとありますが、私はこれを同じ整数の「次元」から4回行います。ありがとうございました!