在C语言中,我们通常会把实参传递给形参,但在数组的传递中似乎不太一样,下面举2个例子:
通过这2个例子,不难看出无论main中数组array大小怎么变化,在 printfArray函数中数组array的大小都是8字节,可想而知,在main中将array传递给printfArray中的形参时仅仅传递的是main中array数组的首地址:array或array[0],然后可以根据这个地址在printfArray函数中对相应的数组进行操作,所以就算printfArray函数执行完了,如果它对数组有什么数据改动什么的,这个改动还是会存在的;也可以得知形参中不存在数组的概念,故形参中就是规定了数组的大小也无济于事,因为在传递时仅仅只是传递了一个地址,而在os中地址大小是8个字节,那就基本明了了.