<?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[Funktion abhängig von der Datenbreite des Typs?]]></title><description><![CDATA[<p>Hi,<br />
kann man folgendes auch ohne C++0x realisieren?</p>
<pre><code class="language-cpp">template&lt;typename T, size_t N = sizeof(T)&gt;
void foo(T const &amp;)
{
  // hier geht es mir nur um die Bytebreite des Typs, sprich N
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/281934/funktion-abhängig-von-der-datenbreite-des-typs</link><generator>RSS for Node</generator><lastBuildDate>Sun, 23 Aug 2026 10:34:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/281934.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 10 Feb 2011 16:43:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 16:43:47 GMT]]></title><description><![CDATA[<p>Hi,<br />
kann man folgendes auch ohne C++0x realisieren?</p>
<pre><code class="language-cpp">template&lt;typename T, size_t N = sizeof(T)&gt;
void foo(T const &amp;)
{
  // hier geht es mir nur um die Bytebreite des Typs, sprich N
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2019241</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019241</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Thu, 10 Feb 2011 16:43:47 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 16:45:57 GMT]]></title><description><![CDATA[<p>Warum nicht</p>
<pre><code class="language-cpp">template &lt;typename T&gt;
void foo(T const&amp;)
{
    const size_t N = sizeof(T);
}
</code></pre>
<p>Was willst du genau erreichen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019243</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 10 Feb 2011 16:45:57 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 16:53:38 GMT]]></title><description><![CDATA[<p>Falls du erreichen willst, dass für jedes N eine eigene Funktion erzeugt wird, sollte dies gehen:</p>
<pre><code class="language-cpp">template &lt;typename T, size_t N&gt; void foo_impl(T const&amp;){}

template &lt;typename T&gt; void foo(T const&amp; bar)
{
    foo_impl&lt;T, sizeof(T)&gt; (bar);
}
</code></pre>
<p>edit: Bzw. das macht keinen Sinn, da das T ja sowieso schon immer unterschiedlich ist und das N keine Rolle mehr spielt. Immerhin kannst du so aber einerseits das N vorgeben, andererseits hast du einen guten Defaultwert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019244</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019244</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 10 Feb 2011 16:53:38 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 16:57:38 GMT]]></title><description><![CDATA[<p>Deine Vorschlag entspricht der aktuellen Umsetzung. Die Idee ist aber die, die Datenbreite direkt als Template-Argument zu übernehmen, so dass der Compiler direkt die richtige Funktion rufen kann. Ich will das mir der Compiler dadurch etwas Arbeit abnimmt und ich nicht selber die Fallunterscheidung machen muss.<br />
Das führt wahrscheinlich dann gleich zum nächsten Problem, weil es unabhängig vom Typ sein soll. Welches aber nicht erst gelöst werden muss, wenn das erste schon offen bleibt.</p>
<p>Edit:<br />
Die Lösung von SeppJ sieht schon mal gut aus. Daran hatte ich aber auch gedacht, das Problem ist nur der Typ. Mich interessiert aber nur die Datenbreite.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019247</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019247</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Thu, 10 Feb 2011 16:57:38 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 16:58:58 GMT]]></title><description><![CDATA[<p>Nick Unbekannt schrieb:</p>
<blockquote>
<p>Die Lösung von SeppJ sieht schon mal gut aus. Daran hatte ich aber auch gedacht, das Problem ist nur der Typ. Mich interessiert aber nur die Datenbreite.</p>
</blockquote>
<p>Dann lass doch einfach den Typ-Parameter weg... <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="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019249</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019249</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 10 Feb 2011 16:58:58 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 16:59:27 GMT]]></title><description><![CDATA[<p>Sag lieber direkt worauf du hinaus willst. Dir beim Basteln einer suboptimalen Lösung für ein unbekanntes Problem zu helfen klingt nämlich nicht sehr verlockend.</p>
<p>Der Wunsch, Templatefunktionen unabhängig von einem der Templateparameter haben zu wollen, klingt jedenfalls schon einmal sehr wild.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019250</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019250</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 10 Feb 2011 16:59:27 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 17:09:29 GMT]]></title><description><![CDATA[<p>Wie im ersten Beitrag geschrieben möchte ich, dass mir der Compiler die richtige Funktion auswählt, abhängig von der Datenbreite des übergegebenen Typs. Der Typ selber ist mir dabei egal.</p>
<p>Btw. Wie kann man mit dem Visual Studio Compiler C++0x Code compilieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019258</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019258</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Thu, 10 Feb 2011 17:09:29 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 17:11:59 GMT]]></title><description><![CDATA[<p>Nick Unbekannt schrieb:</p>
<blockquote>
<p>Wie im ersten Beitrag geschrieben möchte ich, dass mir der Compiler die richtige Funktion auswählt, abhängig von der Datenbreite des übergegebenen Typs. Der Typ selber ist mir dabei egal.</p>
</blockquote>
<p>Ja, dann dürfte meine Lösung passend sein. Lass einfach das T bei der <code>foo_impl</code> weg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019259</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019259</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 10 Feb 2011 17:11:59 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 17:14:25 GMT]]></title><description><![CDATA[<p>Nick Unbekannt schrieb:</p>
<blockquote>
<p>Btw. Wie kann man mit dem Visual Studio Compiler C++0x Code compilieren?</p>
</blockquote>
<p>Wenn du Visual Studio 2010 hast und du nur die unterstützen C++0x-Features benutzt: Ohne etwas speziell einzustellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019261</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019261</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 10 Feb 2011 17:14:25 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 17:14:45 GMT]]></title><description><![CDATA[<p>C++ hat noch etwas altmodische Features wie Ueberladung. Damit ginge das Wahrscheinlich auch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019262</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019262</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Thu, 10 Feb 2011 17:14:45 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 17:20:23 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/19375">@SeppJ</a><br />
Das stimmt das sollte passen. Danke!</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/12954">@Nexus</a><br />
Ich hab das Beispiel von oben getestet und da kam der erwartete Fehler. Deswegen dachte ich man könnte wie beim GCC noch einem Schalter mitgeben?<br />
Ich hab hier VS 2010 Premium das sollte doch schon die Suite mit sämtlichen Funktionen sein?</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/21632">@knivil</a><br />
Wie stellst du dir das vor?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019263</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019263</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Thu, 10 Feb 2011 17:20:23 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 17:20:29 GMT]]></title><description><![CDATA[<p>Sind Default-Templateargumente für Funktionstemplates in C++0x? Falls ja, werden sie von Visual Studio eben noch nicht unterstützt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019265</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 10 Feb 2011 17:20:29 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 17:24:41 GMT]]></title><description><![CDATA[<p>Das behauptet zumindest der GCC. Ich hab mich nicht weiter damit beschäftigt. Wüsste allerdings nicht, warum man das praktische Feature raus lassen sollte? Ich geh mal davon aus, dass es einen Unterschied zwischen den C++0x Schaltern gibt. Es gibt da nämlich extra einen mit GNU-Präffix/Suffix. Ich hab den ohne genutzt und der wurde auch empfohlen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019267</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Thu, 10 Feb 2011 17:24:41 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 18:54:50 GMT]]></title><description><![CDATA[<p>Ich hab das jetzt so gelöst:</p>
<pre><code class="language-cpp">template&lt;typename T&gt;
void foo(T const &amp; v)
{
  foo_impl&lt;sizeof(T)&gt;(reinterpret_cast&lt;AByte const * const&gt;(&amp;v));
}
</code></pre>
<p>AByte ist einfach nur ein unsigned char.<br />
Was mir aber nicht so gefällt ist der Cast. Ich schätze aber für das Problem gibt es sonst keine elegante Variante? In foo_impl werden die einzelnen Bytes des Typs gebraucht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019303</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019303</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Thu, 10 Feb 2011 18:54:50 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 19:20:57 GMT]]></title><description><![CDATA[<p>Übergib doch einen void*.</p>
<p>Und wenn du da jetzt keine Spezialisierung für bestimmte Größen machst, dann hau ich dich (und Nexus haut dich noch viel fester).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019316</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019316</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 10 Feb 2011 19:20:57 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 19:53:20 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Übergib doch einen void*.</p>
</blockquote>
<p>Naja, dann muss ich in den einzelnen Funktionen casten. Das wäre im Endeffekt nur mehr Aufwand.</p>
<p>Edit:<br />
Ich hab grad nochmal den Originalcode raus gekrammt, dass hat durchaus seinen Sinn, über eine Switch-Anweisung in die Funktionen zu gehen. Weil diese als Eingabe und Ausgabe einen Typ haben, der die selbe Datenbreite hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019330</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019330</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Thu, 10 Feb 2011 19:53:20 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Thu, 10 Feb 2011 23:45:48 GMT]]></title><description><![CDATA[<p>Zuerst hattest du <code>T</code> , dann wolltest du nur <code>sizeof(T)</code> und jetzt bist du an den einzelnen Bytes interessiert? Überhaupt werde ich wohl nie verstehen, was dein eigentliches Anliegen war...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019424</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019424</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 10 Feb 2011 23:45:48 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 09:19:56 GMT]]></title><description><![CDATA[<p>@OP: Sag uns doch bitte, <em>was</em> du erreichen willst, und nicht, <em>womit</em> du das erreichen willst (nämlich mit irgendwelchen abstrusen template-verunstaltungen).</p>
<p>Dein ursprüngliches Problem (gewürzt mit ein wenig erklärendem Quellcode) wird sicherlich kein Staatsgeheimnis sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019492</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019492</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 11 Feb 2011 09:19:56 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 09:51:21 GMT]]></title><description><![CDATA[<p>Wie würdet ihr eine Byteswapping-Funktion implementieren? Falls es da eine Standardfunktion für gibt, bitte auch nennen. Ich hab die paar Zeilen nur lieber schnell selbst geschrieben, weil ich nichts passendes in kürzerer Zeit gefunden habe. Meine Frage bezog sich nur darauf, ob es eleganter geht. Meine Frage hat sich also somit geklärt. Auch weil noch ein paar Details dazu gekommen sind, die andere Anforderungen überflüssig gemacht haben. Außer jemand hat generell noch einen Vorschlag, wie man eine Byteswap-Funktion realisieren sollte. Bitte nicht die htonX()-Funktionen nennen, die swappen nämlich nur, wenn es notwendig ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019502</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019502</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Fri, 11 Feb 2011 09:51:21 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 10:33:40 GMT]]></title><description><![CDATA[<p>Dreieckstausch mit <code>memcpy()</code> ? Dass das Verhalten von byteweisen Operationen nur für PODs definiert ist, brauch ich wohl nicht zu sagen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019520</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019520</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 11 Feb 2011 10:33:40 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 10:42:37 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Dreieckstausch mit <code>memcpy()</code> ?</p>
</blockquote>
<p>Beispiel, bitte?</p>
<p>Nexus schrieb:</p>
<blockquote>
<p>Dass das Verhalten von byteweisen Operationen nur für PODs definiert ist, brauch ich wohl nicht zu sagen...</p>
</blockquote>
<p>Nein, ist klar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019528</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019528</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Fri, 11 Feb 2011 10:42:37 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 10:43:42 GMT]]></title><description><![CDATA[<p>Nick Unbekannt schrieb:</p>
<blockquote>
<p>Wie würdet ihr eine Byteswapping-Funktion implementieren? Falls es da eine Standardfunktion für gibt, bitte auch nennen. Ich hab die paar Zeilen nur lieber schnell selbst geschrieben, weil ich nichts passendes in kürzerer Zeit gefunden habe. Meine Frage bezog sich nur darauf, ob es eleganter geht. Meine Frage hat sich also somit geklärt. Auch weil noch ein paar Details dazu gekommen sind, die andere Anforderungen überflüssig gemacht haben. Außer jemand hat generell noch einen Vorschlag, wie man eine Byteswap-Funktion realisieren sollte. Bitte nicht die htonX()-Funktionen nennen, die swappen nämlich nur, wenn es notwendig ist.</p>
</blockquote>
<p>Ich gehe mal davon aus, dass du die bytes im Objekt selber swappen willst.<br />
Damit da nichts undefiniertes bei rumkommt, darf es sich bei den betroffenen Objekten nur um PODs handeln. Damit wird das byte-swappen &quot;nur noch&quot; implementation defined. Wozu auch immer du das brauchen solltest, portabel ist das in keiner Weise, zumal noch so Dinge wie Padding und Alignment ne Rolle spielen dürften. Die Frage ist also: wozu brauchst du das?<br />
Schreiben würd ichs in etwa so:</p>
<pre><code class="language-cpp">template &lt;size_t N&gt;
void swapBytesN(void* ptr)
{
  char* raw_bytes = reinterpret_cast&lt;char*&gt;(ptr);
  for (size_t i = 0; i &lt; N/2; ++i)
  {
    std::swap(raw_bytes[i], raw_bytes[N-i]);
  }
}

template &lt;typename POD_t&gt;
void swapBytes(POD_t&amp; pod)
{
  swapBytesN&lt;sizeof(POD_t)&gt;(&amp;pod);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2019529</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019529</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 11 Feb 2011 10:43:42 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 10:49:05 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Ich gehe mal davon aus, dass du die bytes im Objekt selber swappen willst.</p>
</blockquote>
<p>Ja.</p>
<p>pumuckl schrieb:</p>
<blockquote>
<p>Damit da nichts undefiniertes bei rumkommt, darf es sich bei den betroffenen Objekten nur um PODs handeln.</p>
</blockquote>
<p>Die Grunddatentypen reichen vollkommen aus.</p>
<p>pumuckl schrieb:</p>
<blockquote>
<p>zumal noch so Dinge wie Padding und Alignment ne Rolle spielen dürften.</p>
</blockquote>
<p>Gibt es nicht, nur Grunddatentypen.</p>
<p>Deine Lösung dürfte wohl das sein, was Nexus vorgeschlagen hat. Ich werde es mir mal genauer betrachten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019531</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019531</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Fri, 11 Feb 2011 10:49:05 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 11:03:04 GMT]]></title><description><![CDATA[<p>Auch bei den Grunddatentypen ist die Byte-Darstellung implementation-defined. Portabel ist das nicht.</p>
<p>Ausserdem würde dich jeder C-Programmierer noch fester hauen als SeppJ und ich zusammen, wenn er sähe, wie kompliziert du einen Byte-Tausch umsetzt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019540</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019540</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 11 Feb 2011 11:03:04 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 11:16:29 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Auch bei den Grunddatentypen ist die Byte-Darstellung implementation-defined. Portabel ist das nicht.</p>
</blockquote>
<p>Meinst du jetzt die Endianness oder etwas ganz anderes? Die Endianness soll je gerade mit dieser Aktion abgefangen werden. Die Datentypgrößen passen auch, die werden extra so gewählt. Dass sich verschiedene Fließkomma-Darstellungen so beißen werden ist klar, dass müsste man dann gesondert behandeln. Und zum Beispiel vorher das Format anpassen. Sonst würde mir da jetzt kein weiterer Fallstrick einfallen?</p>
<p>Nexus schrieb:</p>
<blockquote>
<p>Ausserdem würde dich jeder C-Programmierer noch fester hauen als SeppJ und ich zusammen, wenn er sähe, wie kompliziert du einen Byte-Tausch umsetzt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p>Wieso kompliziert? Ich hab die übliche Bitshifterei gemacht, so wie man sie auch zu tausenden im Netz findet. Welche Variante nun die bessere ist, müsste man schauen. An meiner ist aber gar nichts kompliziert, ganz im Gegenteil, die ist sogar extrem einfach gehalten. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019553</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019553</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Fri, 11 Feb 2011 11:16:29 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion abhängig von der Datenbreite des Typs? on Fri, 11 Feb 2011 11:31:10 GMT]]></title><description><![CDATA[<p>Nick Unbekannt schrieb:</p>
<blockquote>
<p>Meinst du jetzt die Endianness oder etwas ganz anderes? Die Endianness soll je gerade mit dieser Aktion abgefangen werden.</p>
</blockquote>
<p>Klingt furchtbar nach Hack.</p>
<p>PS:<br />
es würde ungemein helfen wenn du endlich sagst WAS du machen willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2019558</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2019558</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 11 Feb 2011 11:31:10 GMT</pubDate></item></channel></rss>