<?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[Alternative zu cin]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe vor ein Konsolenprogramm zu schreiben das ähnlich der CMD.exe läuft. Dazu ist es jedoch nötig eine alternative zu cin zu kennen, die es ermöglicht, während der Benutzereingabe schon auf das Eingegebene zu reagieren (z.B. autovervollständigung mit TAB). Da aber mit cin das ganze Programm pausiert wird bis der Benutzer die Eingabe abgeschlossen hat, ist dies damit nicht möglich. Könntet ihr mir alternativen nennen mit denen dies funktioniert?</p>
<p>MfG &amp; THX,<br />
Hitachi</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/167891/alternative-zu-cin</link><generator>RSS for Node</generator><lastBuildDate>Wed, 16 Sep 2026 09:41:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/167891.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 16 Dec 2006 08:57:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Alternative zu cin on Sat, 16 Dec 2006 08:57:14 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe vor ein Konsolenprogramm zu schreiben das ähnlich der CMD.exe läuft. Dazu ist es jedoch nötig eine alternative zu cin zu kennen, die es ermöglicht, während der Benutzereingabe schon auf das Eingegebene zu reagieren (z.B. autovervollständigung mit TAB). Da aber mit cin das ganze Programm pausiert wird bis der Benutzer die Eingabe abgeschlossen hat, ist dies damit nicht möglich. Könntet ihr mir alternativen nennen mit denen dies funktioniert?</p>
<p>MfG &amp; THX,<br />
Hitachi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1192826</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1192826</guid><dc:creator><![CDATA[Hitachi]]></dc:creator><pubDate>Sat, 16 Dec 2006 08:57:14 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Sat, 16 Dec 2006 09:00:26 GMT]]></title><description><![CDATA[<p>Sry wenn das jetzt Blödsinn ist.</p>
<p>Überprüfe mit kbhit() ob eine Taste gedrückt wurde, dann lese mit getchar() das Zeichen aus.</p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1192827</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1192827</guid><dc:creator><![CDATA[ceplusplus]]></dc:creator><pubDate>Sat, 16 Dec 2006 09:00:26 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Wed, 20 Dec 2006 14:20:51 GMT]]></title><description><![CDATA[<p>Ja danke das hat mich schon ein Stück weitergebracht. Ich habe das jetzt wie folgt realisiert:</p>
<pre><code class="language-cpp">bool enter_pressed = false;
char temp;
string cmd;

        while (!enter_pressed)
	{
		if(kbhit())
		{
			temp = getch();

			if (temp == 13) enter_pressed = true;
			else
			{
				cout&lt;&lt;temp;
				cmd.push_back(temp);
			}

		}
	}
</code></pre>
<p>Die Frage die sich mir jetzt stellt ist jedoch, wie kann ich eine Bedienung ähnlich der CMD.exe hinbekommen. Meine momentanen Hauptprobleme: Wenn ich die &quot;Lösch&quot; Taste drücke reagiert das Programm wie als wenn ich in CMD.exe die Pfeilnachlinks Taste drücken würde. Ich bräuchte also eine alternative zu cout&lt;&lt;temp; bezw. einen Befehl der ein Zeichen löscht. Ich hab schon überlegt cmd immer wieder auszugeben, weil das damit leicht zu managen ist, aber da fällt mir nix anderes ein als die ganze zeit system(&quot;cls&quot;) zu machen und das is ja auch doof vor allem weil man dann keine befehle eingegen kann da die antworten darauf sofort wieder gecleared werden würden. Gibt es vielleicht einen Befehl mit dem man immer nur die aktuelle Zeile löschen kann?<br />
Mein zweites Problem ist, dass wenn ich mit den Pfeiltasten navigieren will, dann kommen immer so kryptische Zeichen. Wie ist hier eine Verschiebung des Schreibkopfes zu realisieren???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195422</guid><dc:creator><![CDATA[Hitachi]]></dc:creator><pubDate>Wed, 20 Dec 2006 14:20:51 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Wed, 20 Dec 2006 14:55:16 GMT]]></title><description><![CDATA[<p>Hitachi schrieb:</p>
<blockquote>
<p>Hallo,</p>
<p>ich habe vor ein Konsolenprogramm zu schreiben das ähnlich der CMD.exe läuft. Dazu ist es jedoch nötig eine alternative zu cin zu kennen, die es ermöglicht, während der Benutzereingabe schon auf das Eingegebene zu reagieren (z.B. autovervollständigung mit TAB). Da aber mit cin das ganze Programm pausiert wird bis der Benutzer die Eingabe abgeschlossen hat, ist dies damit nicht möglich. Könntet ihr mir alternativen nennen mit denen dies funktioniert?</p>
</blockquote>
<p>In Standard C++ gibt es da keine Alternativen. Du musst wohl Betriebssystem abhängige Funktionen benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195442</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195442</guid><dc:creator><![CDATA[rüdiger]]></dc:creator><pubDate>Wed, 20 Dec 2006 14:55:16 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Wed, 20 Dec 2006 15:03:07 GMT]]></title><description><![CDATA[<p>Ich würde das so machen :</p>
<p>Du nimmst einen temporären string, wo die die gedrückten Tasten anhängst. Diesen String gibst Du immer an der gleichen Stelle aus, wenn sich was verändert hat. Die Taste Rückschritt fängst Du ab und ziehst dann ein Zeichen von diesem String ab und gibst diesen wieder aus (Gleiche Zeile und diese vorher löschen). So hatte ich mal vor Jahren eine Telnet Anwendung gemacht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1195451</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1195451</guid><dc:creator><![CDATA[SciFi]]></dc:creator><pubDate>Wed, 20 Dec 2006 15:03:07 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Thu, 21 Dec 2006 15:21:12 GMT]]></title><description><![CDATA[<p>ja an sowas hatte ich ja auch schon gedacht. Die Frage ist nur: Wie gebe ich einen string an einer bestimmten Stelle aus???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196182</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196182</guid><dc:creator><![CDATA[Hitachi]]></dc:creator><pubDate>Thu, 21 Dec 2006 15:21:12 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Thu, 21 Dec 2006 15:45:37 GMT]]></title><description><![CDATA[<p>Hallo</p>
<pre><code class="language-cpp">std::string test = &quot;Hallo&quot;;
cout&lt;&lt;test[1]; //müsste a stehen
</code></pre>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196193</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196193</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 21 Dec 2006 15:45:37 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Thu, 21 Dec 2006 16:24:51 GMT]]></title><description><![CDATA[<p>Das ist mir schon klar. Ich meine die Stelle im Konsolenfenster. Wie kann ich die Angeben. Die Sache ist doch die: Wenn ich einen Befehl eingebe<br />
&gt; call<br />
response<br />
response<br />
response<br />
&gt; &lt;Cursor steht hier&gt;</p>
<p>wie kann ich an der stelle des Cursors nun den String immer wieder ausgeben???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196225</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196225</guid><dc:creator><![CDATA[Hitachi]]></dc:creator><pubDate>Thu, 21 Dec 2006 16:24:51 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Thu, 21 Dec 2006 17:16:56 GMT]]></title><description><![CDATA[<p>Mir fallen 2 Sachen ein. Entweder gehst Du mit '\r' wieder an den Anfang der Zeile oder Du benutzt <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-86429.html" rel="nofollow">das</a> hier.</p>
<p>Gruß SciFi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196252</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196252</guid><dc:creator><![CDATA[SciFi-&amp;gt;ausgeloggt]]></dc:creator><pubDate>Thu, 21 Dec 2006 17:16:56 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Thu, 21 Dec 2006 18:23:28 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Sorry. Ich hatte das falsch verstanden.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196289</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196289</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 21 Dec 2006 18:23:28 GMT</pubDate></item><item><title><![CDATA[Reply to Alternative zu cin on Fri, 22 Dec 2006 17:17:03 GMT]]></title><description><![CDATA[<p>Ich weiss nicht ob ich dich richtig verstehe, aber versuch folgendes:<br />
Wenn der Anwender Backspace drückt schriebst du soetwas:</p>
<pre><code class="language-cpp">cout&lt;&lt;&quot;\b \b&quot;;
</code></pre>
<p>\b geht ein zeichen zurück und das Leerzeichen löscht den letzten Buchstaben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1196745</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1196745</guid><dc:creator><![CDATA[|M|]]></dc:creator><pubDate>Fri, 22 Dec 2006 17:17:03 GMT</pubDate></item></channel></rss>