Announcement

Collapse
No announcement yet.

Pointeradresse eingeben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Pointeradresse eingeben

    Hallo,


    folgendes Problem:

    Mein Programm verwendet einen Stack auf dem sich Rechenobjekte befinden. Diese Rechenobjekt sind entweder nur eine Zahl oder ein "Objekt" - eine sogenannte ObjektReferenz - oder eine Referenz auf eine Adresse im Heap.


    Ausserdem verfügt mein Programm über einen Debugger, der es mir erlaubt Rechenobjektedie, die auf dem Stack liegen zu inspizieren. Dazu werden zunächst alle Rechenobjekte auf dem Stack ausgegeben. Falls es sich um eine ObjektReferenz(Pointer) handelt, wird deren Adresse ausgegeben.

    Jetzt hat man die Möglichkeit die ObjektReferenzen zu inspizieren indem man die Adresse der ...OReferenz eingibt. Anschliessend wird deren Wert ausgegeben.

    sp ---> 0007: (xxxxxx) xxxxxx
    fp ---> 0006: (objref) 0x82f0008 (objref) 137297928
    0005: (number) 2
    0004: (number) 19
    0003: (objref) (nil) (objref) 0
    0002: (objref) (nil) (objref) 0
    0001: (number) 0
    0000: (number) 1
    --- bottom of stack ---
    0005: popr
    DEBUG: (i)nspect stack, (l)ist, (s)tep, (r)un, (q)uit? i
    DEBUG, inspect: (s)tack, (o)bject? o
    object reference? 0x82f0008
    137297928
    Unter "object reference? sieht man die bereits transformierte Adresse ( mit strtol nach long int umgewandelt und auf int gecastet)


    Wie kann ich einen Pointer auf diese Adresse zeigen lassen um an den darin enthaltenen Wert zu bekommen?


    Vielen Dank

  • #2
    http://www.math.uni-bayreuth.de/~rba...l/node167.html

    Zeiger auf Zeiger
    Zuletzt editiert von Christian Marquardt; 14.01.2011, 16:53.
    Christian

    Comment

    Working...
    X