- 一般情况下,向函数传递指针类型的参数,可以让函数改变指针指向的内容,并将改变的效果返回
- 但是,如果要改变指针本身的值,使它指向新开辟的内存空间,而不是改变它指向内容的值,这里有两个方法,①是引用,有没有返回值都行 ②是传递指向指针的指针,即二级指针,有没有返回值都行
emmm 开始弄混了,这个和有没有返回值无关,就是两种方法,用哪个都可以
void Attach1(int coef,int expon,pnode &p){
pnode ptr;
ptr=new node();
ptr->coef =coef;
ptr->expon =expon;
ptr->next =NULL;
p->next=ptr;
p=ptr;
}
pnode Attach2(int coef,int expon,pnode* p){
pnode ptr;
ptr=new node();
ptr->coef =coef;
ptr->expon =expon;
ptr->next =NULL;
(*p)->next=ptr;
*p=ptr;
return *p;
}
这篇博客探讨了在C++中如何通过函数参数来改变指针的值,使其指向新的内存空间。介绍了两种方法:使用引用和传递二级指针。通过示例函数`Attach1`和`Attach2`,展示了如何在不返回值的情况下更新指针,以及如何通过返回值来确保函数外部的指针更新。文章强调了正确管理内存和指针的重要性。
2580

被折叠的 条评论
为什么被折叠?



