<?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[Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss?]]></title><description><![CDATA[<p>Hey Leute,</p>
<p>Die Frage steht bereits oben.</p>
<p>Und zwar möchte ich das eine Zahl eingegeben wird und wenn ein Buchstabe eingegeben wird dann soll etwas anderes geschehen:</p>
<p>cin &gt;&gt; Eingabe;</p>
<p>getchar ();</p>
<p>if (Eingabe= _____)</p>
<p>{ ... }</p>
<p>else</p>
<p>{...}</p>
<p>Bei dem Unterstrich soll die Bedingung eingeführt werden<br />
dass eine Ganzzahlige Zahl eingegeben werden muss</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/315061/wie-erstell-ich-eine-bedingung-bei-der-die-eingabe-eine-zahl-sein-muss</link><generator>RSS for Node</generator><lastBuildDate>Fri, 31 Jul 2026 13:34:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/315061.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 22 Mar 2013 19:17:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Fri, 22 Mar 2013 19:17:55 GMT]]></title><description><![CDATA[<p>Hey Leute,</p>
<p>Die Frage steht bereits oben.</p>
<p>Und zwar möchte ich das eine Zahl eingegeben wird und wenn ein Buchstabe eingegeben wird dann soll etwas anderes geschehen:</p>
<p>cin &gt;&gt; Eingabe;</p>
<p>getchar ();</p>
<p>if (Eingabe= _____)</p>
<p>{ ... }</p>
<p>else</p>
<p>{...}</p>
<p>Bei dem Unterstrich soll die Bedingung eingeführt werden<br />
dass eine Ganzzahlige Zahl eingegeben werden muss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308854</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308854</guid><dc:creator><![CDATA[Destrox]]></dc:creator><pubDate>Fri, 22 Mar 2013 19:17:55 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 08:37:00 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/u100590" rel="nofollow">Martin Richter</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/f1" rel="nofollow">MFC (Visual C++)</a> in das Forum <a href="http://www.c-plusplus.net/forum/f15" rel="nofollow">C++ (auch C++0x und C++11)</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308913</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308913</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Sat, 23 Mar 2013 08:37:00 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 09:30:55 GMT]]></title><description><![CDATA[<pre><code>#include &lt;cctype&gt;
#include &lt;iostream&gt;
#include &lt;string&gt;

int main()
{
    //einlesen
    std::string input;
    std::cin &gt;&gt; input;

    bool is_digit = true; // anfangs: ganzahl
    for (auto c : input) // jedes zeichen in input checken
        if (!std::isdigit(c)) // sobald die erste nicht-Zahl auftaucht...
        {
            is_digit = false; // als zeichen kennzeichnen
            break; // schleife verlassen
        }

    if (is_digit) // wenn zahl
        std::cout &lt;&lt; &quot;zahl&quot;;
    else // keine zahl
        std::cout &lt;&lt; &quot;zeichen&quot;;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2308914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308914</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sat, 23 Mar 2013 09:30:55 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:30:24 GMT]]></title><description><![CDATA[<pre><code>$ ./a.out
-123
zeichen
</code></pre>
<p>Ups.</p>
<p>Die einfachste Methode ist wohl</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;limits&gt;
#include &lt;string&gt;

...

int x; // bzw. double x;

if(std::cin &gt;&gt; x) {
  // Zahl
} else {
  std::string s;

  std::cin.clear();
  std::cin &gt;&gt; s;

  std::cerr &lt;&lt; s &lt;&lt; &quot; ist keine Zahl.\n&quot;;
}

// Wenn zeilenbasierte Eingabe gewollt ist: Rest der Zeile verwerfen.
std::cin.ignore(std::numeric_limits&lt;std::streamsize&gt;::max(), '\n');
</code></pre>
<p>Für zeilenweise Eingabe auch möglich:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;sstream&gt;
#include &lt;string&gt;

...

std::string line;
int x;

std::getline(std::cin, line);

if(std::istringstream(line) &gt;&gt; x) {
  // Zahl
} else {
  // line ist keine Zahl.
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2308932</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308932</guid><dc:creator><![CDATA[seldon]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:30:24 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:37:21 GMT]]></title><description><![CDATA[<p>Na ja, bei deinen Lösungen werden Eingaben wie 123abc als zahl eingestuft und abc muss gelöscht werden.<br />
Wenn der TE will, dass 123abc als Zeichen eingestuft wird, ist meine Lösung besser.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308935</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308935</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:37:21 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:38:23 GMT]]></title><description><![CDATA[<p>seldon schrieb:</p>
<blockquote>
<pre><code class="language-cpp">if(std::istringstream(line) &gt;&gt; x) {
</code></pre>
</blockquote>
<p>Das hier geht aber erst seit C++11, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308936</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:38:23 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:39:42 GMT]]></title><description><![CDATA[<p>Ich glaube schon.<br />
Meine Lösung braucht aber auch C++11.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308937</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308937</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:39:42 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:42:06 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<p>Das hier geht aber erst seit C++11, oder?</p>
</blockquote>
<p>Nein, wieso?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308938</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308938</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:42:06 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:45:41 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>out schrieb:</p>
<blockquote>
<p>Das hier geht aber erst seit C++11, oder?</p>
</blockquote>
<p>Nein, wieso?</p>
</blockquote>
<p>Hier wird doch ein temopräres Objekt erzeugt und operator&gt;&gt; nimmt doch nicht const-ref entgegegen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308939</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308939</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:45:41 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:47:57 GMT]]></title><description><![CDATA[<p>Oder ganz simpel:</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
using namespace std;

int main()
{
    string eingabe;
    cin &gt;&gt; eingabe;
    if(eingabe.find_first_not_of(&quot;0123456789&quot; == string::npos)
        cout &lt;&lt; &quot;Zahl !\n&quot;;
    else
        cout &lt;&lt; &quot;Etwas Anderes !\n&quot;;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2308941</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308941</guid><dc:creator><![CDATA[Ethon]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:47:57 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:53:37 GMT]]></title><description><![CDATA[<p>Ethon schrieb:</p>
<blockquote>
<p>Oder ganz simpel:</p>
<p>[code=&quot;cpp&quot;]#include &lt;iostream&gt;<br />
#include &lt;string&gt;<br />
using namespace std;</p>
<p>int main()<br />
{<br />
string eingabe;<br />
cin &gt;&gt; eingabe;<br />
if(eingabe.find_first_not_of(&quot;0123456789&quot;<strong>)</strong> == string::npos)<br />
cout &lt;&lt; &quot;Zahl !\n&quot;;<br />
else<br />
cout &lt;&lt; &quot;Etwas Anderes !\n&quot;;<br />
}[/code]</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /><br />
Stimmt, std::string hat ja so tolle Suchfunktionen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308942</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308942</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:53:37 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 11:58:18 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<p>Hier wird doch ein temopräres Objekt erzeugt und operator&gt;&gt; nimmt doch nicht const-ref entgegegen?</p>
</blockquote>
<p>Nein, die <code>int</code> -Überladung von <code>operator&gt;&gt;</code> ist ein Member von <code>std::istringstream</code> . Sowas ging schon mit C++98, sah man teilweise auch bei Copy-and-Swap:</p>
<pre><code>MyClass(origin).swap(*this);
</code></pre>
<p><code>std::istringstream(...) &gt;&gt; myString</code> wäre aber erst mit C++11 möglich, weil dieser <code>operator&gt;&gt;</code> eine freie Funktion ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2308943</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308943</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 23 Mar 2013 11:58:18 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstell ich eine Bedingung bei der die Eingabe eine Zahl sein muss? on Sat, 23 Mar 2013 12:05:28 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>out schrieb:</p>
<blockquote>
<p>Hier wird doch ein temopräres Objekt erzeugt und operator&gt;&gt; nimmt doch nicht const-ref entgegegen?</p>
</blockquote>
<p>Nein, die <code>int</code> -Überladung von <code>operator&gt;&gt;</code> ist ein Member von <code>std::istringstream</code> . Sowas ging schon mit C++98, sah man teilweise auch bei Copy-and-Swap:</p>
<pre><code>MyClass(origin).swap(*this);
</code></pre>
</blockquote>
<p>Grad als du es geschrieben hast, habs ichs auch gesehen. Hier wird ja <code>istream::operator&gt;&gt;(int&amp;)</code> aufgerufen... klar dann gehts. <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>
<p>Nexus schrieb:</p>
<blockquote>
<p><code>std::istringstream(...) &gt;&gt; myString</code> wäre aber erst mit C++11 möglich, weil dieser <code>operator&gt;&gt;</code> eine freie Funktion ist.</p>
</blockquote>
<p>Stimmt.</p>
<p>Danke dir <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/2308944</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2308944</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Sat, 23 Mar 2013 12:05:28 GMT</pubDate></item></channel></rss>