<?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[2Dim Array zu 1dim Array]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe eine 4x4 Matrix, dargestellt als 2dimensionales float Array. Das will ich nun &quot;konvertieren&quot; in ein 1dimensionales Array mit 16 Werten. Ich habe folgendes gemacht:</p>
<pre><code class="language-cpp">float m[4][4];
float* data = ( reinterpret_cast&lt;float*&gt;( m ) );
</code></pre>
<p>und es scheint zu klappen!</p>
<p>Meine Frage: Ist dieser Code richtig und wird das immer klappen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/291550/2dim-array-zu-1dim-array</link><generator>RSS for Node</generator><lastBuildDate>Mon, 17 Aug 2026 15:53:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/291550.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 21 Aug 2011 14:58:37 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 2Dim Array zu 1dim Array on Sun, 21 Aug 2011 14:58:37 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe eine 4x4 Matrix, dargestellt als 2dimensionales float Array. Das will ich nun &quot;konvertieren&quot; in ein 1dimensionales Array mit 16 Werten. Ich habe folgendes gemacht:</p>
<pre><code class="language-cpp">float m[4][4];
float* data = ( reinterpret_cast&lt;float*&gt;( m ) );
</code></pre>
<p>und es scheint zu klappen!</p>
<p>Meine Frage: Ist dieser Code richtig und wird das immer klappen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2108790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2108790</guid><dc:creator><![CDATA[Konvertierer]]></dc:creator><pubDate>Sun, 21 Aug 2011 14:58:37 GMT</pubDate></item><item><title><![CDATA[Reply to 2Dim Array zu 1dim Array on Sun, 21 Aug 2011 15:05:03 GMT]]></title><description><![CDATA[<p>Wozu den reinterpret_cast? Der bringt den Compiler zum Schweigen!</p>
<pre><code class="language-cpp">float m[4][4]; 
float* data = &amp;m[0][0];
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2108791</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2108791</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Sun, 21 Aug 2011 15:05:03 GMT</pubDate></item><item><title><![CDATA[Reply to 2Dim Array zu 1dim Array on Sun, 21 Aug 2011 15:12:27 GMT]]></title><description><![CDATA[<p>theta schrieb:</p>
<blockquote>
<p>Wozu den reinterpret_cast? Der bringt den Compiler zum Schweigen!</p>
<pre><code class="language-cpp">float m[4][4]; 
float* data = &amp;m[0][0];
</code></pre>
</blockquote>
<p>Dein Code kompiliert nicht:</p>
<blockquote>
<p>cannot convert from 'float (*)[4][4]' to 'float *'</p>
</blockquote>
<p>Mein Code kompiliert UND funktioniert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2108794</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2108794</guid><dc:creator><![CDATA[Konvertierer]]></dc:creator><pubDate>Sun, 21 Aug 2011 15:12:27 GMT</pubDate></item><item><title><![CDATA[Reply to 2Dim Array zu 1dim Array on Sun, 21 Aug 2011 15:19:27 GMT]]></title><description><![CDATA[<p>Konvertierer schrieb:</p>
<blockquote>
<p>theta schrieb:</p>
<blockquote>
<p>Wozu den reinterpret_cast? Der bringt den Compiler zum Schweigen!</p>
<pre><code class="language-cpp">float m[4][4]; 
float* data = &amp;m[0][0];
</code></pre>
</blockquote>
<p>Dein Code kompiliert nicht:</p>
<blockquote>
<p>cannot convert from 'float (*)[4][4]' to 'float *'</p>
</blockquote>
<p>Mein Code kompiliert UND funktioniert.</p>
</blockquote>
<p>Sein Code passt, du hast ihn wohl falsch abgetippt.</p>
<p>Dein Code stimmt, zeigt aber dem Compiler der Mittelfinger, sollte man nicht machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2108796</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2108796</guid><dc:creator><![CDATA[Ethon]]></dc:creator><pubDate>Sun, 21 Aug 2011 15:19:27 GMT</pubDate></item><item><title><![CDATA[Reply to 2Dim Array zu 1dim Array on Sun, 21 Aug 2011 16:02:08 GMT]]></title><description><![CDATA[<p>Konvertierer schrieb:</p>
<blockquote>
<p>Hallo,</p>
<p>ich habe eine 4x4 Matrix, dargestellt als 2dimensionales float Array. Das will ich nun &quot;konvertieren&quot; in ein 1dimensionales Array mit 16 Werten. Ich habe folgendes gemacht:</p>
<pre><code class="language-cpp">float m[4][4];
float* data = ( reinterpret_cast&lt;float*&gt;( m ) );
</code></pre>
<p>und es scheint zu klappen!</p>
<p>Meine Frage: Ist dieser Code richtig und wird das immer klappen?</p>
</blockquote>
<p>ja und ja. Es geht auch ohne Cast, wie schon geschrieben wurde. Wenn ein Cast her soll, erscheint es sinnvoll, auch mehr Typinformationen zu bewahren:</p>
<pre><code class="language-cpp">float (&amp;data)[16] = reinterpret_cast&lt;float(&amp;)[16]&gt;( m );
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2108803</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2108803</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sun, 21 Aug 2011 16:02:08 GMT</pubDate></item></channel></rss>