<?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[Problem mit der getline Funktion]]></title><description><![CDATA[<p>Ich habe folgendes Programm geschrieben:</p>
<pre><code class="language-cpp">cin&gt;&gt;foo;

	if(foo[0]=='A'&amp;&amp;foo[1]=='B')
	{
		cout&lt;&lt;&quot;ok 1&quot;&lt;&lt;endl;
	}

	if(foo[0]=='A'&amp;&amp; foo[1]=='B'&amp;&amp; foo[2]=='C')
	{
		cout&lt;&lt;&quot;ok 2&quot;&lt;&lt;endl;
	}

	if(foo[0]=='A'&amp;&amp;foo[1]=='B'&amp;&amp;foo[2]=='C' &amp;&amp; foo[3] == 'D' )
	{
		cout&lt;&lt;&quot;ok 3&quot;&lt;&lt;endl;
	}

}

return 0;
}
</code></pre>
<p>Ausgabe:</p>
<p>AB<br />
ok 1<br />
ABCD<br />
ok 1<br />
ok 2<br />
ok 3</p>
<p>Wenn ich AB eingeben bekomme ich ok 1 ausgeben das ist ja in ordnung.<br />
Aber wenn ich dann ABCD eingeben dann bekomme ich ausgeben ok 1, ok 2 und ok 3</p>
<p>Wie kann ich das vermeiden?<br />
Ist es sinnvoll die Anzahl der Zeichen die eingeben wurden einfach mit 0 zu überschreiben? Oder gibt es da bessere Lösungen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/300192/problem-mit-der-getline-funktion</link><generator>RSS for Node</generator><lastBuildDate>Wed, 12 Aug 2026 22:51:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/300192.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 27 Feb 2012 14:58:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit der getline Funktion on Mon, 27 Feb 2012 14:58:19 GMT]]></title><description><![CDATA[<p>Ich habe folgendes Programm geschrieben:</p>
<pre><code class="language-cpp">cin&gt;&gt;foo;

	if(foo[0]=='A'&amp;&amp;foo[1]=='B')
	{
		cout&lt;&lt;&quot;ok 1&quot;&lt;&lt;endl;
	}

	if(foo[0]=='A'&amp;&amp; foo[1]=='B'&amp;&amp; foo[2]=='C')
	{
		cout&lt;&lt;&quot;ok 2&quot;&lt;&lt;endl;
	}

	if(foo[0]=='A'&amp;&amp;foo[1]=='B'&amp;&amp;foo[2]=='C' &amp;&amp; foo[3] == 'D' )
	{
		cout&lt;&lt;&quot;ok 3&quot;&lt;&lt;endl;
	}

}

return 0;
}
</code></pre>
<p>Ausgabe:</p>
<p>AB<br />
ok 1<br />
ABCD<br />
ok 1<br />
ok 2<br />
ok 3</p>
<p>Wenn ich AB eingeben bekomme ich ok 1 ausgeben das ist ja in ordnung.<br />
Aber wenn ich dann ABCD eingeben dann bekomme ich ausgeben ok 1, ok 2 und ok 3</p>
<p>Wie kann ich das vermeiden?<br />
Ist es sinnvoll die Anzahl der Zeichen die eingeben wurden einfach mit 0 zu überschreiben? Oder gibt es da bessere Lösungen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186257</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186257</guid><dc:creator><![CDATA[DerUnwissende2]]></dc:creator><pubDate>Mon, 27 Feb 2012 14:58:19 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit der getline Funktion on Mon, 27 Feb 2012 15:04:38 GMT]]></title><description><![CDATA[<p>Unter der Annahme, dass foo ein std::string ist,</p>
<pre><code class="language-cpp">if(foo == &quot;AB&quot;) {
  std::cout &lt;&lt; &quot;ok1\n&quot;;
} else if(foo == &quot;ABC&quot;) {
  std::cout &lt;&lt; &quot;ok2\n&quot;;
} else if(foo == &quot;ABCD&quot;) {
  std::cout &lt;&lt; &quot;ok3\n&quot;;
}
</code></pre>
<p>Wenn foo ein char[] ist, solltest du schleunigst einen std::string daraus machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186261</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186261</guid><dc:creator><![CDATA[seldon]]></dc:creator><pubDate>Mon, 27 Feb 2012 15:04:38 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit der getline Funktion on Mon, 27 Feb 2012 15:07:16 GMT]]></title><description><![CDATA[<p>Weil alle Bedinungen erfüllt werden</p>
<pre><code class="language-cpp">if(foo[0]=='A'&amp;&amp;foo[1]=='B'&amp;&amp;foo[2]=='C' &amp;&amp; foo[3] == 'D' )
    {
        cout&lt;&lt;&quot;ok 3&quot;&lt;&lt;endl;
    }    

    else if(foo[0]=='A'&amp;&amp; foo[1]=='B'&amp;&amp; foo[2]=='C')
    {
        cout&lt;&lt;&quot;ok 2&quot;&lt;&lt;endl;
    }

    else if(foo[0]=='A'&amp;&amp;foo[1]=='B')
    {
        cout&lt;&lt;&quot;ok 1&quot;&lt;&lt;endl;
    }
</code></pre>
<p>so müsste es gehen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186265</guid><dc:creator><![CDATA[LOLichHelfe]]></dc:creator><pubDate>Mon, 27 Feb 2012 15:07:16 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit der getline Funktion on Mon, 27 Feb 2012 15:09:38 GMT]]></title><description><![CDATA[<p>Angenommen ich will folgendes:</p>
<p>Der Benutzer soll eingeben: AB test.txt</p>
<p>Mein Programm soll erkennen die ersten Zeichen sind AB also rufe Funktion XY auf die eine Datei mit dem Namen test.txt erstellt.</p>
<p>Der Benutzer gibt als nächstes ein ABCD msg also ruft mein Programm die Funktion Box auf die eine Message Box mit dem string msg ausgibt.</p>
<p>Das ist jetzt nur ein Beispiel damit will ich verdeutlichen worauf ich hinaus will.</p>
<p>Egal ob ich char oder string nehme ich treffe doch immer wieder auf das Problem was im in meinem ersten Post beschrieben habe. <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="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2186266</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186266</guid><dc:creator><![CDATA[DerUnwissende2]]></dc:creator><pubDate>Mon, 27 Feb 2012 15:09:38 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit der getline Funktion on Mon, 27 Feb 2012 15:19:02 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;string&gt;
#include &lt;iostream&gt;

void ab_function() { std::cout &lt;&lt; &quot;Doing AB.\n&quot;; }
void abcd_function() { std::cout &lt;&lt; &quot;Doing ABCD.\n&quot;; }

int main() {
    std::string action;
    std::cout &lt;&lt; &quot;Bitte Action eingeben (AB oder ABCD): &quot;;
    std::cin &gt;&gt; action;
    if( action == &quot;AB&quot; ) {
        ab_function();
    } else if( action == &quot;ABCD&quot; ) {
        abcd_function();
    } else {
        std::cout &lt;&lt; &quot;Ungültige Action.\n&quot;;
    }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2186273</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2186273</guid><dc:creator><![CDATA[pyhax]]></dc:creator><pubDate>Mon, 27 Feb 2012 15:19:02 GMT</pubDate></item></channel></rss>