<?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[macht das sinn ?  if ((sum = max)) {..}]]></title><description><![CDATA[<p>Hi,</p>
<p>ich hab aus einem Teil des php_sourcecodes (string.c-&gt;similar_text()) diesen code und komm aber nicht auf den Sinn, ne Zuweisung ist doch immer wahr ?!, also warum ne If-Abfrage ??</p>
<p>int sum,max;<br />
...<br />
if ((sum = max)) {<br />
...<br />
}</p>
<p>vielen vielen Dank für jede Antwort<br />
bye<br />
Christian</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/130155/macht-das-sinn-if-sum-max</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 11:06:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/130155.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 20 Dec 2005 12:03:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to macht das sinn ?  if ((sum = max)) {..} on Tue, 20 Dec 2005 12:03:42 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich hab aus einem Teil des php_sourcecodes (string.c-&gt;similar_text()) diesen code und komm aber nicht auf den Sinn, ne Zuweisung ist doch immer wahr ?!, also warum ne If-Abfrage ??</p>
<p>int sum,max;<br />
...<br />
if ((sum = max)) {<br />
...<br />
}</p>
<p>vielen vielen Dank für jede Antwort<br />
bye<br />
Christian</p>
]]></description><link>https://www.c-plusplus.net/forum/post/946222</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/946222</guid><dc:creator><![CDATA[roughneck99]]></dc:creator><pubDate>Tue, 20 Dec 2005 12:03:42 GMT</pubDate></item><item><title><![CDATA[Reply to macht das sinn ?  if ((sum = max)) {..} on Tue, 20 Dec 2005 12:05:34 GMT]]></title><description><![CDATA[<p>Es muss wohl</p>
<pre><code class="language-cpp">if (sum==max) {  //wenn max gleich sum ist

}
</code></pre>
<p>heißen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/946225</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/946225</guid><dc:creator><![CDATA[GPC|off]]></dc:creator><pubDate>Tue, 20 Dec 2005 12:05:34 GMT</pubDate></item><item><title><![CDATA[Reply to macht das sinn ?  if ((sum = max)) {..} on Tue, 20 Dec 2005 12:08:52 GMT]]></title><description><![CDATA[<p>&quot;sum=max&quot; liefert den übergebenen Wert zurück, damit du Zuweisungsketten (ala &quot;a=b=c=...&quot;) aufbauen kannst - den kannst du ganz normal auf true/false testen.</p>
<p>Also entspricht der Code letztendlich:</p>
<pre><code class="language-cpp">sum=max
if(sum)//oder: if(sum!=0)
{
  //...
}
</code></pre>
<p>Wieviel Sinn das macht, mußt du selber entscheiden.</p>
<p>Edit: Aber ein Tipfehler ist wohl wahrscheinlicher <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/946226</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/946226</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 20 Dec 2005 12:08:52 GMT</pubDate></item><item><title><![CDATA[Reply to macht das sinn ?  if ((sum = max)) {..} on Tue, 20 Dec 2005 12:14:08 GMT]]></title><description><![CDATA[<p>roughneck99 schrieb:</p>
<blockquote>
<p>Hi,</p>
<p>ich hab aus einem Teil des php_sourcecodes (string.c-&gt;similar_text()) diesen code und komm aber nicht auf den Sinn, ne Zuweisung ist doch immer wahr ?!, also warum ne If-Abfrage ??</p>
<p>int sum,max;<br />
...<br />
if ((sum = max)) {<br />
...<br />
}</p>
<p>vielen vielen Dank für jede Antwort<br />
bye<br />
Christian</p>
</blockquote>
<p>die doppelten klammern deuten an, dass hier tatsächlich zuweisung gemeint ist (doppelte klammern verhindern bei gcc eine warnung, bei vc++ muss noch ein explizter test dazu) - dea ergebnis des ausdrucks:<br />
a = b<br />
ist a nach der zuweisung (auch wenn die veränderung der variable a selbst ein nebeneffekt ist) - obiger code ist folglich equivalent zu:</p>
<pre><code class="language-cpp">sum = max;
if ( sum ) { // ...
</code></pre>
<p>dabei wird sum implizit in bool konvertiert, also:</p>
<pre><code class="language-cpp">sum = max;
if ( sum != 0 ) { // ...
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/946231</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/946231</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Tue, 20 Dec 2005 12:14:08 GMT</pubDate></item><item><title><![CDATA[Reply to macht das sinn ?  if ((sum = max)) {..} on Tue, 20 Dec 2005 12:26:40 GMT]]></title><description><![CDATA[<p>roughneck99 schrieb:</p>
<blockquote>
<p>ne Zuweisung ist doch immer wahr ?!</p>
</blockquote>
<p>Wurde zwar eigentlich schon beantwortet, aber ich sags nochmal explizit: Nein, eine Zuweisung ist nicht immer wahr. Sie hat den zugewiesenen Wert als Ergebnis, und der kann (nicht immer, das hängt vom Typ ab) in bool gewandelt werden. Für eingebaute Datentypen gilt: Numerische Nullen und Nullpointer werden in false umgewandelt, alles andere in true.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/946238</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/946238</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Tue, 20 Dec 2005 12:26:40 GMT</pubDate></item><item><title><![CDATA[Reply to macht das sinn ?  if ((sum = max)) {..} on Tue, 20 Dec 2005 12:54:15 GMT]]></title><description><![CDATA[<p>merci!. vielen Dank für die Antworten !</p>
]]></description><link>https://www.c-plusplus.net/forum/post/946259</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/946259</guid><dc:creator><![CDATA[roughneck99]]></dc:creator><pubDate>Tue, 20 Dec 2005 12:54:15 GMT</pubDate></item></channel></rss>