指针形参的注意事项

//改函数接受一个指针,然后将指针所指的值置为0

void reset(int *ip)

{

     *ip = 0; //改变指针ip所指对象的值

      ip = 0; //只改变了ip的局部拷贝,实参未被改变

}

调用reset函数之后,实参所指的对象被置为0,但是实参本身并没有改变:

int  i = 42;

reset(&i); //改变i的值二非i的地址

cout << "i = "  << i << endl; //输出i = 0

猜你喜欢

转载自blog.csdn.net/zhengliuguo/article/details/79416957