moe szyslak schrieb:
Ich bin mir jetzt nicht sicher, aber
int hilf;
hilf = *eins;
*eins = *zwei;
*zwei = hilf;
muesste wohl
int* hilf;
hilf = eins;
eins = zwei;
zwei = hilf;
heisen, oder? Sonst zeigt am ende der Funktion zwei auf eine Variable in der funktion, die aber nach dem Verlassen der Funktion nicht mehr existier(t/en sollte).
Nö, passt schon so! Bei deiner version würdest du dem Pointer zwei den integer- (char-) Wert von hilf zuweisen. Lies:
void tausche( int *eins, int *zwei ) {
int hilf;
hilf = *eins; // hilf = wert an Adresse eins
*eins = *zwei; // wert an Adresse eins = wert an Adresse zwei
*zwei = hilf; // wert an Adresse zwei = hilf
}
Ließ das Kapitel über Zeiger in einem C Buch deiner Wahl nochmal durch... :p
Greetz, Swordfish