<?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[Zur Compilezeit Endianess festellen?]]></title><description><![CDATA[<p>Hallo, gibt der Standard einem die Möglichkeit zur Compilezeit festzustellen, mit welcher Endianess der Compiler arbeitet? (also so etwas in der richtung):</p>
<pre><code class="language-cpp">//aus climits
#if CHAR_BIT == 8

//analog
#ifdef LITTLE_ENDIAN
</code></pre>
<p>Oder kann man die Endianess zur Compilezeit nicht herausfinden?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/249989/zur-compilezeit-endianess-festellen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 16 Sep 2026 05:05:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/249989.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 15 Sep 2009 02:57:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zur Compilezeit Endianess festellen? on Tue, 15 Sep 2009 02:57:28 GMT]]></title><description><![CDATA[<p>Hallo, gibt der Standard einem die Möglichkeit zur Compilezeit festzustellen, mit welcher Endianess der Compiler arbeitet? (also so etwas in der richtung):</p>
<pre><code class="language-cpp">//aus climits
#if CHAR_BIT == 8

//analog
#ifdef LITTLE_ENDIAN
</code></pre>
<p>Oder kann man die Endianess zur Compilezeit nicht herausfinden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1778517</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1778517</guid><dc:creator><![CDATA[Ednianess]]></dc:creator><pubDate>Tue, 15 Sep 2009 02:57:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zur Compilezeit Endianess festellen? on Tue, 15 Sep 2009 04:53:57 GMT]]></title><description><![CDATA[<p>Keine Ahnung. Aber vielleicht reicht dir ja:</p>
<pre><code class="language-cpp">bool littleEndian()
{
     short s = 1;
     return (((char*)&amp;s)[0]) == 1;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1778525</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1778525</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Tue, 15 Sep 2009 04:53:57 GMT</pubDate></item><item><title><![CDATA[Reply to Zur Compilezeit Endianess festellen? on Tue, 15 Sep 2009 05:56:27 GMT]]></title><description><![CDATA[<p>1. Warum interessiert Dich Endianness? Du kannst Dein Problem bestimmt auch lösen, ohne zu wissen, wie der Rechner Dinge im Speicher ablegt.</p>
<p>2. Build-System benutzen. ZB kannst Du ein Makefile anlegen, welches zunächst ein Test-Programm kompiliert. Das Test-Programm könnte eine Header-Datei generieren. Dann wird das eigentliche Programm (mit der generierten Header-Datei) übersetzt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1778540</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1778540</guid><dc:creator><![CDATA[Sebastian Pizer]]></dc:creator><pubDate>Tue, 15 Sep 2009 05:56:27 GMT</pubDate></item><item><title><![CDATA[Reply to Zur Compilezeit Endianess festellen? on Tue, 15 Sep 2009 07:07:27 GMT]]></title><description><![CDATA[<p>Sebastian Pizer schrieb:</p>
<blockquote>
<p>1. Warum interessiert Dich Endianness? Du kannst Dein Problem bestimmt auch lösen, ohne zu wissen, wie der Rechner Dinge im Speicher ablegt.</p>
</blockquote>
<p>Bei plattformübergreifender Serialisierung von Massendaten ist das aber schon hilfreich. Ich fände es toll, wenn der Standard einen Header zum ermitteln der Endianess hätte. Dazu noch ein plattformunabhängiges (also klar definiertes) <code>typeid().name()</code> , und alles wäre fein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1778568</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1778568</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Tue, 15 Sep 2009 07:07:27 GMT</pubDate></item><item><title><![CDATA[Reply to Zur Compilezeit Endianess festellen? on Tue, 15 Sep 2009 07:41:30 GMT]]></title><description><![CDATA[<p>in Boost gibts eine Header, in der Endianness bestimmt wird (boost/detail/endian.hpp)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1778597</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1778597</guid><dc:creator><![CDATA[~Airdamn]]></dc:creator><pubDate>Tue, 15 Sep 2009 07:41:30 GMT</pubDate></item><item><title><![CDATA[Reply to Zur Compilezeit Endianess festellen? on Tue, 15 Sep 2009 20:53:06 GMT]]></title><description><![CDATA[<p>Eine Frage zur Endianness hab ich noch:<br />
Wie ist in dem Zusammenhang der Bitshift in C++ definiert?<br />
Bezieht der sich immer auf den &quot;Wert&quot;, sodass zB Bitshift links (&lt;&lt;) den Wert immer erhöht, oder schiebt der die Bits von rechts nach Links, egal, welche Endianness benutzt wird?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1779090</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1779090</guid><dc:creator><![CDATA[Ednianess]]></dc:creator><pubDate>Tue, 15 Sep 2009 20:53:06 GMT</pubDate></item><item><title><![CDATA[Reply to Zur Compilezeit Endianess festellen? on Tue, 15 Sep 2009 20:57:10 GMT]]></title><description><![CDATA[<p>Ednianess schrieb:</p>
<blockquote>
<p>Eine Frage zur Endianness hab ich noch:<br />
Wie ist in dem Zusammenhang der Bitshift in C++ definiert?<br />
Bezieht der sich immer auf den &quot;Wert&quot;, sodass zB Bitshift links (&lt;&lt;) den Wert immer erhöht, oder schiebt der die Bits von rechts nach Links, egal, welche Endianness benutzt wird?</p>
</blockquote>
<p>Es wird natürlich mit den Werten gearbeitet. So lange du nicht mit Gewalt versuchst, endianess zum Problem zu machen, wirst du auch niemals Probleme bekommen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1779097</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1779097</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 15 Sep 2009 20:57:10 GMT</pubDate></item></channel></rss>