<?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[Wieso wird bei STR+C die Schleife unendlich mal ausgeführt?]]></title><description><![CDATA[<p>MIt soll STRG+C soll verhindert werden, dass das Konsolenfenster geschlossen wird, das funktioniert auch doch sobald ich einmal STRG+C drücke, dann wird die Input Ausgabe unendlich mal ausgegeben, was ist hier falsch:</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &lt;iostream&gt;
#include &lt;string&gt;

using namespace std;

#pragma comment(lib, &quot;user32.lib&quot;)

BOOL WINAPI ConsoleHandler(DWORD CEvent)
{
    switch(CEvent)
    {
		case CTRL_C_EVENT: break;
    }
    return TRUE;
}

int main()
{
	string input;
	SetConsoleCtrlHandler(ConsoleHandler, TRUE);
	do
	{

		cout &lt;&lt; &quot;Eingabe:&quot;;
		getline(cin, input);

		//...

	}while(1);

	CloseHandle(ConsoleHandler);

return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/164645/wieso-wird-bei-str-c-die-schleife-unendlich-mal-ausgeführt</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Jul 2026 06:58:33 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/164645.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 11 Nov 2006 09:38:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wieso wird bei STR+C die Schleife unendlich mal ausgeführt? on Sat, 11 Nov 2006 09:38:15 GMT]]></title><description><![CDATA[<p>MIt soll STRG+C soll verhindert werden, dass das Konsolenfenster geschlossen wird, das funktioniert auch doch sobald ich einmal STRG+C drücke, dann wird die Input Ausgabe unendlich mal ausgegeben, was ist hier falsch:</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &lt;iostream&gt;
#include &lt;string&gt;

using namespace std;

#pragma comment(lib, &quot;user32.lib&quot;)

BOOL WINAPI ConsoleHandler(DWORD CEvent)
{
    switch(CEvent)
    {
		case CTRL_C_EVENT: break;
    }
    return TRUE;
}

int main()
{
	string input;
	SetConsoleCtrlHandler(ConsoleHandler, TRUE);
	do
	{

		cout &lt;&lt; &quot;Eingabe:&quot;;
		getline(cin, input);

		//...

	}while(1);

	CloseHandle(ConsoleHandler);

return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1172343</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1172343</guid><dc:creator><![CDATA[kernel64]]></dc:creator><pubDate>Sat, 11 Nov 2006 09:38:15 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso wird bei STR+C die Schleife unendlich mal ausgeführt? on Sat, 11 Nov 2006 09:56:27 GMT]]></title><description><![CDATA[<p>weil cin.eof() danach true ergibt. mach mal cin.clear() vor jeder eingabe. es löscht die fehlerflags.</p>
<blockquote>
<pre><code class="language-cpp">CloseHandle(ConsoleHandler);
</code></pre>
</blockquote>
<p>ConsoleHandler ist eine Funktion und kein Handle. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1172357</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1172357</guid><dc:creator><![CDATA[ewf]]></dc:creator><pubDate>Sat, 11 Nov 2006 09:56:27 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso wird bei STR+C die Schleife unendlich mal ausgeführt? on Sat, 11 Nov 2006 15:28:14 GMT]]></title><description><![CDATA[<p>Da der &quot;ConsoleHandler&quot; in einem anderen Thread aufgerufen wird!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1172546</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1172546</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Sat, 11 Nov 2006 15:28:14 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso wird bei STR+C die Schleife unendlich mal ausgeführt? on Sat, 11 Nov 2006 15:30:37 GMT]]></title><description><![CDATA[<p>Ne, da STRG + C eof bedeutet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1172548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1172548</guid><dc:creator><![CDATA[ewf]]></dc:creator><pubDate>Sat, 11 Nov 2006 15:30:37 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso wird bei STR+C die Schleife unendlich mal ausgeführt? on Sat, 11 Nov 2006 22:44:15 GMT]]></title><description><![CDATA[<p>Jo und dadurch wird der stream &quot;bad&quot;, und getline() tut nixmehr. Vermute ich mal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1172786</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1172786</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sat, 11 Nov 2006 22:44:15 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso wird bei STR+C die Schleife unendlich mal ausgeführt? on Sun, 12 Nov 2006 11:18:42 GMT]]></title><description><![CDATA[<p>Hab jetzt folgendes ergänzt und es funktioniert:</p>
<pre><code class="language-cpp">//...
cin.clear();

cout &lt;&lt; &quot;Eingabe:&quot;;
getline(cin, input);

//...
</code></pre>
<p>Die Zeile mit <strong>CloseHandle(ConsoleHandler);</strong> kann ich entfernen oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1172915</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1172915</guid><dc:creator><![CDATA[kernel64]]></dc:creator><pubDate>Sun, 12 Nov 2006 11:18:42 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso wird bei STR+C die Schleife unendlich mal ausgeführt? on Sun, 12 Nov 2006 11:34:54 GMT]]></title><description><![CDATA[<p>Das clear gehört nach den Aufruf von getline. Wenn du es davor aufrufst wird es einmal zu oft aufgerufen und verschwendet somit wertvolle CPU Zeit.<br />
Und das CloseHandle kann weg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1172924</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1172924</guid><dc:creator><![CDATA[-------]]></dc:creator><pubDate>Sun, 12 Nov 2006 11:34:54 GMT</pubDate></item></channel></rss>