Referencja - dlaczego wskazana zmienna ma wartość 5?

0

Cześć, mam taki oto kod:

#include <iostream>
using namespace std;
int main()
{
int zmienna_1=2;
int &rZmienna=zmienna_1;
cout << "zmienna_1 \t" << zmienna_1<<endl;
cout << "rZmienna \t" << rZmienna<<endl;
cout << "&zmienna_1 \t"<<&zmienna_1<<endl;
cout << "&rZmienna \t"<<&rZmienna<<endl;
int zmienna_2= 5;
rZmienna=zmienna_2;
cout << "zmienna_1 \t" << zmienna_1<<endl;
cout << "zmienna_2 \t" << zmienna_2<<endl;
cout << "rZmienna \t" << rZmienna<<endl;
cout << "&zmienna_1 \t"<<&zmienna_1<<endl;
cout << "&zmienna_2 \t"<<&zmienna_2<<endl;
cout << "&rZmienna \t"<<&rZmienna<<endl;
cout <<endl;
system("pause");
return 0;
}

tutaj są wyniki wykonania programu:

zmienna_1     2
rZmienna      2
&zmienna_1  005CFA98
&rZmienna    005CFA98
zmienna_1    5 // ??
zmienna_2    5
rZmienna 5
&zmienna_1    005CFA98
&zmienna_2    005CFA80
&rZmienna    005CFA98

Dlaczego zmienna_1 ma wartość 5 w linijce którą zaznaczyłem?

dodanie znacznika <code class="cpp"> - @furious programming

1

Dlaczego? Bo sam ją zmieniłęś na 5. Jak?
Do zmiennej "rZmienna" wrzucasz adres "zmienna_1". Co za tym idzie , że przez "rZmienna" masz dostęp do "zmienna_1".
Potem do adresu który jest w "rZmienna" wrzucasz wartość "zmienna_2". I takim to sposobem "zmienna_1" ma wartość 5.

1 użytkowników online, w tym zalogowanych: 0, gości: 1