我正在用指針練習並碰到這個東西。
下面的代碼給出了答案:C++中的指針混淆
1
0
3
當我改變*帶* C的答案是相同的,但在不斷變化的* B = 0,得到的答覆是
1
2
0
能否請您這些過程中幕後發生了什麼?
#include<iostream>
using namespace std;
void func(int *a, int *b,int *c)
{
a=b;
b=c;
c=a;
*a=0;
}
int main()
{
int a=1,b=2,c=3;
func(&a,&b,&c);
cout<<a<<endl<<b<<endl<<c;
}
如果您對main中的變量使用了不同的名稱,那麼這會比說明函數的參數容易得多。 –
是的。我知道。我的錯!但對我而言,這個問題同樣會很棘手。我終於明白了。感謝其中一位回答者! –