derFREAK27
Member
- Registriert
- 8 Mai 2012
- Beiträge
- 267
Hallo miteinander .
Ich habe da mal eine kleine Frage:
Die Datei pointer_on_functions.c gibt mir pro Funktion x-Wert zurück, die mit printf ausgegeben werden.
Soweit ist alles klar, aber gibt mir printf von "f1" 4 als x-Wert zurück und nicht 6?
Ich deklariere zuerst x als 4 und dann übergebe ich dem Pointer u die Adresse von x, d.h. dieser sollte dann doch die 4 mit einer 6 überschreiben, oder verstehe ich etwas falsch?
Danke schon mal für Eure Hilfe
Ich habe da mal eine kleine Frage:
Die Datei pointer_on_functions.c gibt mir pro Funktion x-Wert zurück, die mit printf ausgegeben werden.
Soweit ist alles klar, aber gibt mir printf von "f1" 4 als x-Wert zurück und nicht 6?
Ich deklariere zuerst x als 4 und dann übergebe ich dem Pointer u die Adresse von x, d.h. dieser sollte dann doch die 4 mit einer 6 überschreiben, oder verstehe ich etwas falsch?
Danke schon mal für Eure Hilfe
Code:
//pointer_on_functions.c
#include <stdio.h>
intx=5;
void f1 (int * u)
{
intx=4;
*u=6;
printf ("\nf1 - der Wert von x ist %d", x);
}
void f2 (int x)
{
printf ("\nf2 - der Wert von x ist %d", x);
}
int main (void)
{
printf ("\n\nmain - der Wert von x ist %d", x);
f2 (7);
f1 (&x);
printf ("\nmain - der Wert von x ist %d", x);
return 0;
}