gpt4 book ai didi

c++ - 使用 int*& 通过引用传递指针会导致奇怪的问题

转载 作者:太空宇宙 更新时间:2023-11-04 15:57:15 25 4
gpt4 key购买 nike

<分区>

我正在编写以下内容以通过引用传递指针。但是,当我尝试取消引用指针时,它给出了意外的值。

void passPointers(int* &a){
int p = 5;
a = &p;
}
int main(){
int x = 3;
int *y= &x;
cout<<"y is "<<y<<" *y is "<<*y<<endl;
passPointers(y);

//cout<<"y is "<<y<<" *y is "<<*y<<endl;//line a
cout<<" *y is "<<*y<<endl;//It returns 5
return 0;
}

如果我取消注释 a 行,它返回 y 的地址,*y 返回一些未知的整数值。我是否违反了 C++ 的某些规范。我用了this编写此代码时链接。我正在使用 g++ 7.3.0

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com