<?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[2-dimensionales array und new-Operator   Hilfe!!]]></title><description><![CDATA[<p>Hallo,<br />
bin noch dabei, C++ zu lernen und habe hier ein (für mich) großes Problem:</p>
<p>Ich will ein 2-dimensionales array erzeugen, und will dabei dem User ermöglichen, dass er die Dimensionen des arrays beliebig wählen kann.</p>
<p>Ich dachte an folgenden Code:</p>
<pre><code>int zeile,spalte;
cout&lt;&lt;&quot;Zeilen eingeben: &quot;;
cin&gt;&gt;zeile;
cout&lt;&lt;&quot;Spalten eingeben: &quot;;
cin&gt;&gt;spalte;

int *A=new int[zeile][spalte]; //A soll meine Matrix sein

for(int i=0;i&lt;zeile;i++)
{
   for(int j=0;j&lt;spalte;j++)
   {
     A[i][j]=1;
   }
}

.
.
.
</code></pre>
<p>Das nur als Beispiel, um die Matrix danach komplett mit Einsen zu füllen.</p>
<p>Leider mag der Compiler meinen Code ganz u garnicht u ich kann machen was ich will. Denke, es hängt mit der Speicherallokierung zusammen.</p>
<p>Hat jemand eine Idee, wie man das besser, bzw. richtig machen kann?</p>
<p>Danke vielmals,<br />
Greetz Mati</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/167552/2-dimensionales-array-und-new-operator-hilfe</link><generator>RSS for Node</generator><lastBuildDate>Wed, 16 Sep 2026 01:26:54 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/167552.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 12 Dec 2006 13:03:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 13:03:30 GMT]]></title><description><![CDATA[<p>Hallo,<br />
bin noch dabei, C++ zu lernen und habe hier ein (für mich) großes Problem:</p>
<p>Ich will ein 2-dimensionales array erzeugen, und will dabei dem User ermöglichen, dass er die Dimensionen des arrays beliebig wählen kann.</p>
<p>Ich dachte an folgenden Code:</p>
<pre><code>int zeile,spalte;
cout&lt;&lt;&quot;Zeilen eingeben: &quot;;
cin&gt;&gt;zeile;
cout&lt;&lt;&quot;Spalten eingeben: &quot;;
cin&gt;&gt;spalte;

int *A=new int[zeile][spalte]; //A soll meine Matrix sein

for(int i=0;i&lt;zeile;i++)
{
   for(int j=0;j&lt;spalte;j++)
   {
     A[i][j]=1;
   }
}

.
.
.
</code></pre>
<p>Das nur als Beispiel, um die Matrix danach komplett mit Einsen zu füllen.</p>
<p>Leider mag der Compiler meinen Code ganz u garnicht u ich kann machen was ich will. Denke, es hängt mit der Speicherallokierung zusammen.</p>
<p>Hat jemand eine Idee, wie man das besser, bzw. richtig machen kann?</p>
<p>Danke vielmals,<br />
Greetz Mati</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190586</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190586</guid><dc:creator><![CDATA[Mati79]]></dc:creator><pubDate>Tue, 12 Dec 2006 13:03:30 GMT</pubDate></item><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 13:17:19 GMT]]></title><description><![CDATA[<p>Nutze std::vector aus vector</p>
<p>EDIT: wichtigen Fehler korrigiert (hatte vector.h geschrieben)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190590</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190590</guid><dc:creator><![CDATA[Shinja]]></dc:creator><pubDate>Tue, 12 Dec 2006 13:17:19 GMT</pubDate></item><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 13:08:03 GMT]]></title><description><![CDATA[<p>Bei mehreren Dimensionen kannst du nur die äußerste Dimension dynamisch festlegen - alle anderen müssen zur Compile-Zeit feststehen. Aber du könntest mit geeigneter Index-Umrechnung ein zweidimensinales Array auf einem eindimensionalen Feld umsetzen:</p>
<pre><code class="language-cpp">int* A = new int[zeile*spalte];
for(i=0;i&lt;zeile;++i)
  for(j=0;j&lt;spalte;++j)
    A[i+j*zeile]=1;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1190591</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190591</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 12 Dec 2006 13:08:03 GMT</pubDate></item><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 13:10:30 GMT]]></title><description><![CDATA[<p>Wenns nich ganz so &quot;basic&quot; sein muss kannst du boost::multi_array verwenden.</p>
<p>Shinja schrieb:</p>
<blockquote>
<p>Nutze std::vector aus vector.h</p>
</blockquote>
<p>std::vectr aus <em>vector</em>. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p>grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190593</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190593</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Tue, 12 Dec 2006 13:10:30 GMT</pubDate></item><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 13:12:38 GMT]]></title><description><![CDATA[<p>Ok, andere Frage von mir dann: auch wenn man &lt;vector&gt; inkludiert steht die Klasse doch imemr noch in der vector.h oder nicht? Habe das h extra deswegen wieder angefügt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190595</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190595</guid><dc:creator><![CDATA[Shinja]]></dc:creator><pubDate>Tue, 12 Dec 2006 13:12:38 GMT</pubDate></item><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 13:14:11 GMT]]></title><description><![CDATA[<p>Hat zwar nichts mit dem Thema zu tun, aber nein. Tut sie nicht (zwangsläufig).</p>
<p>grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190597</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190597</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Tue, 12 Dec 2006 13:14:11 GMT</pubDate></item><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 13:16:33 GMT]]></title><description><![CDATA[<p>Danke, dann korrigier ich das gleich mal.</p>
<p>Sorry fürs OT</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190600</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190600</guid><dc:creator><![CDATA[Shinja]]></dc:creator><pubDate>Tue, 12 Dec 2006 13:16:33 GMT</pubDate></item><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 18:41:15 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;vector&gt; 
#include &lt;iostream&gt;
using namespace std; 

int main() 
{ 
    int zeile = 5, spalte; 
    //Wenn die zweite Dimension zur Compilezeit bekannt ist, macht man das so
    int(*D2)[10] = new int [zeile][10];  
    //  new liefert hier nicht int* sondern int(*)[10] !
    //  D2[3][5] = 1; usw.
        delete[] D2;

        cout&lt;&lt;&quot;Zeilen eingeben: &quot;; 
        cin&gt;&gt;zeile; 
        cout&lt;&lt;&quot;Spalten eingeben: &quot;; 
        cin&gt;&gt;spalte; 
    //  Wenn die zweite Dimension nicht bekannt ist, so wie von CStoll gezeigt.
    //  Es sollten jedoch Arrays entstehen, die genauso organisiert sind wie die, die der Compiler generieren würde
    //  wenn er die zweite Dimension kennt, also A[i*spalte+j]=1; 

    vector&lt;vector&lt;int&gt; &gt; A(zeile, vector&lt;int&gt;(spalte));

        for(int i = 0; i &lt; zeile; i++) 
                for(int j=0;j&lt;spalte;j++) 
                        A[i][j]=1; 

        return 0;
}
</code></pre>
<p>:xmas1:</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190796</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190796</guid><dc:creator><![CDATA[egon2]]></dc:creator><pubDate>Tue, 12 Dec 2006 18:41:15 GMT</pubDate></item><item><title><![CDATA[Reply to 2-dimensionales array und new-Operator   Hilfe!! on Tue, 12 Dec 2006 18:50:07 GMT]]></title><description><![CDATA[<p>Dann aber gleich</p>
<pre><code class="language-cpp">vector&lt;vector&lt;int&gt; &gt; A(zeile, vector&lt;int&gt;(spalte,1));
</code></pre>
<p>:xmas1:</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190804</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190804</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Tue, 12 Dec 2006 18:50:07 GMT</pubDate></item></channel></rss>