<?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[klammerung]]></title><description><![CDATA[<p>kann mir jemand erklären warum :<br />
x = -4 * i++ – 6 % 4;</p>
<p>so geklammert wird:<br />
x = ( ((-4) * (i++)) – (6 % 4) )</p>
<p>ich hätte angefangen i++ zu klammern weil es den höchsten vorrang hat, dann * / % von rechts nach links, weil es den nächst höchsten hat dann - weil niedrigeren vorrang aber es verwirrt mich einfach ..</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/306002/klammerung</link><generator>RSS for Node</generator><lastBuildDate>Sat, 08 Aug 2026 12:25:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/306002.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 14 Jul 2012 16:06:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to klammerung on Sat, 14 Jul 2012 16:06:30 GMT]]></title><description><![CDATA[<p>kann mir jemand erklären warum :<br />
x = -4 * i++ – 6 % 4;</p>
<p>so geklammert wird:<br />
x = ( ((-4) * (i++)) – (6 % 4) )</p>
<p>ich hätte angefangen i++ zu klammern weil es den höchsten vorrang hat, dann * / % von rechts nach links, weil es den nächst höchsten hat dann - weil niedrigeren vorrang aber es verwirrt mich einfach ..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2232781</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2232781</guid><dc:creator><![CDATA[Fragä]]></dc:creator><pubDate>Sat, 14 Jul 2012 16:06:30 GMT</pubDate></item><item><title><![CDATA[Reply to klammerung on Sat, 14 Jul 2012 16:15:00 GMT]]></title><description><![CDATA[<p>Das unaere '-' hat hoehere Prioritaet als das binary '*'.</p>
<p>Zum Beispiel:Bei '-1' ist es ein unaeres Minus. Bei '1 - 2' ist es ein binaeres Minus.</p>
<p>Siehe hier die <a href="http://en.cppreference.com/w/cpp/language/operator_precedence" rel="nofollow">Operator Precedence</a> Tabelle.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2232785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2232785</guid><dc:creator><![CDATA[icarus2]]></dc:creator><pubDate>Sat, 14 Jul 2012 16:15:00 GMT</pubDate></item><item><title><![CDATA[Reply to klammerung on Sat, 14 Jul 2012 16:31:52 GMT]]></title><description><![CDATA[<blockquote>
<p>aber es verwirrt mich einfach ..</p>
</blockquote>
<p>Was verwirrt dich? Erklär doch was du nicht verstehst, dann kann man wenigstens eine Frage beantworten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2232794</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2232794</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 14 Jul 2012 16:31:52 GMT</pubDate></item><item><title><![CDATA[Reply to klammerung on Sat, 14 Jul 2012 19:04:18 GMT]]></title><description><![CDATA[<p>ich verstehe nicht welche klammern hier jetzt zuerst gerechnet werden ... ich habe keine ahnung wie ich das einklammern solte...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2232837</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2232837</guid><dc:creator><![CDATA[Fragä]]></dc:creator><pubDate>Sat, 14 Jul 2012 19:04:18 GMT</pubDate></item><item><title><![CDATA[Reply to klammerung on Sat, 14 Jul 2012 20:34:28 GMT]]></title><description><![CDATA[<p>Fragä schrieb:</p>
<blockquote>
<p>ich verstehe nicht welche klammern hier jetzt zuerst gerechnet werden</p>
</blockquote>
<p>Das ist eine tolle Frage, die man leider nicht beantworten kann, da der C++ Standard die Auswertungsreihenfolge nicht definiert. Ergo bedeutet das, dass die <code>Operator Precedence</code> nichts mit der Auswertungsreihenfolge zu tun hat. Die <code>Operator Precedence</code> sagt nur, welche Operanden ein Operator an sich bindet.</p>
<p>Bsp:</p>
<pre><code>-4 * i++ – 6 % 4
</code></pre>
<ol>
<li><code>++ Postfix</code> hat die höchste Priorität (bzgl. deines Beispiels):</li>
</ol>
<ul>
<li><code>4 * (i++) – 6%4</code></li>
</ul>
<ol start="2">
<li>
<p><code>- unary minus</code> hat die zweithöchste Priorität:<br />
<code>(-4) * (i++) – 6%4</code></p>
</li>
<li>
<p><code>* und %</code> haben die dritthöchste Priorität:<br />
<code>((-4) * (i++)) – (6%4)</code></p>
</li>
<li>
<p><code>- subtraction</code> hat die vierthöchste Priorität:<br />
<code>( ((-4) * (i++)) – (6%4) )</code></p>
</li>
</ol>
<p>So: Wie gesagt, ist die Auswertungsreihenfolge nicht definiert. D.h., ob nun zuerst <code>((-4) * (i++))</code> oder <code>(6%4)</code> gerechnet wird... man kann es nicht sagen, es ist undefiniert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2232849</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2232849</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 14 Jul 2012 20:34:28 GMT</pubDate></item><item><title><![CDATA[Reply to klammerung on Sat, 14 Jul 2012 21:18:29 GMT]]></title><description><![CDATA[<p>postfix vor präfix<br />
präfix vor binären operatoren<br />
binäres &quot;punkt&quot; (mal, durch) vor binärem &quot;strich&quot; (plus, minus)</p>
<p>das mit den präzedenzen steuert aber nur die klammerung, also, WAS gerechnet wird, und nicht in welcher Reihenfolge die Teilausdrücke ausgewertet werden. Natürlich bedingt das eine ein bisschen das andere, aber es gibt noch genug Freiheiten. Bei (a+b)*(c+d) kann entweder zuerst a+b oder c+d ausgerechnet werden. Du verstehst..?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2232854</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2232854</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Sat, 14 Jul 2012 21:18:29 GMT</pubDate></item></channel></rss>