<?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[warum wird hier else ausgeführt?]]></title><description><![CDATA[<pre><code>#include &lt;iostream&gt;
using namespace std;
int main()
{
int a=5, b=3, c=2;
if (a&gt;b&gt;c) 
cout &lt;&lt; &quot;IN&quot;;
else
cout &lt;&lt; &quot;OUT&quot;;
return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/310274/warum-wird-hier-else-ausgeführt</link><generator>RSS for Node</generator><lastBuildDate>Tue, 04 Aug 2026 21:19:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/310274.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 07 Nov 2012 18:30:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to warum wird hier else ausgeführt? on Wed, 07 Nov 2012 18:31:22 GMT]]></title><description><![CDATA[<pre><code>#include &lt;iostream&gt;
using namespace std;
int main()
{
int a=5, b=3, c=2;
if (a&gt;b&gt;c) 
cout &lt;&lt; &quot;IN&quot;;
else
cout &lt;&lt; &quot;OUT&quot;;
return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2268665</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2268665</guid><dc:creator><![CDATA[khati]]></dc:creator><pubDate>Wed, 07 Nov 2012 18:31:22 GMT</pubDate></item><item><title><![CDATA[Reply to warum wird hier else ausgeführt? on Wed, 07 Nov 2012 18:38:00 GMT]]></title><description><![CDATA[<p>Zeile 6:</p>
<pre><code>if (a&gt;b&gt;c)
</code></pre>
<p>Tut hier nicht was du willst.<br />
Zuerst wird <code>a &gt; b</code> ausgewertet, das ergibt natürlich <code>true</code> .<br />
Und dann wird <code>true &gt; c</code> ausgewertet. <code>true</code> wird zu int konvertiert (damit man einen Vergleich machen kann), also ergibt das ganze: <code>(1 &gt; 2) == false</code> .</p>
<p>Daher wird immer OUT geschrieben.<br />
Was du eigentlich willst, ist</p>
<pre><code>if (a &gt; b &amp;&amp; b &gt; c) 
    cout &lt;&lt; &quot;IN&quot;;
else
    cout &lt;&lt; &quot;OUT&quot;;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2268668</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2268668</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Wed, 07 Nov 2012 18:38:00 GMT</pubDate></item><item><title><![CDATA[Reply to warum wird hier else ausgeführt? on Wed, 07 Nov 2012 18:36:04 GMT]]></title><description><![CDATA[<p>Der Ausdruck wird von links nach rechts ausgewertet:<br />
Also erst a &gt; b<br />
das ergibt true (1)<br />
und dann true(1) &gt; c<br />
und das ergibt false.<br />
Du willst wahrscheinlich</p>
<p>if((a &gt; b) &amp;&amp; (b &gt; c))<br />
...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2268669</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2268669</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Wed, 07 Nov 2012 18:36:04 GMT</pubDate></item><item><title><![CDATA[Reply to warum wird hier else ausgeführt? on Wed, 07 Nov 2012 18:36:52 GMT]]></title><description><![CDATA[<p>danke<br />
jetzt verstehe ich es</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2268671</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2268671</guid><dc:creator><![CDATA[khati]]></dc:creator><pubDate>Wed, 07 Nov 2012 18:36:52 GMT</pubDate></item><item><title><![CDATA[Reply to warum wird hier else ausgeführt? on Wed, 07 Nov 2012 18:46:30 GMT]]></title><description><![CDATA[<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /><br />
Ich muss noch den Standard zu der bool-&gt;int Konvertierung zitieren:</p>
<p>N3337<br />
Für integrale Basisdatentypen, s. §4.7 / 4.<br />
Für Fließkommazahl-Typen, s. §4.9 / 2.<br />
In beiden lautet die Definition:</p>
<blockquote>
<p>If the source type is bool, the value false is converted to zero and<br />
the value true is converted to one.</p>
</blockquote>
<p>Sprich: <code>true</code> wird immer zu 1, <code>false</code> wird zu 0.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2268673</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2268673</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Wed, 07 Nov 2012 18:46:30 GMT</pubDate></item></channel></rss>