重複の可能性:
動的に割り当てられた 2 次元配列のサイズを取得する方法
ここで何が間違っていたのかわかりません。サイズがユーザー入力に基づく配列を作成し、ユーザー入力から配列のデータ (整数) を取得し、配列整数を出力したいと考えています。
問題は、最初の配列要素、つまりintArr[0]
.
int main()
{
int i, n, *intArr;
printf("Type the array size:\t");
scanf("%d", &n);
intArr = (int *)malloc(n * sizeof(int));
for (i = 0; i < n; ++i)
{
printf("Type a number\t");
scanf("%d", intArr + i);
}
printArr(intArr);
}
void printArr(int *arr)
{
int i;
for (i = 0; i < (sizeof(arr) / sizeof(*arr)); ++i)
printf("%d ", *(arr + i));
}