einfache Frage zur Syntax

Gast #1566100
Lesenswert?

Hallo,

ich haben keine Ahnung von C und eine (sicher einfache) Frage:
ich soll einen Pointer angeben und habe folgende beiden Möglichkeiten:

1. ptr
2. *(ptr)

Kann mir bitte jemand sagen was da der Unterschied ist?!
So auf ASM Level!
Ich vermute, bei 1. steht in PTR die Adresse auf die ich zugreife.
Was aber ist bei 2.?

btw:
die Sachen mit ptr++ etc. sind mir schon klar geworden.
Mühsahm, wenn man sich da einarbeiten muss.

Danke
Jan
Gast #1566130
Lesenswert?

Verstanden, vielen Dank Lars!

für mich leider (noch) sehr kryptisch -
die Kürze hat aber schon ihren Reiz, wie bei *(ptr++):
schnell geschrieben und erledigt trotzdem gleichzeitig einige Aktionen 
:-)

Nochmals Besten Dank!
Jan
#1566136
Lesenswert?

Hallo Jan,

> für mich leider (noch) sehr kryptisch -

Das ist nur eine Frage der Gewohnheit...

> die Kürze hat aber schon ihren Reiz, wie bei *(ptr++):
> schnell geschrieben und erledigt trotzdem gleichzeitig einige Aktionen

Lass die Klammern weg, dann wird es noch kürzer! (Allerdings wird dann 
nach dem Zugriff auf den Wert erhöht.)

Viele Grüße,

Lars
#1567324
Lesenswert?

Rolf Magnus schrieb:
> Wann der Pointer inkrementiert wird, ist nicht festgelegt.

Ok, wenn du denn unbedingt den Kleinlichen spielen musst, dann 
formuliere ich es eben um:
Für die Dereferenzierung wird auf jeden Fall der nicht inkrementierte 
Wert des Pointers verwendet, egal ob mit oder ohne Klammer.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren