Hallo,
ich habe hier mal ein Bsp-Progarmm zu Pointern, dass ich aber nicht ganz verstehe:
Bei dem 1. Unterprogramm sind die Übergabeparametern eine struct p1 und ein Pointer p2 der auf die struct zeigt, aber beim Aufruf muss man da nicht den gleichen typ oder so nehmen? punkt p1 ist doch kein Pointer, sondern eine Struktur.
Aber beim Aufruf wird aber an der Stelle von Punkt p1, *thePunkte verwendet? * deutet ja auf Zeiger hin? Und das & hat auch was mit Zeiger zu tun oder?
& heißt ja da wird nur die Startadresse weitergegeben, aber was is da mit Startadresse gemeint?
mfg C_boy
ich habe hier mal ein Bsp-Progarmm zu Pointern, dass ich aber nicht ganz verstehe:
C++:
punkt getGreater(punkt p1, punkt* p2).
{
printf("getGreater: sizeof(p1)=%d : sizeof(p2)=%d\n",sizeof(p1),sizeof(p2));
if (p1.y >= p2->y)
{
return p1;
}
return *p2;
}
punkt findMax(punkt* thePunkte, int len)
{
int t=0;
punkt maxValue;
maxValue= *thePunkte;
for( t = 0 ; t < len; t++)
{
maxValue = getGreater(*thePunkte,&maxValue);//
thePunkte++;
}
return maxValue;
}
Bei dem 1. Unterprogramm sind die Übergabeparametern eine struct p1 und ein Pointer p2 der auf die struct zeigt, aber beim Aufruf muss man da nicht den gleichen typ oder so nehmen? punkt p1 ist doch kein Pointer, sondern eine Struktur.
Aber beim Aufruf wird aber an der Stelle von Punkt p1, *thePunkte verwendet? * deutet ja auf Zeiger hin? Und das & hat auch was mit Zeiger zu tun oder?
& heißt ja da wird nur die Startadresse weitergegeben, aber was is da mit Startadresse gemeint?
mfg C_boy
Zuletzt bearbeitet: