<?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[Prüfen ob Eingabe eine Zahl ist.]]></title><description><![CDATA[<p>Hi,<br />
ich würde gerne prüfen ob die Eingabe des Benutzers tatsächlich eine Zahl ist. Sicherlich könnte ich die Eingabe mit jeder einzelnen Zahl vergleichen, das erscheint mir nur etwas unpraktisch (besonders wenn man das mal auf Buchstaben anwenden will).</p>
<p>Wenn der Benutzer nämlich einen Buchstaben eingibt, wo das Programm eine Zahl erwartet (int) führt das zu einem unschönen Programmabsturz.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/186160/prüfen-ob-eingabe-eine-zahl-ist</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 08:18:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/186160.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 05 Jul 2007 15:56:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Thu, 05 Jul 2007 15:56:15 GMT]]></title><description><![CDATA[<p>Hi,<br />
ich würde gerne prüfen ob die Eingabe des Benutzers tatsächlich eine Zahl ist. Sicherlich könnte ich die Eingabe mit jeder einzelnen Zahl vergleichen, das erscheint mir nur etwas unpraktisch (besonders wenn man das mal auf Buchstaben anwenden will).</p>
<p>Wenn der Benutzer nämlich einen Buchstaben eingibt, wo das Programm eine Zahl erwartet (int) führt das zu einem unschönen Programmabsturz.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1319064</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319064</guid><dc:creator><![CDATA[Verzweifelter Neuling :(]]></dc:creator><pubDate>Thu, 05 Jul 2007 15:56:15 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Thu, 05 Jul 2007 16:04:12 GMT]]></title><description><![CDATA[<p>müll, sorry.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1319070</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319070</guid><dc:creator><![CDATA[mikey]]></dc:creator><pubDate>Thu, 05 Jul 2007 16:04:12 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Thu, 05 Jul 2007 16:15:36 GMT]]></title><description><![CDATA[<p>Nachtrag: Das Hauptproblem besteht darin, dass ich eingegebene Buchstaben nicht abfangen kann, weil ich einen int auf die Eingabe gelegt habe.</p>
<pre><code class="language-cpp">int length;

	cout &lt;&lt; &quot;Wie oft soll die Taste emuliert werden?&quot; &lt;&lt; endl;
	cin &gt;&gt; length; //Akzeptiert naürlich nur Ganzzahlwerte
	cout &lt;&lt; &quot;\n&quot;;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1319076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319076</guid><dc:creator><![CDATA[Verzweifelter Neuling :(]]></dc:creator><pubDate>Thu, 05 Jul 2007 16:15:36 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Thu, 05 Jul 2007 16:47:57 GMT]]></title><description><![CDATA[<p>dann mach es doch so</p>
<pre><code class="language-cpp">int length;

    cout &lt;&lt; &quot;Wie oft soll die Taste emuliert werden?&quot; &lt;&lt; endl;
    cin &gt;&gt; length; //Akzeptiert naürlich nur Ganzzahlwerte
    if(!cin)
    { 
      //tue etwas, also fehlerbehandlung bei einer nicht eingabe von einer zahl
    }
    cout&lt;&lt;endl;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1319091</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319091</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Thu, 05 Jul 2007 16:47:57 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Thu, 05 Jul 2007 16:51:42 GMT]]></title><description><![CDATA[<p>Hat sich erledigt. Hier die Lösung falls noch jemand so ein Problem haben sollte:</p>
<pre><code class="language-cpp">int length;
char buf[20];

cout &lt;&lt; &quot;Wie oft soll die Taste emuliert werden?&quot; &lt;&lt; endl;
	cin &gt;&gt; buf;

	if(sscanf(buf, &quot;%d&quot;, &amp;length))
	{
		cout &lt;&lt; &quot;\n&quot;; // Das steht da nur damit das Program einfach weiterarbeitet wie gewohnt
	}
	else
	{
		cout &lt;&lt; &quot;Ungueltige Eingabe&quot; &lt;&lt; endl;
		cout &lt;&lt; &quot;\n&quot;;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1319094</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319094</guid><dc:creator><![CDATA[Verzweifelter Neuling :(]]></dc:creator><pubDate>Thu, 05 Jul 2007 16:51:42 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Thu, 05 Jul 2007 16:59:13 GMT]]></title><description><![CDATA[<p>hallo,</p>
<p>alles klar wennde selber drauf gekommen bist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1319098</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319098</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Thu, 05 Jul 2007 16:59:13 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 06:35:33 GMT]]></title><description><![CDATA[<p>Verzweifelter Neuling <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="😞"
    /> schrieb:</p>
<blockquote>
<p>Hat sich erledigt. Hier die Lösung falls noch jemand so ein Problem haben sollte:</p>
</blockquote>
<p>Das ist keine Lösung, bestenfalls ein Workaround. Besser sieht es so aus:</p>
<pre><code class="language-cpp">int length;

cout &lt;&lt; &quot;Wie oft soll die Taste emuliert werden?&quot; &lt;&lt; endl;
cin &gt;&gt; length;

if(cin)//oder if(cin.good())
{
  cout &lt;&lt; &quot;\n&quot;;
}
else
{
  cout &lt;&lt; &quot;Ungueltige Eingabe&quot; &lt;&lt; endl;
  cin.clear();//Fehlerflags zurücksetzen
  cin.ignore();//die Falscheingabe aus dem Tastaturpuffer entsorgen
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1319366</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319366</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 06 Jul 2007 06:35:33 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 06:44:48 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<pre><code class="language-cpp">cin.ignore();//die Falscheingabe aus dem Tastaturpuffer entsorgen
}
</code></pre>
</blockquote>
<p>Sicher, nich eher:</p>
<pre><code class="language-cpp">std::cin.ignore( std::numeric_limits&lt; std::streamsize &gt;::max(), '\n' );
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1319377</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319377</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Fri, 06 Jul 2007 06:44:48 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 17:46:14 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>Verzweifelter Neuling <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="😞"
    /> schrieb:</p>
<blockquote>
<p>Hat sich erledigt. Hier die Lösung falls noch jemand so ein Problem haben sollte:</p>
</blockquote>
<p>Das ist keine Lösung, bestenfalls ein Workaround. Besser sieht es so aus:</p>
<pre><code class="language-cpp">int length;

cout &lt;&lt; &quot;Wie oft soll die Taste emuliert werden?&quot; &lt;&lt; endl;
cin &gt;&gt; length;

if(cin)//oder if(cin.good())
{
  cout &lt;&lt; &quot;\n&quot;;
}
else
{
  cout &lt;&lt; &quot;Ungueltige Eingabe&quot; &lt;&lt; endl;
  cin.clear();//Fehlerflags zurücksetzen
  cin.ignore();//die Falscheingabe aus dem Tastaturpuffer entsorgen
}
</code></pre>
</blockquote>
<p>Ja, das ist eindutig besser und auch übersichtlicher. Vielen Dank! <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/1319881</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319881</guid><dc:creator><![CDATA[Verzweifelter Neuling]]></dc:creator><pubDate>Fri, 06 Jul 2007 17:46:14 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 18:27:25 GMT]]></title><description><![CDATA[<p>David_pb schrieb:</p>
<blockquote>
<p>CStoll schrieb:</p>
<blockquote>
<pre><code class="language-cpp">cin.ignore();//die Falscheingabe aus dem Tastaturpuffer entsorgen
}
</code></pre>
</blockquote>
<p>Sicher, nich eher:</p>
<pre><code class="language-cpp">std::cin.ignore( std::numeric_limits&lt; std::streamsize &gt;::max(), '\n' );
</code></pre>
</blockquote>
<p>Beides ist &quot;öfters&quot; möglich. Das ignore() tuts bei mir auch komischerweise ganz gut <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Dennoch bevorzuge ich das:</p>
<pre><code class="language-cpp">string temp = &quot;&quot;;
getline(cin,temp);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1319904</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319904</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Fri, 06 Jul 2007 18:27:25 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 18:38:00 GMT]]></title><description><![CDATA[<p>Hm... ignore() ignoriert ja standardmäßig nur ein Zeichen. Bei mir (gcc) gings nicht, habs nochmal ausprobiert! <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1319910</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319910</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Fri, 06 Jul 2007 18:38:00 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 18:51:27 GMT]]></title><description><![CDATA[<p>David_pb schrieb:</p>
<blockquote>
<p>ich eher:</p>
<pre><code class="language-cpp">std::cin.ignore( std::numeric_limits&lt; std::streamsize &gt;::max(), '\n' );
</code></pre>
</blockquote>
<p>Da erhalte ich einmal den Fehler, dass es kein Element von std ist (obwohl es in der Autovervollständigung als solches angezeigt wird) und einmal, dass es ein nicht deklarierter Bezeichner ist!? <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>Muss ich da noch eine Header Datei includieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1319915</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319915</guid><dc:creator><![CDATA[Verzweifelter Neuling]]></dc:creator><pubDate>Fri, 06 Jul 2007 18:51:27 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 18:52:39 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;limits&gt;
#include &lt;iostream&gt;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1319918</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319918</guid><dc:creator><![CDATA[Mr. N]]></dc:creator><pubDate>Fri, 06 Jul 2007 18:52:39 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 18:53:37 GMT]]></title><description><![CDATA[<p>Ja:</p>
<pre><code class="language-cpp">#include &lt;limits&gt;
</code></pre>
<p>Edit: Zu spät <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1319920</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319920</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Fri, 06 Jul 2007 18:53:37 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 19:07:09 GMT]]></title><description><![CDATA[<p>Der echte Fehler ist der signed Typ wenn nur positive Zahlen gewollt sind.</p>
<p>Nimm unsigned (int) oder std::size_t.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1319928</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319928</guid><dc:creator><![CDATA[lolz]]></dc:creator><pubDate>Fri, 06 Jul 2007 19:07:09 GMT</pubDate></item><item><title><![CDATA[Reply to Prüfen ob Eingabe eine Zahl ist. on Fri, 06 Jul 2007 19:11:15 GMT]]></title><description><![CDATA[<p>David_pb schrieb:</p>
<blockquote>
<p>Hm... ignore() ignoriert ja standardmäßig nur ein Zeichen. Bei mir (gcc) gings nicht, habs nochmal ausprobiert! <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>
</blockquote>
<p>Ja, die ganze Geschichte mit ignore() etc ist für mich seltsam, nicht alles tut was es tun soll. Habe auch diesbezüglich schon Änderung des FAQ-Eintrags &quot;Automatisches Schließen verhindern&quot; gewünscht <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="😃"
    /> : <a href="http://c-plusplus.net/forum/viewtopic-var-t-is-183666.html" rel="nofollow">http://c-plusplus.net/forum/viewtopic-var-t-is-183666.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1319930</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1319930</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Fri, 06 Jul 2007 19:11:15 GMT</pubDate></item></channel></rss>