C
void fp(int *a, int *b, int* &c) // int* &c hier wird die adresse der variable c als referenz übergebn (pointer auf pointer)
{
cout<<"*b="<<*b<<"\n"; *a = 0, *b = 0, *c = 0
(*a)++; variable auf der adresse von a wird inkrementiert
cout<<"*b="<<*b<<"\n"; *a = 1, *b = 0, *c = 0
a=b; a wird die adresse von b übergeben
cout<<"*b="<<*b<<"\n"; (a = b) *a=0, *b=0, *c=0
(*a)++; variable auf der adresse von a wird inkrementiert
cout<<"*b="<<*b<<"\n"; (a = b) *a=1, *b=1, *c=0
c=a; c wird die adresse von a übergeben ACHTUNG hier wird der adresswert von c verändert, da c als referenz übergeben wurde also auch der adresswert des übergebenen pointer!!!!
cout<<"*b="<<*b<<"\n"; *(a = b = c) = 1
(*c)++; .....
cout<<"*b="<<*b<<"\n"; *(a = b = c) = 2
cout<<b;
}
int main()
{
int d=0, e=0, f=0;
int *pd=&d, *pf=&f;
fp(pd,&e,pf); pf wurde verändert da er als referenz übergeben wurde
(*pf)++; pf = &e !!! e war nach der methode pf() gleich 2
cout<<"d="<<d<<"\n"; d = 1
cout<<"e="<<e<<"\n"; e = 3
cout<<"f="<<f<<"\n"; f = 0
cout<<&e;
return 0;
}
lol ok 3 antworten XD such dir eine aus