我想用隨機的零和一個初始化一個可變長度的數組。我的問題是,我創建的數組似乎只有4個元素的長度。 這是爲什麼?爲什麼我的數組在初始化後沒有合適的長度?
int main()
{
int i, j;
int length = 20;
int *array = (int *) calloc(length, sizeof(int));
for (i = 1; i < length; i++) {
array[i] = 1;
printf("%d", array[i]);
}
printf("\n");
for (j = 0; j < sizeof(array); j++) {
printf("%d", array[j]);
}
getchar();
}
可能的重複[爲什麼一個C數組在傳遞給一個函數時有一個錯誤的sizeof()值?](https://stackoverflow.com/questions/2950332/why-does-ac-array-have -a-wrong-sizeof-value-when-its-to-a-function) –
謝謝,這原來是我的問題的答案。 – MrCGenius