 |
|
 |
 |
|
Lösungen zu den Aufgaben von Kapitel 24 bis 25
|
Bei den Strukturelementen x und y wurde der Punkteoperator verwendet. Es muss der ->-Operator verwendet werden. Bei der Strukturangabe wurde der Typ char als next-Zeiger verwendet. Hier muss die Struktur selbst als next-Zeiger stehen. Außerdem wurde dieser next-Zeiger im Programm nach dem einfügen eines Elements hinten, nicht verwendet. Der Kette fehlt somit ein Ende.
struct kette{
int x;
int y;
char ort[100];
struct kette *next;
}
...
struct kette *dat;
...
/* Hinten anhängen */
if(NULL == ptr)
{
ptr = (struct daten *)malloc(sizeof(struct daten *));
if(NULL == ptr)
{
printf("Speicherplatzmangel...\n");
exit(0);
}
ptr->x=12;
ptr->y=23;
strcpy(ptr->ort, "New York");
ptr->next = NULL;
}
Beim Stack werden die Daten, welche zuerst darauf abgelegt werden, als letztes wieder von diesem entfernt (LIFO). Bei einer Queue werden die Daten die als Erstes auf die Queue gelegt wurden auch als Erstes wieder abgeholt (FIFO).
|
|
 |
 |
 |