<?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[cin wird übersprungen]]></title><description><![CDATA[<p>Hallo.</p>
<p>Kann es sein, dass cin-Anweisungen in einemProgramm übersprungen werden können? Denn genau das macht mein Programm permanent.</p>
<pre><code>int j=0;
    Anfang:                   // Marke (Anfang des Programms)
    int ccc=0, pos=-1;
    cout &lt;&lt; &quot;Input [&quot; &lt;&lt; in &lt;&lt; &quot;] :  &quot;;      // Gibt Eingabenr. aus
    cin &gt;&gt; eingabe;                          // Prompt fuer Eingabe
    eingabe=eingabe+&quot;?&quot;;
</code></pre>
<p>Dieser Programmteil bittet um eine Eingabe und liest eine String-Eingabe ein. Anschließend kommt dann ein größerer Programmteil, der den String verarbeitet. Nach diesem Programmteil kommt dann die Anweisung goto Anfang, das heißt, anschließend wird wieder zur Eingabeaufforderung zurückgesprungen und es kann ein neuer String eingegeben werden.</p>
<p>Problematisch wird es nur aus irgendeinem Grund, wenn in dem einzugebenden String Leerzeichen enthalten sind. Dann wird der nachfolgende Programmteil genauso oft ausgeführt, wie Leerzeichen in dem string waren. Das heißt, bei 3 Leerzeichen läuft das Programm drei Mal durch und überspringt dabei auch drei mal die cin-Anweisung.</p>
<p>Woran kann das liegen? Man kann doch cin nicht einfach ein paar mal überspringen, ehe etwas neues eingebgeen wurde? <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="😕"
    /></p>
<p>Grüße vom Infostudent.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/168458/cin-wird-übersprungen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 16 Sep 2026 09:41:14 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/168458.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 22 Dec 2006 16:52:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to cin wird übersprungen on Fri, 22 Dec 2006 16:52:20 GMT]]></title><description><![CDATA[<p>Hallo.</p>
<p>Kann es sein, dass cin-Anweisungen in einemProgramm übersprungen werden können? Denn genau das macht mein Programm permanent.</p>
<pre><code>int j=0;
    Anfang:                   // Marke (Anfang des Programms)
    int ccc=0, pos=-1;
    cout &lt;&lt; &quot;Input [&quot; &lt;&lt; in &lt;&lt; &quot;] :  &quot;;      // Gibt Eingabenr. aus
    cin &gt;&gt; eingabe;                          // Prompt fuer Eingabe
    eingabe=eingabe+&quot;?&quot;;
</code></pre>
<p>Dieser Programmteil bittet um eine Eingabe und liest eine String-Eingabe ein. Anschließend kommt dann ein größerer Programmteil, der den String verarbeitet. Nach diesem Programmteil kommt dann die Anweisung goto Anfang, das heißt, anschließend wird wieder zur Eingabeaufforderung zurückgesprungen und es kann ein neuer String eingegeben werden.</p>
<p>Problematisch wird es nur aus irgendeinem Grund, wenn in dem einzugebenden String Leerzeichen enthalten sind. Dann wird der nachfolgende Programmteil genauso oft ausgeführt, wie Leerzeichen in dem string waren. Das heißt, bei 3 Leerzeichen läuft das Programm drei Mal durch und überspringt dabei auch drei mal die cin-Anweisung.</p>
<p>Woran kann das liegen? Man kann doch cin nicht einfach ein paar mal überspringen, ehe etwas neues eingebgeen wurde? <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="😕"
    /></p>
<p>Grüße vom Infostudent.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196732</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196732</guid><dc:creator><![CDATA[Infostudent]]></dc:creator><pubDate>Fri, 22 Dec 2006 16:52:20 GMT</pubDate></item><item><title><![CDATA[Reply to cin wird übersprungen on Fri, 22 Dec 2006 17:07:30 GMT]]></title><description><![CDATA[<p>Versuch mal ein</p>
<pre><code class="language-cpp">cin.get();
</code></pre>
<p>vor dein</p>
<pre><code class="language-cpp">cin&gt;&gt;eingabe;
</code></pre>
<p>zu setzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196739</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196739</guid><dc:creator><![CDATA[|M|]]></dc:creator><pubDate>Fri, 22 Dec 2006 17:07:30 GMT</pubDate></item><item><title><![CDATA[Reply to cin wird übersprungen on Fri, 22 Dec 2006 17:12:50 GMT]]></title><description><![CDATA[<p>Da liegt ganz einfach daran, dass cin Leerzeichen als Trennzeichen interpretiert. Das heißt, wenn du einen Text mit Leerzeichen eingibst, wird das erste Wort vor dem Leerzeichen benutzt und der restliche Teil der Eingabe <strong>bleibt im Puffer von cin</strong>. Dadurch wird dann beim nächsten Mal die Eingabe übersprungen, da ja noch Teile im Puffer sind, die stattdessen verwendet werden.</p>
<p>Also musst du entweder vor dem cin den Puffer leeren, oder, was du wahrscheinlich eher möchtest den ganzen String auch mit Leerzeichen einlesen. Das geht mit</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
using namespace std;

int main()
{
    string Eingabe;
    getline(cin, Eingabe);
    return 0;
}
</code></pre>
<p>Felix :xmas2:</p>
<p>EDIT: Darüber, dass man normalerweise lieber Schleifen anstatt goto benutzt, möchte ich hier eigentlich gar nicht reden... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196740</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196740</guid><dc:creator><![CDATA[Phoemuex]]></dc:creator><pubDate>Fri, 22 Dec 2006 17:12:50 GMT</pubDate></item><item><title><![CDATA[Reply to cin wird übersprungen on Fri, 22 Dec 2006 18:18:21 GMT]]></title><description><![CDATA[<p>Danke, das mit getline hat funktioniert! <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>Grüße,<br />
Infostudent.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196763</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196763</guid><dc:creator><![CDATA[Infostudent]]></dc:creator><pubDate>Fri, 22 Dec 2006 18:18:21 GMT</pubDate></item></channel></rss>