<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Klitze kleines Problem mit verketteter Liste]]></title><description><![CDATA[<p>Hi Leute <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> ,</p>
<p>ich hab mich in letzter Zeit mit verketteten Listen Bäumen etc auseinandergesetzt.<br />
Soweit funktioniert eigentlich alles <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> .<br />
Aber eine Frage hab ich, ich hab hier ein kleines Beispielprg. geschrieben, das soweit funktioniert.<br />
Nur wenn ich in dem Teil *** Neues beliebiges Objekt einfügen ***<br />
das erste cout ein- und das zweite cout auskommentiere bekomm ich die Fehlermeldung:Die Anweisung in XXX verweist auf den Speicher in XXX, der Vorgang read konnte nicht ausgeführt werden ... . <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /><br />
Ich müsste aber doch mit previous = prev genauso nach oben wie mit next nach unten duch die Liste gehen können.<br />
Wisst ihr was ich falsch mach und vorallen wie es richtig geht ?<br />
Hier mal mein code:</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;

using namespace std;

struct mvListe
{
	int data;

	mvListe *prev;
	mvListe *next;
};

mvListe *neu	= NULL;
mvListe *head	= NULL;
mvListe *current= NULL;

void showList(mvListe *head, char const headline[]);

void main()
{

	int i = 0;
	for (i = 0; i &lt; 10 ; i++)
	{
		neu = new mvListe;
		neu-&gt;next = head;
		head = neu;
		neu-&gt;data = i;
	}
		showList(head,&quot;Neue Liste&quot;);

//****************************** Neues erstes Objekt einfügen **********************************

		neu = new mvListe;

		neu-&gt;prev = head;
		neu-&gt;next = neu-&gt;prev;
		head = neu;

		neu-&gt;data = 1024;

		showList(head,&quot;Neues erstes Element&quot;);

//****************************** Neues letztes Objekt einfügen ***********************************

		neu = new mvListe;

		current = head;

		while (current-&gt;next!= NULL)
		{
			current = current-&gt;next;
		}
	 	neu-&gt;prev = current;
		current-&gt;next = neu;
		neu-&gt;next = NULL;

		neu-&gt;data = 2048;

		showList(head,&quot;Neues letztes Element&quot;);

//****************************** Neues beliebiges Objekt einfügen *********************************

		neu = new mvListe;

		int j = 0;
		int index = 5;
		current = head;

		while (j &lt; index)
		{
			current = current-&gt;next;
			j++;
		}

		neu-&gt;next = current-&gt;next;
		current-&gt;next = neu;

		neu-&gt;prev = current;

		neu-&gt;data = 3072;

		showList(head,&quot;Neues beliebiges Element&quot;);

  	// cout &lt;&lt; neu-&gt;prev-&gt;prev-&gt;prev-&gt;data &lt;&lt; endl &lt;&lt; endl; :confused: 

	  cout &lt;&lt; neu-&gt;next-&gt;next-&gt;next-&gt;data &lt;&lt; endl &lt;&lt; endl;

}

void showList(mvListe *head, char const headline[])
{
	cout &lt;&lt; headline &lt;&lt; endl &lt;&lt; endl;
	current = head;
	while (current != NULL)
	{
		cout &lt;&lt; current-&gt;data &lt;&lt; endl;
		current = current-&gt;next;
	}
	cout &lt;&lt; endl &lt;&lt; endl;
}
</code></pre>
<p>vielen Dank schon mal für eure Mühe</p>
<p>ShadowEater</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/156520/klitze-kleines-problem-mit-verketteter-liste</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 21:26:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/156520.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 17 Aug 2006 12:16:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klitze kleines Problem mit verketteter Liste on Thu, 17 Aug 2006 12:16:19 GMT]]></title><description><![CDATA[<p>Hi Leute <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> ,</p>
<p>ich hab mich in letzter Zeit mit verketteten Listen Bäumen etc auseinandergesetzt.<br />
Soweit funktioniert eigentlich alles <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> .<br />
Aber eine Frage hab ich, ich hab hier ein kleines Beispielprg. geschrieben, das soweit funktioniert.<br />
Nur wenn ich in dem Teil *** Neues beliebiges Objekt einfügen ***<br />
das erste cout ein- und das zweite cout auskommentiere bekomm ich die Fehlermeldung:Die Anweisung in XXX verweist auf den Speicher in XXX, der Vorgang read konnte nicht ausgeführt werden ... . <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /><br />
Ich müsste aber doch mit previous = prev genauso nach oben wie mit next nach unten duch die Liste gehen können.<br />
Wisst ihr was ich falsch mach und vorallen wie es richtig geht ?<br />
Hier mal mein code:</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;

using namespace std;

struct mvListe
{
	int data;

	mvListe *prev;
	mvListe *next;
};

mvListe *neu	= NULL;
mvListe *head	= NULL;
mvListe *current= NULL;

void showList(mvListe *head, char const headline[]);

void main()
{

	int i = 0;
	for (i = 0; i &lt; 10 ; i++)
	{
		neu = new mvListe;
		neu-&gt;next = head;
		head = neu;
		neu-&gt;data = i;
	}
		showList(head,&quot;Neue Liste&quot;);

//****************************** Neues erstes Objekt einfügen **********************************

		neu = new mvListe;

		neu-&gt;prev = head;
		neu-&gt;next = neu-&gt;prev;
		head = neu;

		neu-&gt;data = 1024;

		showList(head,&quot;Neues erstes Element&quot;);

//****************************** Neues letztes Objekt einfügen ***********************************

		neu = new mvListe;

		current = head;

		while (current-&gt;next!= NULL)
		{
			current = current-&gt;next;
		}
	 	neu-&gt;prev = current;
		current-&gt;next = neu;
		neu-&gt;next = NULL;

		neu-&gt;data = 2048;

		showList(head,&quot;Neues letztes Element&quot;);

//****************************** Neues beliebiges Objekt einfügen *********************************

		neu = new mvListe;

		int j = 0;
		int index = 5;
		current = head;

		while (j &lt; index)
		{
			current = current-&gt;next;
			j++;
		}

		neu-&gt;next = current-&gt;next;
		current-&gt;next = neu;

		neu-&gt;prev = current;

		neu-&gt;data = 3072;

		showList(head,&quot;Neues beliebiges Element&quot;);

  	// cout &lt;&lt; neu-&gt;prev-&gt;prev-&gt;prev-&gt;data &lt;&lt; endl &lt;&lt; endl; :confused: 

	  cout &lt;&lt; neu-&gt;next-&gt;next-&gt;next-&gt;data &lt;&lt; endl &lt;&lt; endl;

}

void showList(mvListe *head, char const headline[])
{
	cout &lt;&lt; headline &lt;&lt; endl &lt;&lt; endl;
	current = head;
	while (current != NULL)
	{
		cout &lt;&lt; current-&gt;data &lt;&lt; endl;
		current = current-&gt;next;
	}
	cout &lt;&lt; endl &lt;&lt; endl;
}
</code></pre>
<p>vielen Dank schon mal für eure Mühe</p>
<p>ShadowEater</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1119131</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1119131</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Thu, 17 Aug 2006 12:16:19 GMT</pubDate></item><item><title><![CDATA[Reply to Klitze kleines Problem mit verketteter Liste on Thu, 17 Aug 2006 12:39:46 GMT]]></title><description><![CDATA[<p>Sorry, das mag nun gemein klingen, aber der Code ist leider nicht so ganz das wahre, da blickt man gar nichts. Auf eine verkettete Liste kann man super OOP anwenden! Kennst du schon Klassen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1119151</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1119151</guid><dc:creator><![CDATA[Alphabet[logout]]]></dc:creator><pubDate>Thu, 17 Aug 2006 12:39:46 GMT</pubDate></item><item><title><![CDATA[Reply to Klitze kleines Problem mit verketteter Liste on Thu, 17 Aug 2006 12:44:09 GMT]]></title><description><![CDATA[<p>Hi <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Ja klar kenn ich Klassen,<br />
ich weiss auch was OOP ist usw.<br />
bin zwar Anfänger aber nicht mehr ganz so blutig. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Aber wieso ist der Code undurchsichtig ?</p>
<p>SE</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1119161</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1119161</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Thu, 17 Aug 2006 12:44:09 GMT</pubDate></item><item><title><![CDATA[Reply to Klitze kleines Problem mit verketteter Liste on Thu, 17 Aug 2006 13:00:39 GMT]]></title><description><![CDATA[<p>don't feed the trolls..</p>
<p>Es ist allerdings wirklich einfacher, wenn du aus mvListe eine Klasse machst die einige Funktionen (anhängen, löschen, etc.) schon mitbringt..</p>
<p>Damit sieht ein addElement() beispielsweise so aus:</p>
<pre><code class="language-cpp">class cListe {
    private:
       int data;
       cListe *prev, *next;
    public:
       cListe () {
           data = 0;
           prev = NULL;
           next = NULL;
       }
       ...

       void addElement (cListe *e) {
          if (this-&gt;next != NULL)
              next-&gt;addElement(e);
          else 
              this-&gt;next = e;
       }
}
</code></pre>
<p>Macht's doch einfacher, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1119180</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1119180</guid><dc:creator><![CDATA[DocJunioR]]></dc:creator><pubDate>Thu, 17 Aug 2006 13:00:39 GMT</pubDate></item><item><title><![CDATA[Reply to Klitze kleines Problem mit verketteter Liste on Thu, 17 Aug 2006 13:05:01 GMT]]></title><description><![CDATA[<p>Hi DocJunioR <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> ,</p>
<p>stimmt ist einfacher, aber mir gehts nur um das Previous Problem, weisst Du was da falsch läuft ?</p>
<p>Danke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
SE</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1119185</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1119185</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Thu, 17 Aug 2006 13:05:01 GMT</pubDate></item><item><title><![CDATA[Reply to Klitze kleines Problem mit verketteter Liste on Thu, 17 Aug 2006 13:06:42 GMT]]></title><description><![CDATA[<p>Nachtrag,</p>
<p>mit prv kann ich genau ein Element nach vorne mehr (wie mit next) nicht !</p>
<p>Bye<br />
SE</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1119187</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1119187</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Thu, 17 Aug 2006 13:06:42 GMT</pubDate></item><item><title><![CDATA[Reply to Klitze kleines Problem mit verketteter Liste on Thu, 17 Aug 2006 15:02:04 GMT]]></title><description><![CDATA[<p>Am Anfang legst Du 10 Elemente der Liste an und da bleibt prev einfach uninitialisiert. Ob die Zuweisung bei den anderen Einfügungen stimmen, hab ich jetzt nicht kontrolliert. Machs Dir einfacher, und bastel Dir eine eigene Funktion &quot;Element einfügen&quot;. So wie von Alphabet und DocJunioR vorgeschlagen. Wenn die einmal richtig funktioniert, kann Dir so ein Fehler nicht mehr passieren.</p>
<p>DJohn</p>
<p>EDIT: Die Rechtschreibung</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1119288</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1119288</guid><dc:creator><![CDATA[DJohn]]></dc:creator><pubDate>Thu, 17 Aug 2006 15:02:04 GMT</pubDate></item></channel></rss>