指针用于函数的参数

发布时间 2023-03-24 21:35:52作者: 熊来闯一闯

        如果把函数的形参声明未指针,调用的时候把实参的地址传进去,形参中存放的是实参的地址,在函数中通过解引用的方法直接操作内存中的数据,可以修改实数的值,这种方法被通俗的称为地址传递或传地址。

         值传递:函数的形参是普通变量。 

         传地址的意义如下:

  • 可以在函数中修改实参的值。
  • 减少内存拷贝,提升性能。

示例如下:

#include <iostream>
using namespace std;

//解引用,可以减少内存空间的拷贝
void fan(int* no,string* name)
{
    cout << "*no = " <<*no << ", *name = " << *name <<endl;
    *no = 8;
    *name = "change";
}

int main()
{
    int me = 2;
    string name = "my";
    fan(&me,&name);
    cout << "me = " <<me << ", name = " << name<< endl;
}

输出结果: