Zeiger auf Zeiger derefenzieren

Moderator: Moderatoren

Antworten
Benutzeravatar
beafraid88
Beiträge: 99
Registriert: Sa 25. Okt 2008, 17:34
Wohnort: Aachen/Düsseldorf/Mönchengladbach

Zeiger auf Zeiger derefenzieren

Beitrag von beafraid88 » Fr 6. Mai 2011, 23:41

Hallo Leute,
habe hier einen Codeausschnitt. Wie kann ich ohne "->" auf das zugreifen, worauf np1´s next Zeiger hinzeigt und davon die int Komponente.

#include <stdio.h>


typedef struct node {
int data;
struct node* next;
} Node, *nodeptr;

int main () {
nodeptr np1=(nodeptr)malloc(sizeof(Node));
nodeptr np2=(nodeptr)malloc(sizeof(Node));
np1->data=1;
np1->next=np2;
np2->data=2;
np2->next=NULL;
printf("%d\n",(*np1).(*next).data);
system("pause");
return 0;
}


Also
printf("%d\n",(*np1).next->data);
printf("%d\n",np1->next->data);
klappt natürlich.


Danke :)

Christian Bredtmann
Administrator
Beiträge: 237
Registriert: Mo 10. Mär 2008, 04:09
Wohnort: Aachen
Kontaktdaten:

Re: Zeiger auf Zeiger derefenzieren

Beitrag von Christian Bredtmann » So 8. Mai 2011, 16:26

Bitte benutze das nächte mal den BBCode für Quelltext. Lässt sich einfacher lesen...

Die Lösung ist folgende:

Code: Alles auswählen

(*(*np1).next).data
Die Frage ist nur, wieso willst du das überhaupt so machen?

Gruß Christian

Benutzeravatar
beafraid88
Beiträge: 99
Registriert: Sa 25. Okt 2008, 17:34
Wohnort: Aachen/Düsseldorf/Mönchengladbach

Re: Zeiger auf Zeiger derefenzieren

Beitrag von beafraid88 » So 8. Mai 2011, 19:14

ahhh ^
Vielen Dank für die Antwort :D

Ich würde es natürlich auch mit den Pfeilen machen, aber könnte ja sein, dass sowas in der Prüfung abgefragt wird :)


Danke nochmals ;)

Antworten

Zurück zu „Info I“