形参用指针变量和数组名有什么区别
发布网友
发布时间:2023-09-05 23:09
我来回答
共1个回答
热心网友
时间:2024-02-01 12:28
因为在编译的时候数组被看成是指针·~所以没有差别
如
int
x[10];
int
*p=x;
那么x[1]实际上就是*(p+1)。
p是变量,能存储地址,
而
数组x是地址常量
//都是被看成地址,只不过一个是变量,一个是常量
至于为什么都能被当成参数
就好比调用函数fun(3);
fun(x)
常量变量都可以。
形参的话写成x[]这样的形式是为了表明指针是指向数组。//只是为了清晰,实质形参都是指针。
而实参就是指针和数目名都可以~~//即实参可以是变量常量,形参都是被看成变量~~