实参是数组名,为什么形参用数组?

img


自定义一个input函数实现输入5个数。
为什么这里实参是数组名,形参却是数组?实参改成X[5]反而报错了。

int x[],这里是类型,表示x是个数组
使用的时候x[5]是数组x的第5个元素,x才是数组的指针
你在纠结为什么之前,应该先了解是什么
就好像问:狗身上为什么长羽毛,答案是那根本不是羽毛
你了解了到底什么是什么,可能问题本身就不存在了
学任何东西都一样,先从概念和定义开始学,概念都没记住,你肯定满脑子问题,可惜都问不到点子上

int a[]等同于 int * a

数组也是一种类型,此处写法编译器会识别为一维指针