<?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]]></title><description><![CDATA[<p>Hallo NG</p>
<p>Was ist allgemein schneller, besser?</p>
<p>#define a(i,j) a[n*(i)+(j)]<br />
a(i,j)</p>
<p>oder</p>
<p>a[i][j]</p>
<p>Gruss Roger</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/150317/2dim-array</link><generator>RSS for Node</generator><lastBuildDate>Sat, 05 Sep 2026 14:27:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/150317.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 15 Jun 2006 09:41:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 2dim array on Thu, 15 Jun 2006 09:41:17 GMT]]></title><description><![CDATA[<p>Hallo NG</p>
<p>Was ist allgemein schneller, besser?</p>
<p>#define a(i,j) a[n*(i)+(j)]<br />
a(i,j)</p>
<p>oder</p>
<p>a[i][j]</p>
<p>Gruss Roger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078044</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078044</guid><dc:creator><![CDATA[rmer547]]></dc:creator><pubDate>Thu, 15 Jun 2006 09:41:17 GMT</pubDate></item><item><title><![CDATA[Reply to 2dim array on Thu, 15 Jun 2006 09:59:37 GMT]]></title><description><![CDATA[<p>rmer547 schrieb:</p>
<blockquote>
<p>a[i][j]</p>
</blockquote>
<p>Ist besser da Makros schlecht sind. Was hat denn eigentlich das n für einen Wert in deinem Makro?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078055</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078055</guid><dc:creator><![CDATA[Chris++ 0]]></dc:creator><pubDate>Thu, 15 Jun 2006 09:59:37 GMT</pubDate></item><item><title><![CDATA[Reply to 2dim array on Thu, 15 Jun 2006 10:04:03 GMT]]></title><description><![CDATA[<p>wird iirc intern gleich behandelt^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078058</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078058</guid><dc:creator><![CDATA[das_brot]]></dc:creator><pubDate>Thu, 15 Jun 2006 10:04:03 GMT</pubDate></item><item><title><![CDATA[Reply to 2dim array on Thu, 15 Jun 2006 10:23:37 GMT]]></title><description><![CDATA[<p><div class="plugin-markdown"><input type="checkbox" id="checkbox127062" checked="true" /><label for="checkbox127062">etwas völlig anderes ist als ein a[x][y], ist die frage weitestgehend sinnlos</label></div></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078067</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078067</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 15 Jun 2006 10:23:37 GMT</pubDate></item><item><title><![CDATA[Reply to 2dim array on Thu, 15 Jun 2006 10:53:31 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<p><div class="plugin-markdown"><input type="checkbox" id="checkbox127063" checked="true" /><label for="checkbox127063">etwas völlig anderes ist als ein a[x][y], ist die frage weitestgehend sinnlos</label></div></p>
</blockquote>
<p>es geht hier um 2 dimensionale arrays. ich habe dieses makro in einem code gefunden und mich gefragt, wieso der verfasser dieses konstrukt einem zwei dimensionalen array bevorzugt. vermutlich ist dies schneller in der indirekten adressierung? kann mir aber vorstellen, dass dies kein unterschied macht, natürlich auch compiler abhängig...</p>
<p>Chris++ schrieb:</p>
<blockquote>
<p>Ist besser da Makros schlecht sind. Was hat denn eigentlich das n für einen Wert in deinem Makro?</p>
</blockquote>
<p>n ist die anzahl zeilen. ich dachte eigentlich, dass dies aus dem titel ersichtlich wäre, sorry. Mit der Behauptung, dass Makros generell schlecht sind, würde ich hier etwas vorsichtig sein. Zielsystem ist ein Nokia Handy und hier ist die Performance doch ein wichtigerer Aspekt als auf einem PC...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078080</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078080</guid><dc:creator><![CDATA[rmer547]]></dc:creator><pubDate>Thu, 15 Jun 2006 10:53:31 GMT</pubDate></item><item><title><![CDATA[Reply to 2dim array on Thu, 15 Jun 2006 11:10:43 GMT]]></title><description><![CDATA[<p>rmer547 schrieb:</p>
<blockquote>
<p>camper schrieb:</p>
<blockquote>
<p><div class="plugin-markdown"><input type="checkbox" id="checkbox127064" checked="true" /><label for="checkbox127064">etwas völlig anderes ist als ein a[x][y], ist die frage weitestgehend sinnlos</label></div></p>
</blockquote>
<p>es geht hier um 2 dimensionale arrays. ich habe dieses makro in einem code gefunden und mich gefragt, wieso der verfasser dieses konstrukt einem zwei dimensionalen array bevorzugt. vermutlich ist dies schneller in der indirekten adressierung? kann mir aber vorstellen, dass dies kein unterschied macht, natürlich auch compiler abhängig...</p>
</blockquote>
<p>der aufbau von arrays ist sehr genau festgelegt.</p>
<pre><code class="language-cpp">union
{
    T a[rows*columns];  // T irgendein typ, rows,columns beliebige positive konstante ausdrücke
    T b[rows][columns];
};

// es gilt stets
&amp;a[x*columns+y]==&amp;b[x][y]  // für 0&lt;=x&lt;rows und 0&lt;=y&lt;columns
</code></pre>
<p>das folgt unmittelbar aus der definition des index-operators. es macht also am ende keinen unterschied, bei der eindimensionalen abbildung bedeutet es für den programmierer nur zusätzliche arbeit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078092</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078092</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 15 Jun 2006 11:10:43 GMT</pubDate></item></channel></rss>