<?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[While Schleife?!]]></title><description><![CDATA[<p>Hallo. Ich habe hier einen kurzen Scriptteil, dabei habe ich leider einige Probleme:</p>
<pre><code class="language-cpp">while (Test[i]) i++;

i--;
for (j=0; j&lt;i; j++, i--)
	{
	// irrelevant ...
	}
</code></pre>
<p>Meine Fragen lauten:</p>
<p>Was bedeutet das i++ und direkt danach i--?<br />
Soll das heißen, dass i erst um 1 erhöht und danach<br />
sofort wieder um 1 gesenkt wird?<br />
Welchen Sinn würde das machen? Kann es sein, das bei<br />
der While Schleife eine Klammerung fehlt? also ab while<br />
bis zum Ende des Scripts?</p>
<p>Wäre nett, wenn mir jemand diese Frage beantworten<br />
könnte. Ich versteh's leider nicht</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/228144/while-schleife</link><generator>RSS for Node</generator><lastBuildDate>Tue, 29 Sep 2026 17:00:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/228144.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 24 Nov 2008 16:37:08 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to While Schleife?! on Tue, 25 Nov 2008 13:24:27 GMT]]></title><description><![CDATA[<p>Hallo. Ich habe hier einen kurzen Scriptteil, dabei habe ich leider einige Probleme:</p>
<pre><code class="language-cpp">while (Test[i]) i++;

i--;
for (j=0; j&lt;i; j++, i--)
	{
	// irrelevant ...
	}
</code></pre>
<p>Meine Fragen lauten:</p>
<p>Was bedeutet das i++ und direkt danach i--?<br />
Soll das heißen, dass i erst um 1 erhöht und danach<br />
sofort wieder um 1 gesenkt wird?<br />
Welchen Sinn würde das machen? Kann es sein, das bei<br />
der While Schleife eine Klammerung fehlt? also ab while<br />
bis zum Ende des Scripts?</p>
<p>Wäre nett, wenn mir jemand diese Frage beantworten<br />
könnte. Ich versteh's leider nicht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620034</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620034</guid><dc:creator><![CDATA[freddy96]]></dc:creator><pubDate>Tue, 25 Nov 2008 13:24:27 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Mon, 24 Nov 2008 16:57:23 GMT]]></title><description><![CDATA[<p>Hallo</p>
<blockquote>
<p>Soll das heißen, dass i erst um 1 erhöht und danach<br />
sofort wieder um 1 gesenkt wird?</p>
</blockquote>
<p>Du must genauer lesen : j wird um 1 erhöht, i wird um 1 gesenkt. Sind zwei verschiedene Buchstaben und damit verschiedene Variablen. Mit diesem Hinweis wirst du den Code dann vielleicht selber verstehen. Und außerdem kannst du den Code ja auch mal mit einem Compiler ausprobieren.</p>
<p>Du beziehst deine Aussage vermutlich mit auf die while-Schleife? Dann solltest du daran denken das die while- und die for-Schleife zwei getrennte Blöcke sind. Das ist syntaktisch richtig, aber durch die weggelassenen {}-Klammern bei der while-Schleife vielleicht verwirrend. Zuerst wird die while-Schleife abgearbeitet (i wird also potentiell mehrmals erhöht), dann die for-Schleife (i wird wieder gesenkt).</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620050</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620050</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 24 Nov 2008 16:57:23 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Mon, 24 Nov 2008 16:55:12 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">int i,j = 0;
char k;
cstring text [4]= (&quot;Test&quot;); //welchen typ hat cstring?
</code></pre>
<p>falls du die frage nicht beantworten kannst, sag mir doch mal, was du davor alles includest oder versuch mal, ob deine ide beim rechtsklick auf cstring dir &quot;Go To Declaration&quot; anbietet...</p>
<p>Was bedeutet das i++ und direkt danach i--?</p>
<pre><code class="language-cpp">for (j=0; j&lt;i; j++, i--)
</code></pre>
<p>was daran genau verstehst du nicht?<br />
oder anders: sag doch mal, was daran du verstehst und was es heißt...</p>
<p>Kann es sein, das bei der While Schleife eine Klammerung fehlt?</p>
<pre><code class="language-cpp">while (Test[i]) i++;
</code></pre>
<p>nein, hier fehlt nichts... so lange Test[i] != 0 ist, wird i incrementiert - auf den sinn dahinter wirst du wohl selbst kommen, wenn du weist, dass 0 das letzte zeichen im string ist ^^ (wobei wir wieder dabei wären, was cstring ist - und vermutlich sollte das oben <code>cstring test [5] (&quot;Test&quot;);</code> heißen - und cstring wird char sein.<br />
Wenn du diesen Sinn verstanden hast, verstehst du auch das <code>i--;</code> vor der for-schleife...</p>
<p>Ich scheitere momentan an dieser merkwürdigen While Schleife mit i++ i--<br />
Ich sehe da keine while schleife mit diesen beiden anweisungen... Das i-- was du vermutlich meinst, ist außerhalb der schleife - um genauer zu sein danach.</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620051</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620051</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Mon, 24 Nov 2008 16:55:12 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Mon, 24 Nov 2008 17:16:57 GMT]]></title><description><![CDATA[<p>Erstmal danke für eure Hilfe, bin jetzt schon ein gutes Stück weiter <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>Gut heißt jetzt also, er fragt: Zeichen 0 vorhanden?<br />
Zeichen 0 ist das das erste &quot;T&quot;. Also ungleich 0 und somit wird i um 1 erhöht.<br />
Das macht er nun noch mit Zeichen 1,2,3 und 4. Zeichen ist dann 0? Weil ja<br />
da das &quot;Test&quot; schon zuende ist. Also bleibt i bei 3.</p>
<p>i ist jetzt 3<br />
wird dann wieder um 1 gesenkt.<br />
i ist jetzt 2.</p>
<p>Lieg ich da jetzt richtig?</p>
<p>Also kommt am Ende nach der For Schleife &quot;eT&quot; raus? Richtig?</p>
<p>Anmerkung:<br />
Das cstring char ist, kann gut sein.<br />
Der Lehrer hat das nicht vorgegeben sondern nur gesagt:<br />
text ist ein cstring mit entsprechender Länge und dem Inhalt test.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620057</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620057</guid><dc:creator><![CDATA[freddy96]]></dc:creator><pubDate>Mon, 24 Nov 2008 17:16:57 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Mon, 24 Nov 2008 17:12:49 GMT]]></title><description><![CDATA[<p>freddy96 schrieb:</p>
<blockquote>
<p>Gut heißt jetzt also, er fragt: Zeichen 0 vorhanden?<br />
Zeichen 0 ist das das erste &quot;T&quot;. Also ungleich 0 und somit wird i um 1 erhöht.<br />
Das macht er nun noch mit Zeichen 1,2,3 und 4. Zeichen ist dann 0? Weil ja<br />
da das &quot;Test&quot; schon zuende ist. Also bleibt i bei 3.</p>
</blockquote>
<p>Genau das macht die While-Schleife und das i--; darunter...<br />
Man könnte es auch so formulieren: Es gibt den Index des letzten Zeichens aus...</p>
<p>Jetzt kommt die for-Schleife...</p>
<p>Welche Entwicklungsumgebung hast du denn nun? Visual Studio? Auch wenn nicht: es wird auf jeden fall einen debugger geben - und damit kannste wunderbar nachvollziehen (sofern du breakpoints gesetzt hast), was wo wie gemacht wird, was rauskommt und wieso das so ist..</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620064</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620064</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Mon, 24 Nov 2008 17:12:49 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Mon, 24 Nov 2008 17:38:18 GMT]]></title><description><![CDATA[<p>unskilled schrieb:</p>
<blockquote>
<p>Welche Entwicklungsumgebung hast du denn nun? Visual Studio? Auch wenn nicht: es wird auf jeden fall einen debugger geben - und damit kannste wunderbar nachvollziehen (sofern du breakpoints gesetzt hast), was wo wie gemacht wird, was rauskommt und wieso das so ist..</p>
</blockquote>
<p>Wir arbeiten mit gedit in der Schule. Aber die Aufgabe hier soll<br />
ja auf dem Papier gelöst werden und gesagt werden, was bei text[] am Ende rauskommt.</p>
<p>&quot;eT&quot; kommt raus?! Oder?!<br />
Edit: &quot;TeeT&quot; meinte ich, hab ganz vergessen, das der Rest ja erhalten bleibt<br />
Edit 2: &quot;tseT&quot; meinte ich, hab den Fehler jetzt gemerkt <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>Eine frage noch:<br />
Oben hatte jemand geschrieben: char [5] &quot;Test&quot;<br />
Warum aber 5?<br />
Zeichen 0 ist das T<br />
Zeichen 1 ist das e<br />
Zeichen 2 ist das s<br />
Zeichen 3 ist das t<br />
Zeichen 4 ist die \0<br />
Aber warum dann 5?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620069</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620069</guid><dc:creator><![CDATA[freddy96]]></dc:creator><pubDate>Mon, 24 Nov 2008 17:38:18 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Mon, 24 Nov 2008 18:08:44 GMT]]></title><description><![CDATA[<p>Aber warum dann 5?</p>
<pre><code class="language-cpp">Zeichen 0 ist das T 
Zeichen 1 ist das e 
Zeichen 2 ist das s 
Zeichen 3 ist das t 
Zeichen 4 ist die \0 
/* ab irgendeiner zeilenanzahl
werden hier doch zeilennummern
angezeigt (ab 8 ^^)*/
</code></pre>
<p>wie viele elemente hat dieses array also?</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620104</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620104</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Mon, 24 Nov 2008 18:08:44 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Tue, 25 Nov 2008 00:23:45 GMT]]></title><description><![CDATA[<p>Ist die maximale Arraylänge also anders als die am Ende ausgelesene Ziffernstelle?</p>
<p>Sprich ist wenn ich ein Array [3] = &quot;AB&quot; definiere das A die erste und das B die zweite Stelle? \0 die dritte Stelle.<br />
Und beim Auslesen ist dann das A die 0. Stelle und das B die erste Stelle, und \0 die zweite Stelle?</p>
<p>Heißt man kann bei einem Array [3] niemals die [3] Stelle auslesen? (also sinnvoll auslesen... klar kann man sie auslesen aber sie wird immer leer sein)</p>
<p>Wäre zwar logisch, da ja ein Array[0] nicht geht, aber ist irgendwie komisch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620251</guid><dc:creator><![CDATA[freddy96]]></dc:creator><pubDate>Tue, 25 Nov 2008 00:23:45 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Tue, 25 Nov 2008 01:31:00 GMT]]></title><description><![CDATA[<p>Ich hab jetzt nicht genau verstanden was deine Frage ist aber falls es das ist:</p>
<p>Ein Array[5]. Ist ein Feld über 5 Elemente.<br />
Der Index startet allerdings bei 0 und nicht bei 1<br />
Also Array[0] spricht das erste Element an.<br />
Array[4] das letzte Element</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620257</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620257</guid><dc:creator><![CDATA[Kuldren]]></dc:creator><pubDate>Tue, 25 Nov 2008 01:31:00 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Tue, 25 Nov 2008 07:36:13 GMT]]></title><description><![CDATA[<p>Das ist nur ein logisches Problem, dass du da hast. <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>Anderst, als man es im täglichen Leben gewohnt sind fängt in Programmen ein Index bei 0 und nicht bei 1 an.</p>
<pre><code class="language-cpp">int a[5]; // mach mir ein Array mit 5 int's
std::cout &lt;&lt; a[ 0 ]; // Das Element mit Index 0 ist das erste Element.
a [ 1 ]; // zweites Element
...
a [ 4 ];  // fünftes Element
a [ 5 ]; // sechtes Element ?!
</code></pre>
<p>Da du ja lediglich 5 Element in deinem Array hast geht die letzte Zeile nicht. Oder sagen wir es so du greifst auf Speicher zu, den nicht nix angeht. Und:</p>
<blockquote>
<p>Heißt man kann bei einem Array [3] niemals die [3] Stelle auslesen? (also sinnvoll auslesen... klar kann man sie auslesen aber sie wird immer leer sein)</p>
</blockquote>
<p>leer ist ein so weiter Begriff. <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="😉"
    /> - Auch 0 wäre etwas..<br />
Ungücklicherweise kann man das ganze kompilieren und wenn man lediglich eine Ausgabe macht funktioniert es auch. (meist ist der Wert sowas, wie 888932.. ).<br />
Spätestens bei der Zuweisung auf den Speicher wird es einen Fehler geben. (Muss aber nicht, da undefiniert..)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1620278</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620278</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Tue, 25 Nov 2008 07:36:13 GMT</pubDate></item><item><title><![CDATA[Reply to While Schleife?! on Tue, 25 Nov 2008 11:50:48 GMT]]></title><description><![CDATA[<p>Wenn du deinen Lehrer ärgern und dich zum Affen machen willst (wie ich jetzt vermutlich :D) frag ihn doch mal warum er nicht folgendes macht:</p>
<pre><code class="language-cpp">#include &lt;string&gt;
#include &lt;algorithm&gt;
//...
std::string text = &quot;test&quot;;
std::reverse(text.begin(), text.end());
</code></pre>
<p><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>
]]></description><link>https://www.c-plusplus.net/forum/post/1620388</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1620388</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Tue, 25 Nov 2008 11:50:48 GMT</pubDate></item></channel></rss>