<?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[Maximaler Wert]]></title><description><![CDATA[<p>Hallo</p>
<p>Ist das korrekt wenn am Ende des Codes, die Variable <code>foo</code> den Maximalwert haben soll? (Ich hasse diese Bitweise-Op's)</p>
<pre><code class="language-cpp">int foo;
for(unsigned long int i = 0; i &lt; sizeof int; i++)
{
  foo &lt;&lt;= 8;
  foo |= 255;
}
</code></pre>
<p>MfG, EOutOfResources</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/284952/maximaler-wert</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 15:15:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/284952.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 11 Apr 2011 19:36:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:36:54 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ist das korrekt wenn am Ende des Codes, die Variable <code>foo</code> den Maximalwert haben soll? (Ich hasse diese Bitweise-Op's)</p>
<pre><code class="language-cpp">int foo;
for(unsigned long int i = 0; i &lt; sizeof int; i++)
{
  foo &lt;&lt;= 8;
  foo |= 255;
}
</code></pre>
<p>MfG, EOutOfResources</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047717</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047717</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:36:54 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:42:47 GMT]]></title><description><![CDATA[<p>nein, bei int kannste das nicht bringen. bei unsigned int gehts. da kannste aber dann auch unsigned int foo(-1) sagen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047718</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047718</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:42:47 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:43:54 GMT]]></title><description><![CDATA[<p>Warum denn so umständlich? Den maximal möglichen Wert für deine Variable bekommst du viel schneller mit <code>std::numeric_limits&lt;int&gt;::max()</code> .</p>
<p>(mit deinem Code landest du vermutlich bei -1 (das höchstwertige Bit eines int ist typischerweise das Vorzeichen))</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047719</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047719</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:43:54 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:45:44 GMT]]></title><description><![CDATA[<p>Oh, entschuldigung. Ich meinte natürlich:</p>
<pre><code class="language-cpp">unsigned int foo; 
for(unsigned long int i = 0; i &lt; sizeof int; i++) 
{ 
  foo &lt;&lt;= 8; 
  foo |= 255; 
}
</code></pre>
<p>Somit bezieht sich meine Frage auf die Operatoren statt auf dem Aufbau von primitiven Datentypen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047720</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047720</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:45:44 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:50:35 GMT]]></title><description><![CDATA[<p>In dem Fall könnte dir immer noch <a href="http://www.c-plusplus.net/forum/284950" rel="nofollow">das hier</a> einen Strich durch die Rechnung machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047723</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047723</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:50:35 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:58:15 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">unsigned int foo; 
for(unsigned long int i = 0; i &lt; sizeof int; i++) 
{ 
  foo &lt;&lt;= CHAR_BIT; 
  foo |= std::pow(2, CHAR_BIT) - 1; 
}
</code></pre>
<p>EDIT: Obwohl volkard kein schlechtes Gewissen haben würde, wenn er 8 statt <code>CHAR_BIT</code> schreibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047724</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047724</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:58:15 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:57:30 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">foo |= std::pow(2, CHAR_BIT)-1; //-1
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2047725</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047725</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:57:30 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:58:55 GMT]]></title><description><![CDATA[<p>Sind jetzt alle Bits von foo auf 1 gesetzt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047726</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047726</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:58:55 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 19:59:31 GMT]]></title><description><![CDATA[<p>Da fehlt zwar noch ein -1, aber sonst dürfte der Ansatz funktionieren. Darf man erfahren, waru du dir überhaupt die Mühe machst, den maximal möglichen unsigned long Wert auszurechnen, wenn du die Antwort viel billiger bekommen könntest?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047727</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047727</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 11 Apr 2011 19:59:31 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 20:06:08 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>Darf man erfahren, waru du dir überhaupt die Mühe machst, den maximal möglichen unsigned long Wert auszurechnen, wenn du die Antwort viel billiger bekommen könntest?</p>
</blockquote>
<p>Ja. Bei einem primitiven Typ wie diesem nutze ich natürlich weiterhin die STD. Aber es geht um <s>Memory-Hacking</s> die modifikation von komplexen Typen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047728</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047728</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Mon, 11 Apr 2011 20:06:08 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 20:02:21 GMT]]></title><description><![CDATA[<p>Eigentlich reicht doch ein simples <code>~0u</code> . Oder habe ich jetzt ein Brett vor Augen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047729</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047729</guid><dc:creator><![CDATA[ipsec]]></dc:creator><pubDate>Mon, 11 Apr 2011 20:02:21 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 20:02:43 GMT]]></title><description><![CDATA[<p>EOutOfResources schrieb:</p>
<blockquote>
<p>Sind jetzt alle Bits von foo auf 1 gesetzt?</p>
</blockquote>
<p>Glaube nicht, weil ich std::pow nicht vertraue, das könnte einen Überlauf haben.</p>
<p>Sagen wir mal so: unsigned-Typen rechnen so, wie Du es erwartest.</p>
<p>Vielleicht geht</p>
<pre><code class="language-cpp">foo |= ~static_cast&lt;unsigned char&gt;(0);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2047731</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047731</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 11 Apr 2011 20:02:43 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 20:16:46 GMT]]></title><description><![CDATA[<p>EOutOfResources schrieb:</p>
<blockquote>
<p>Aber es geht um Memory-Hacking.</p>
</blockquote>
<p>Dann mußt Du den fremden Speicher eh mit systemspezifischen Tricks aufmachen und kannst wesentlich lockerer an die Sache herangehen und erstmal von 8 Bit pro Byte und Zweierkomplementdarstellung ausgehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047733</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047733</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 11 Apr 2011 20:16:46 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 20:19:42 GMT]]></title><description><![CDATA[<p>Zur Sicherheit trotzdem immer unsigned nehmen, wenn man schmuddeln will. Sonst &quot;optimiert&quot; der GCC manche Sachen auf erstaunlichste Weise weg.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main(){
    char c=0;
    for(unsigned int i=1;i!=0;++i){
        if(!c++) cout&lt;&lt;i&lt;&lt;'\r'&lt;&lt;flush;
    }
}
</code></pre>
<p>Klappt.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main(){
    unsigned char c=0;
    for(unsigned int i=1;i!=0;++i){
        if(!c++) cout&lt;&lt;i&lt;&lt;'\r'&lt;&lt;flush;
    }
}
</code></pre>
<p>Klappt auch.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main(){
    unsigned char c=0;
    for(unsigned int i=1;i!=0;++i){
        if(!++c) cout&lt;&lt;i&lt;&lt;'\r'&lt;&lt;flush;
    }
}
</code></pre>
<p>Klappt auch.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main(){
    char c=0;
    for(unsigned int i=1;i!=0;++i){
        if(!++c) cout&lt;&lt;i&lt;&lt;'\r'&lt;&lt;flush;
    }
}
</code></pre>
<p>Keine Ausgabe! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <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="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> :p <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /> <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="😃"
    /> <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="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047736</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047736</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 11 Apr 2011 20:19:42 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Mon, 11 Apr 2011 20:18:49 GMT]]></title><description><![CDATA[<p>EOutOfResources schrieb:</p>
<blockquote>
<p>Ja. Bei einem primitiven Typ wie diesem nutze ich natürlich weiterhin die STD. Aber es geht um <s>Memory-Hacking</s> die modifikation von komplexen Typen.</p>
</blockquote>
<p>Dann würde ich nicht einmal davon ausgehen, daß du mit deiner Bit-Bastelei alles triffst, was du da <s>hacken</s> modifizieren willst. Und ich hoffe du weißt, was du da tust, weil dein Compiler dir dabei nicht helfen wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2047738</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2047738</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 11 Apr 2011 20:18:49 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Wed, 13 Apr 2011 14:42:32 GMT]]></title><link>https://www.c-plusplus.net/forum/post/2048753</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2048753</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Wed, 13 Apr 2011 14:42:32 GMT</pubDate></item><item><title><![CDATA[Reply to Maximaler Wert on Wed, 13 Apr 2011 14:45:11 GMT]]></title><description><![CDATA[<p>EOutOfResources schrieb:</p>
<blockquote>
<pre><code class="language-cpp">unsigned int foo; 
for(unsigned long int i = 0; i &lt; sizeof int; i++) 
{ 
  foo &lt;&lt;= CHAR_BIT; 
  foo |= std::pow(2, CHAR_BIT) - 1; 
}
</code></pre>
<p>EDIT: Obwohl volkard kein schlechtes Gewissen haben würde, wenn er 8 statt <code>CHAR_BIT</code> schreibt.</p>
</blockquote>
<p>Wenn du hier CHAR_BIT brauchst, musst du auch damit rechnen, dass double exotisch genug ist und nicht genugt signifikante Stellen hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2048759</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2048759</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Wed, 13 Apr 2011 14:45:11 GMT</pubDate></item></channel></rss>