Hallo zusammen,
ich habe eine Frage zu Zeigern:
Ich habe folgende Aufgabe bekommen, ich soll die folgenden Anweisungen auf richtige Syntax testen:
Sind meine Überlegungen soweit richtig?
Bei den richtigen Ausdrücken soll ich noch die entsprechenden Werte der linken sowie der rechten Seite angeben:
Wäre nett wenn mal jemand drüber schauen könnte. Kritik ist durchaus erwünscht!
Danke und Gruß
ich habe eine Frage zu Zeigern:
Ich habe folgende Aufgabe bekommen, ich soll die folgenden Anweisungen auf richtige Syntax testen:
Code:
globale Definitionen:
int x = 17;
int *p1, p2;
char *p3, p4;
a) p1 = x; ==> korrekt, da gleicher Datentyp
b) p1 = &x; ==> korrekt, da gleicher Datentyp; Variable erhält einfach nur einen Adresswert
c) *p1 = x+1; ==> korrekt, der Zeiger erhält einfach nur einen Wert
d) *p1 = &x; ==> korrekt, Zeiger erhält einfach nur einen Adresswert
e) p1 = p2; ==> korrekt, geht da gleiche Datentypen
f) p3 = &p4; ==> korrekt, Variable erhält Zeigerwert
g) p1 = p3; ==> nicht korrekt, unterschiedliche Datentypen
h) p4 = *p1; ==> nicht korrekt, unterschiedliche Datentypen
Sind meine Überlegungen soweit richtig?
Bei den richtigen Ausdrücken soll ich noch die entsprechenden Werte der linken sowie der rechten Seite angeben:
Code:
a) p1 = 17;
b) 17 = irgendeineAdresse
c) *p1=18;
d) 18 = irgendeineAdresse
e) 17 = p2;
f) p3 = irgendeine Adresse
Wäre nett wenn mal jemand drüber schauen könnte. Kritik ist durchaus erwünscht!
Danke und Gruß