C语言的数据结构,为啥有的形参前加&而有的却不加&?这是为什么?希望大神帮帮忙啊

2025-02-25 19:04:49
推荐回答(1个)
回答1:

c++ 中, 形参前加& 表示 “引用”。
c 语言没有引用的概念。 形参前不加 &。
c 语言 函数调用用 时 填写 的 实参,可能出现前面有 &号,这个&表示求地址运算。
当 形参 为指针时,实参需用指针 或 变量的地址。
例如:
void fun(int *a, int *b){....};
void fun2(int a, int b){....};
int x=3,y=4;
函数调用:
fun(&x, &y); // 这里,对应形参为指针的,要用 &x, &y,即 地址形式。
而 fun2(x,y); // 用变量名
你的例子里,实参 用 &L 或 L, 取决于形参类型。