输出什么?
# include
void print(int arr[])
{
int n = sizeof(arr)/sizeof(arr[0]);
int i;
for (i = 0; i < n; i++)
printf("%d ", arr[i]);
}
int main()
{
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8};
print(arr);
return 0;
}
(A) 1、2、3、4、5、6、7、8
(B)编译器错误
(C) 1 2
(D)运行时错误答案: (C)
说明:有关说明,请参见http://www.geeksforgeeks.org/using-sizof-operator-with-array-paratmeters/。
这个问题的测验