<?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[Eingabeaufforderung in der Konsole beenden und weiter im Programm]]></title><description><![CDATA[<p>Hallo liebe Community,<br />
ich habe, wie es sich bereits im Titel andeutet das Problem, dass ich die Eingabeaufforderung nicht beenden kann.</p>
<p>Der Code:</p>
<pre><code>void Stechkarte::einlesen(void)
{
	char std_[5];
	char min_[5];

	cout &lt;&lt; &quot;Stunden und Minuten eingeben (std:min)&quot; &lt;&lt; endl;

	do
	{
		cin.getline(std_, 50, ':');
		cin.getline(min_, 50);

		std += atoi(std_);
		min += atoi(min_);
	} while (std_ || min_ != &quot;stop&quot;);

	cout &lt;&lt; &quot;gestoppt!!&quot; &lt;&lt; endl;
}
</code></pre>
<p>std und min sind private Variablen der Klasse, die jeweils mit 0 initialisiert wurden. Das einlesen funktioniert soweit, und es wird auch alles ordnungsgemäß in den Variablen abgelegt. Doch wie erkläre ich ihm, dass er nach keiner weiteren Eingabe warten soll, wenn er einen bestimmten string einliest wie &quot;stop&quot; z.B.</p>
<p>Danke im vorraus für eure Hilfe!</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/331118/eingabeaufforderung-in-der-konsole-beenden-und-weiter-im-programm</link><generator>RSS for Node</generator><lastBuildDate>Sat, 27 Jun 2026 15:42:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/331118.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 11 Feb 2015 17:04:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eingabeaufforderung in der Konsole beenden und weiter im Programm on Wed, 11 Feb 2015 17:04:59 GMT]]></title><description><![CDATA[<p>Hallo liebe Community,<br />
ich habe, wie es sich bereits im Titel andeutet das Problem, dass ich die Eingabeaufforderung nicht beenden kann.</p>
<p>Der Code:</p>
<pre><code>void Stechkarte::einlesen(void)
{
	char std_[5];
	char min_[5];

	cout &lt;&lt; &quot;Stunden und Minuten eingeben (std:min)&quot; &lt;&lt; endl;

	do
	{
		cin.getline(std_, 50, ':');
		cin.getline(min_, 50);

		std += atoi(std_);
		min += atoi(min_);
	} while (std_ || min_ != &quot;stop&quot;);

	cout &lt;&lt; &quot;gestoppt!!&quot; &lt;&lt; endl;
}
</code></pre>
<p>std und min sind private Variablen der Klasse, die jeweils mit 0 initialisiert wurden. Das einlesen funktioniert soweit, und es wird auch alles ordnungsgemäß in den Variablen abgelegt. Doch wie erkläre ich ihm, dass er nach keiner weiteren Eingabe warten soll, wenn er einen bestimmten string einliest wie &quot;stop&quot; z.B.</p>
<p>Danke im vorraus für eure Hilfe!</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2442287</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2442287</guid><dc:creator><![CDATA[xxlsuelo]]></dc:creator><pubDate>Wed, 11 Feb 2015 17:04:59 GMT</pubDate></item><item><title><![CDATA[Reply to Eingabeaufforderung in der Konsole beenden und weiter im Programm on Wed, 11 Feb 2015 17:39:23 GMT]]></title><description><![CDATA[<p>Kurze Antwort: du kannst C-Strings nicht per == vergleichen. Dafür solltest du std::string verwenden, da passieren dir diese ganzen Probleme nicht.</p>
<p>Symptome: Verwenden von C-Funktionen, C-Strings, Stechkarten die einlesen können und Wurstbroten, die Supermärkte sind, void-Parameter<br />
Diagnose: Wolf<br />
Therapie: Aktuelles Buch wegwerfen (vmtl. Wolf), damit der Schaden begrenzt bleibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2442291</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2442291</guid><dc:creator><![CDATA[Jodocus]]></dc:creator><pubDate>Wed, 11 Feb 2015 17:39:23 GMT</pubDate></item><item><title><![CDATA[Reply to Eingabeaufforderung in der Konsole beenden und weiter im Programm on Wed, 11 Feb 2015 17:58:40 GMT]]></title><description><![CDATA[<p>Jodocus schrieb:</p>
<blockquote>
<p>Kurze Antwort: du kannst C-Strings nicht per == vergleichen.</p>
</blockquote>
<p>Selbst wenn das ginge, wäre die Bedingung immer noch verkehrt.</p>
<p>Du hast: 'Wenn std_ oder min_ ungleich &quot;stop&quot; ' Du möchtest wohl<br />
'Wenn std_ ungleich &quot;stop&quot; oder min_ ungleich &quot;stop&quot; ' haben. Oder sollte da ein und hin?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2442295</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2442295</guid><dc:creator><![CDATA[DirkB]]></dc:creator><pubDate>Wed, 11 Feb 2015 17:58:40 GMT</pubDate></item><item><title><![CDATA[Reply to Eingabeaufforderung in der Konsole beenden und weiter im Programm on Wed, 11 Feb 2015 18:23:14 GMT]]></title><description><![CDATA[<p>DirkB schrieb:</p>
<blockquote>
<p>Jodocus schrieb:</p>
<blockquote>
<p>Kurze Antwort: du kannst C-Strings nicht per == vergleichen.</p>
</blockquote>
<p>Selbst wenn das ginge, wäre die Bedingung immer noch verkehrt.</p>
</blockquote>
<p>Schon klar, aber der TE hat erst mal ganz andere Probleme.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2442296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2442296</guid><dc:creator><![CDATA[Jodocus]]></dc:creator><pubDate>Wed, 11 Feb 2015 18:23:14 GMT</pubDate></item><item><title><![CDATA[Reply to Eingabeaufforderung in der Konsole beenden und weiter im Programm on Wed, 11 Feb 2015 19:15:42 GMT]]></title><description><![CDATA[<p>Normalerweise benutze ich immer std::string und auch std::vector. Jedoch entschied ich mich hier für C-Strings, weil die Parameterliste von cin.getline() das so haben wollte. Kommt noch hinzu, dass atoi() ebenfalls nur C-Strings als Parameter annimmt.</p>
<p>Beides sind Funktionen, die uns unser Prof gezeigt hat...</p>
<p>&quot;Diagnose: Wolf&quot; ist richtig. Breymann und andere Fachliteratur waren in der Hochschulbibliothek vergriffen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2442310</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2442310</guid><dc:creator><![CDATA[xxlsuelo]]></dc:creator><pubDate>Wed, 11 Feb 2015 19:15:42 GMT</pubDate></item><item><title><![CDATA[Reply to Eingabeaufforderung in der Konsole beenden und weiter im Programm on Wed, 11 Feb 2015 19:30:13 GMT]]></title><description><![CDATA[<p>xxlsuelo schrieb:</p>
<blockquote>
<p>Jedoch entschied ich mich hier für C-Strings, weil die Parameterliste von cin.getline() das so haben wollte.</p>
</blockquote>
<p>Es gibt auch getline für strings.</p>
<blockquote>
<p>Kommt noch hinzu, dass atoi() ebenfalls nur C-Strings als Parameter annimmt.</p>
</blockquote>
<p>atoi ist ja auch so ziemlich die letzte Methode für diesen Einsatzzweck. stoi arbeitet mit std::string und bietet im Gegensatz zu atoi auch eine annehmbare Fehlerbehandlung. Und selbst wenn, kann man sich mit c_str jederzeit aus einem std::string einen C-String machen.</p>
<p>Erfahrungsgemäß ist aber der Wille zum Einsatz von atoi (und stoi) fast immer darauf zurück zu führen, dass jemand aus irgendeinem Grund erst eine Zeichenkette aus einem Stream liest und die dann in eine Zahl umwandeln möchte, anstatt sofort eine Zahl aus dem Stream zu lesen. So auch hier. Wieso nicht einfach direkt die Zahlen einlesen? Wozu dieser Umweg über drei Ecken?</p>
<blockquote>
<p>Beides sind Funktionen, die uns unser Prof gezeigt hat...</p>
<p>&quot;Diagnose: Wolf&quot; ist richtig.</p>
</blockquote>
<p>Ihr Armen. Gleich vom Anfang an dazu verdammt, niemals richtig C++ zu lernen und dann nach ein paar Monaten frustriert alles hin zu werfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2442316</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2442316</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 11 Feb 2015 19:30:13 GMT</pubDate></item><item><title><![CDATA[Reply to Eingabeaufforderung in der Konsole beenden und weiter im Programm on Wed, 11 Feb 2015 19:46:53 GMT]]></title><description><![CDATA[<p>Erstmal danke für die Hilfe! Ich werde die vorgeschlagenen Funktionen mal austesten.</p>
<p>SeppJ schrieb:</p>
<blockquote>
<p>Ihr Armen. Gleich vom Anfang an dazu verdammt, niemals richtig C++ zu lernen und dann nach ein paar Monaten frustriert alles hin zu werfen.</p>
</blockquote>
<p>Mag vielleicht in einigen Fällen zuzutreffen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2442321</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2442321</guid><dc:creator><![CDATA[xxlsuelo]]></dc:creator><pubDate>Wed, 11 Feb 2015 19:46:53 GMT</pubDate></item></channel></rss>