<?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[do{...}while(!(cin&amp;gt;&amp;gt;wert)); produziert Endlosschleife]]></title><description><![CDATA[<p>Guten Tag.<br />
Ich war auf der Suche nach einer Möglichkeit die Eingabe des Benutzers zu kontrollieren. Da habe ich mir dann folendes ausgedacht:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;
int main()
{
    int wahl;
    do{
      cout&lt;&lt;&quot;bitte geben sie ihre Wahl an: &quot;;
    }while (!(cin&gt;&gt;wahl));

    cout&lt;&lt;&quot;Sie haben gewaehlt: &quot;&lt;&lt;wahl&lt;&lt;endl;
    system(&quot;PAUSE&quot;);
    return 0;
}
</code></pre>
<p>Wenn man nun einen gültigen Integerwert eingibt funktioniert alles wie es soll.<br />
Gibt man z.B. einen Buchsteben ein dann entsteht eine Endlosschleife und der Benutzer kommt garnicht mehr zum Eingeben eines neuen Wertes.</p>
<p>Ich hoffe ihr könnt mir sagen wo der Fehler liegt und wie ich ihn beheben kann.<br />
Grüße Boris_DieKlinge</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/256412/do-while-cin-gt-gt-wert-produziert-endlosschleife</link><generator>RSS for Node</generator><lastBuildDate>Fri, 11 Sep 2026 09:34:14 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/256412.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 12 Dec 2009 13:22:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to do{...}while(!(cin&amp;gt;&amp;gt;wert)); produziert Endlosschleife on Sat, 12 Dec 2009 13:24:24 GMT]]></title><description><![CDATA[<p>Guten Tag.<br />
Ich war auf der Suche nach einer Möglichkeit die Eingabe des Benutzers zu kontrollieren. Da habe ich mir dann folendes ausgedacht:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;
int main()
{
    int wahl;
    do{
      cout&lt;&lt;&quot;bitte geben sie ihre Wahl an: &quot;;
    }while (!(cin&gt;&gt;wahl));

    cout&lt;&lt;&quot;Sie haben gewaehlt: &quot;&lt;&lt;wahl&lt;&lt;endl;
    system(&quot;PAUSE&quot;);
    return 0;
}
</code></pre>
<p>Wenn man nun einen gültigen Integerwert eingibt funktioniert alles wie es soll.<br />
Gibt man z.B. einen Buchsteben ein dann entsteht eine Endlosschleife und der Benutzer kommt garnicht mehr zum Eingeben eines neuen Wertes.</p>
<p>Ich hoffe ihr könnt mir sagen wo der Fehler liegt und wie ich ihn beheben kann.<br />
Grüße Boris_DieKlinge</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821535</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821535</guid><dc:creator><![CDATA[Boris_DieKlinge]]></dc:creator><pubDate>Sat, 12 Dec 2009 13:24:24 GMT</pubDate></item><item><title><![CDATA[Reply to do{...}while(!(cin&amp;gt;&amp;gt;wert)); produziert Endlosschleife on Sat, 12 Dec 2009 13:27:57 GMT]]></title><description><![CDATA[<p>Das liegt daran das cin in einem fehlerhaften zustand ist und der erst &quot;repariert&quot; werden muss bevor du cin wieder verwenden kannst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821539</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821539</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Sat, 12 Dec 2009 13:27:57 GMT</pubDate></item><item><title><![CDATA[Reply to do{...}while(!(cin&amp;gt;&amp;gt;wert)); produziert Endlosschleife on Sat, 12 Dec 2009 14:25:10 GMT]]></title><description><![CDATA[<p>könntest du mir vieleicht genauer beschreiben wie ich dabei vor zu gehen habe?<br />
ich habe das jetzt schon mit einem cin.sync() versucht aber das löst das problem nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821571</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821571</guid><dc:creator><![CDATA[Boris_DieKlinge]]></dc:creator><pubDate>Sat, 12 Dec 2009 14:25:10 GMT</pubDate></item><item><title><![CDATA[Reply to do{...}while(!(cin&amp;gt;&amp;gt;wert)); produziert Endlosschleife on Sat, 12 Dec 2009 14:43:12 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">cin.clear();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1821575</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821575</guid><dc:creator><![CDATA[player4245]]></dc:creator><pubDate>Sat, 12 Dec 2009 14:43:12 GMT</pubDate></item><item><title><![CDATA[Reply to do{...}while(!(cin&amp;gt;&amp;gt;wert)); produziert Endlosschleife on Sat, 12 Dec 2009 14:54:52 GMT]]></title><description><![CDATA[<p>Und was machen wir mit den Zeichen, die den Fehler verursacht haben und noch immer darauf warten aus dem Puffer ausgelesen zu 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/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <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="😕"
    /> :xmas2: :xmas1:</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821579</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821579</guid><dc:creator><![CDATA[HurgaHurga]]></dc:creator><pubDate>Sat, 12 Dec 2009 14:54:52 GMT</pubDate></item><item><title><![CDATA[Reply to do{...}while(!(cin&amp;gt;&amp;gt;wert)); produziert Endlosschleife on Sat, 12 Dec 2009 14:56:38 GMT]]></title><description><![CDATA[<p>die holen wir raus und da du es weisst solltest du mal posten wies funktioniert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821583</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821583</guid><dc:creator><![CDATA[player4245]]></dc:creator><pubDate>Sat, 12 Dec 2009 14:56:38 GMT</pubDate></item><item><title><![CDATA[Reply to do{...}while(!(cin&amp;gt;&amp;gt;wert)); produziert Endlosschleife on Sat, 12 Dec 2009 15:06:09 GMT]]></title><description><![CDATA[<p>Vielen dank.<br />
Eine Kombination aus cin.sync und cin.clear tut den job.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;
int main()
{
    int wahl;
    do{
      cout&lt;&lt;&quot;bitte geben sie ihre Wahl an: &quot;;
      cin.clear();
      cin.sync();
    }while (!(cin&gt;&gt;wahl));

    cout&lt;&lt;&quot;Sie haben gewaehlt: &quot;&lt;&lt;wahl&lt;&lt;endl;
    system(&quot;PAUSE&quot;);
    return 0;
}
</code></pre>
<p>Hier, für die jenigen die auch auf das Problem stoßen, die Links zur Reference<br />
der beiden befehle:<br />
<a href="http://www.cplusplus.com/reference/iostream/istream/sync/" rel="nofollow">http://www.cplusplus.com/reference/iostream/istream/sync/</a><br />
<a href="http://www.cplusplus.com/reference/iostream/ios/clear/" rel="nofollow">http://www.cplusplus.com/reference/iostream/ios/clear/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1821589</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1821589</guid><dc:creator><![CDATA[Boris_DieKlinge]]></dc:creator><pubDate>Sat, 12 Dec 2009 15:06:09 GMT</pubDate></item></channel></rss>