//==============================================================
// Zmienna i wskaznik wskazujacy na zmienna;
// (wskaznik - okreslenie zmiennej typu wskaznikowego)
// adres i zawartosc pod wskazanym adresem;
// "podwojny" wskaznik - adres do zmiennej typu wskaznikowego.
// Referencja.
//
// ver data temat autor
// 100 2001/10/11 Pierwszy projekt J.Malinowski
// 101 2005/11/08 Cleanup JM
// 102 2015/10/03 Cleanup JM
// 103 2015/11/06 Dodano przyklad referencji JM
// 104 2019/11/15 Wydzielono przyklad referencji JM
//==============================================================
#include <iostream>
using namespace std;
//==============================================================
int main()
{
// wskaznik, adres i wyluskanie; typ prosty:
int x =
5
;
cout <<
"\nx= "
<< x
<<
", adres &x= "
<< &x
<<
", wyluskanie *&x= "
<< *&x << endl;
// typ wskaznikowy (typ pochodny):
int *px = &x;
cout<<
" adres px= "
<< px
<<
", wyluskanie *px= "
<< *px << endl;
int *py, *pz;
py = &x;
pz = py;
//--------------------------------------------------------------
// podwojny wskaznik, adres i wyluskanie:
x =
5
;
px = &x;
int **ppx = &px;
cout<<
"\n\n adres w px= "
<< px
<<
", wyluskanie *px= "
<< *px
<<
" adres px-a= "
<< &px << endl;
cout<<
"\n adres ppx= "
<< ppx
<<
", wyluskanie *ppx= "
<< *ppx
<<
", wyluskanie **ppx= "
<< **ppx
<<
"\n adres ppx-a= "
<< &ppx << endl;
cout<<
"\n rozmiar px-a= "
<< sizeof(px)
<<
"\n rozmiar ppx-a= "
<< sizeof(ppx) << endl << endl;
// system("PAUSE");
return
0
;
}
//==============================================================