用户定义函数中的指针和输入

Pointers and input in user define functions

本文关键字:指针 输入 定义 函数 用户      更新时间:2023-10-16

在这个例子中,我通过引用调用了一个add()函数,我怀疑它在这种情况下是如何发送输入的。我的意思是它使用&p=a,并且&(any variable)表示变量的地址吗?

#include<iostream>
using namespace std;
void add(int &p)
{
p++;
}
int main()
{
int a=55;
add(a);

cout<<a;

return 0;
}

做&(任何变量(表示变量的地址?

是。

什么是参考资料

简单地说,引用只是别名。这意味着p只是引用到a的另一种方式。您对pa所做的任何更改都将反映在另一个中。但是,不能将引用变量重新分配给其他变量。引用只初始化一次,然后重复使用。

示例:

int main()
{
int a=55;
int &p = a; //p is referring to a
p++;        // a = 56, p = 56
a = 100;    // a = 100, p = 100

//address of both are same as well
cout << &a << 'n';
cout << &p << 'n';

int x = 33;
p = &x; // error
&p = x; // error, can't change
p = x; //ok, but now a = 33, p = 33, (p is not referring to x)
}