以下のプログラムで、ポインタへの参照を使用しようとしていますint
。しかし、期待される出力が得られません。
出力:
9 5
5 9
期待:
9 5
9 5
コード:
#include <iostream>
using namespace std;
void swap (int *& a, int *&b)
{
int *t = a;
a = b;
b = t;
}
int main()
{
int a = 5, b = 9;
int *p = &a;
int *q = &b;
swap (p, q);
cout << *p << " " << *q << endl;
cout << a << " " << b << endl;
return 0;
}
なぜ私の期待は間違っているのですか?参照は、ターゲット変数の別の名前に過ぎないと思います。