【发布时间】:2015-04-04 14:03:31
【问题描述】:
int main()
{
int laiArreglo[] = {5,8,2,3,1,4,6,9,2,10}, liElemento;
printf("\nInsert the number: ");
scanf("%d", &liElemento);
ShowNumber(laiArreglo);
return 0;
}
void ShowNumber(int laiArreglo[])
{
int liContador;
printf("\nNumbers: ");
for (liContador = 0; liContador < sizeof (laiArreglo) / sizeof (int); liContador++)
{
printf("%d ", laiArreglo[liContador]);
}
}
我在 main 中使用 (sizeof (laiArreglo) / sizeof (int)) 并且效果很好,但是现在在函数内部它不起作用,为什么?。
【问题讨论】:
-
因为它是一个指针而不是一个数组。
-
ShowNumber的参数是int*。你必须传递一个额外的参数来表示数组的大小来修复它。