Hallo!
Ihr habt mir bereits zu meiner Lagerverwaltung einen guten Tip gegeben und nun verzweifle ich am nächsten Thema.
Da ihr mir im alten Thread großzügigerweise weitere Hilfe angeboten hast, dachte ich, ich schreibe einfach mal.
Ich habe hier folgenden Code zu einer einfach verketteten Liste:
______________________________________________________________________________________________________________
Mein Ziel ist es, einen Hilfszeiger zu erschaffen, der permanent auf das Ende der Liste zeigt, so dass ich beim Anfügen von neuen Elementen nicht mehr die ganze Liste durcharbeiten muss bis zum nullptr, sondern direkt weiß, wo das Ende ist (so, wie ich auch genau weiß, wo der Anfang ist).
Meine Internet-Recherche auf Youtube oder in anderen Forenbeiträgen hat mich ehrlich gesagt nur noch mehr verwirrt, dabei ist es eigentlich ganz einfach - glaube ich.
Wo stehe ich denn auf dem Holzweg? Könnt ihr mir einen Tip geben?
mfg
Ihr habt mir bereits zu meiner Lagerverwaltung einen guten Tip gegeben und nun verzweifle ich am nächsten Thema.
Da ihr mir im alten Thread großzügigerweise weitere Hilfe angeboten hast, dachte ich, ich schreibe einfach mal.
Ich habe hier folgenden Code zu einer einfach verketteten Liste:
Code:
#include <iostream>
using namespace std;
struct listenelement{
string daten;
listenelement* next;
};
//----------
void anhaengen(string datenneu, listenelement* listenanfang){
listenelement* hilfszeiger1 = listenanfang;
while(hilfszeiger1->next != nullptr)
hilfszeiger1 = hilfszeiger1->next;
hilfszeiger1->next = new(listenelement);
hilfszeiger1 = hilfszeiger1->next;
hilfszeiger1->daten = datenneu;
hilfszeiger1->next = nullptr;
}
void ausgeben(listenelement* listenanfang){
listenelement* hilfszeiger1;
hilfszeiger1 = listenanfang;
cout << hilfszeiger1->daten << endl;
while(hilfszeiger1->next != nullptr){
hilfszeiger1 = hilfszeiger1->next;
cout << hilfszeiger1->daten << endl;
}
}
void ende(listenelement* listenanfang){
listenelement* hilfszeiger1;
while(listenanfang != nullptr){
hilfszeiger1 = listenanfang;
listenanfang = listenanfang->next;
delete(hilfszeiger1);
}
}
int main(){
listenelement* listenanfang;
listenanfang = new(listenelement);
listenanfang->next = nullptr;
listenanfang->daten = "Element 1";
listenelement* listenende;
anhaengen("Element 2", listenanfang);
anhaengen("Element 3", listenanfang);
anhaengen("Element 4", listenanfang);
ausgeben(listenanfang);
ende(listenanfang);
return 0;
}
______________________________________________________________________________________________________________
Mein Ziel ist es, einen Hilfszeiger zu erschaffen, der permanent auf das Ende der Liste zeigt, so dass ich beim Anfügen von neuen Elementen nicht mehr die ganze Liste durcharbeiten muss bis zum nullptr, sondern direkt weiß, wo das Ende ist (so, wie ich auch genau weiß, wo der Anfang ist).
Meine Internet-Recherche auf Youtube oder in anderen Forenbeiträgen hat mich ehrlich gesagt nur noch mehr verwirrt, dabei ist es eigentlich ganz einfach - glaube ich.
Wo stehe ich denn auf dem Holzweg? Könnt ihr mir einen Tip geben?
mfg
Zuletzt bearbeitet: