<?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[Dynamisches 3D Array]]></title><description><![CDATA[<p>Hi. ich mochte/ muss ein dreidimensionales array erstellen. An sich ja kein problem nur das ich nicht weis wie gros es ist und ich es deshalb dynamisch anlegen muss. Dies klappt aber nicht wirklich.</p>
<pre><code class="language-cpp">a,b,c  --&gt; drei integrer mit der array groese.

char ***array=new **char [a];

for(int i=0;i&lt;=a;i++)
     **array[i]=new *char[b];

for(int i=0;i&lt;=a;i++)
      for(int j=0;j&lt;=b;j++)
      *array[i][j]=new char[c];
</code></pre>
<p>Mfg. Matyr</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/214821/dynamisches-3d-array</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 12:49:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/214821.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 03 Jun 2008 16:45:34 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 17:14:23 GMT]]></title><description><![CDATA[<p>Hi. ich mochte/ muss ein dreidimensionales array erstellen. An sich ja kein problem nur das ich nicht weis wie gros es ist und ich es deshalb dynamisch anlegen muss. Dies klappt aber nicht wirklich.</p>
<pre><code class="language-cpp">a,b,c  --&gt; drei integrer mit der array groese.

char ***array=new **char [a];

for(int i=0;i&lt;=a;i++)
     **array[i]=new *char[b];

for(int i=0;i&lt;=a;i++)
      for(int j=0;j&lt;=b;j++)
      *array[i][j]=new char[c];
</code></pre>
<p>Mfg. Matyr</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1521891</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1521891</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Tue, 03 Jun 2008 17:14:23 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 16:50:54 GMT]]></title><description><![CDATA[<p>Matyr schrieb:</p>
<blockquote>
<pre><code class="language-cpp">a,b,c  --&gt; drei integrer mit der array groese.

char ***array=new **char [a]; //Wieso denkst du, dass die Sternchen plötzlich vor den Typnamen müssen?

for(int i=0;i&lt;=a;i++)
     **array[i]=new *char[b]; //wieso dereferenzierst du array?

for(int i=0;i&lt;=a;i++)
      for(int j=0;j&lt;=b;b++) //b++?
      *array[i][j]=new char[c] //Semikolon?
</code></pre>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1521894</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1521894</guid><dc:creator><![CDATA[Nanyuki]]></dc:creator><pubDate>Tue, 03 Jun 2008 16:50:54 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 17:00:41 GMT]]></title><description><![CDATA[<p>Hui Matyr, da läuft ja einiges falsch!</p>
<p>Eine sache ist, das man meines Erachtens nach ein array gar nicht</p>
<pre><code class="language-cpp">array
</code></pre>
<p>nennen darf.</p>
<p>zweitens, sorry wenn ich mich irre, aber seh hier absolut kein problem:</p>
<pre><code class="language-cpp">char arr[a][b][c];
</code></pre>
<p>Bin gespannt, wie's hier weitergeht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1521899</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1521899</guid><dc:creator><![CDATA[XaTrIxX]]></dc:creator><pubDate>Tue, 03 Jun 2008 17:00:41 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 17:08:23 GMT]]></title><description><![CDATA[<p>XaTrIxX schrieb:</p>
<blockquote>
<p>Hui Matyr, da läuft ja einiges falsch!</p>
<p>Eine sache ist, das man meines Erachtens nach ein array gar nicht</p>
<pre><code class="language-cpp">array
</code></pre>
<p>nennen darf.</p>
</blockquote>
<p>Bei mir (MSVC++ 2008 Express) wird es auch als Schlüsselwort dargestellt, aber ich kann es trotzdem so nennen. Wofür steht denn <code>array</code> ?</p>
<p>XaTrIxX schrieb:</p>
<blockquote>
<p>zweitens, sorry wenn ich mich irre, aber seh hier absolut kein problem:</p>
<pre><code class="language-cpp">char arr[a][b][c];
</code></pre>
<p>Bin gespannt, wie's hier weitergeht</p>
</blockquote>
<p>Kein Problem, jeder irrt sich mal <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="😉"
    /><br />
Wenn a, b und c zur Compilezeit noch nicht bekannt sind (d.h. nicht-konstant), funktioniert das nicht. Deshalb muss man das Array dynamisch erstellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1521903</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1521903</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 03 Jun 2008 17:08:23 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 17:14:05 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Nimm doch einfach vector und spar dir den Sternchenkram.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1521907</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1521907</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 03 Jun 2008 17:14:05 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 17:16:37 GMT]]></title><description><![CDATA[<p>dachte die muss man dereferenzieren. wie soll es sonst gehen?.</p>
<p>semikolon fehlt wegen kopierfehler und bei b++ hab ich mich vertippt sry</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1521909</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1521909</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Tue, 03 Jun 2008 17:16:37 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 18:53:47 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">a,b,c  --&gt; drei integrer mit der array groese.

char ***array = new char**[a];  // sternchen dahinter

for(int i=0;i&lt;=a;i++)
     array[i] = new char*[b];   // sternchen dahinter, und nicht dereferenzieren

for(int i=0;i&lt;=a;i++)
      for(int j=0;j&lt;=b;j++)
         array[i][j] = new char[c];
</code></pre>
<p>so sollte es klappen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1521974</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1521974</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Tue, 03 Jun 2008 18:53:47 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 19:21:30 GMT]]></title><description><![CDATA[<p>Danke es klappt verstehe nur nicht wieso das nicht dereferenziert werden muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1522002</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1522002</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Tue, 03 Jun 2008 19:21:30 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 20:01:36 GMT]]></title><description><![CDATA[<p>Eben fällt mir eine weitere frage ein wie lösche ich das ganze ding eigentlich wieder? xD</p>
<p>delet [] array;</p>
<p>klappt ja wohl nicht oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1522041</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1522041</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Tue, 03 Jun 2008 20:01:36 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Tue, 03 Jun 2008 20:39:58 GMT]]></title><description><![CDATA[<p>Du musst das auch wieder mit Schlaufen machen und jedes mal dort, wo du ein new hattest auch wieder mit delete löschen. (Aber schön von innen nach aussen).</p>
<p>Wenn du mal die Forensuche benutzt, findest du eine Lösung von mir, wo ich das schon mal gemacht habe.</p>
<p>Aber eine gute Idee ist es dennoch nicht so etwas zu machen.. Schön,wenn man es Verstanden hat, dann sollte man aber ganz schnell wieder die Finger davon lassen. ^^</p>
<p>EDIT:</p>
<p>Hier ist mal ein Beispiel:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-211534-and-highlight-is-.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-211534-and-highlight-is-.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1522056</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1522056</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Tue, 03 Jun 2008 20:39:58 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Wed, 04 Jun 2008 15:10:51 GMT]]></title><description><![CDATA[<p>sry finde dein post nicht.</p>
<p>daher geht das so</p>
<p>for(int i........)<br />
for(int j...........)</p>
<p>delete[] array[i][j]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1522593</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1522593</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Wed, 04 Jun 2008 15:10:51 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Wed, 04 Jun 2008 15:18:57 GMT]]></title><description><![CDATA[<p>Wie du findest meinen Post nicht?<br />
Ich habe dir doch den Link gepostet vorhin. Und der letzte ist es.</p>
<p>Das was du machst geht so nicht. Schau einfach bei dem anderen Thread, dort steht die Lösung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1522602</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1522602</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Wed, 04 Jun 2008 15:18:57 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 16:57:15 GMT]]></title><description><![CDATA[<p>Es gibt beim löschen des Arrays ein Problem.</p>
<p>Wärend der Laufzeik kommt folgene fehlermeldung:</p>
<p>Debug Error!</p>
<p>Program:...<br />
HEAP CORRUPTION DETECTED: after Normal block (#154) at 0x00336528.<br />
CRT detected that application wrote to memory after end of heap buffer.</p>
<p>Beim druck auf wiederholen löst der folgenden haltepunkt aus:</p>
<pre><code class="language-cpp">for(int i=0;i&lt;=Daten.a;i++) 
		{ 
			for(int j=0; j&lt;=Daten.b;j++) 
			{
				delete[] Karte[i][j]; 
			}
			delete[] Karte[i];   ///&lt;-- HIER HALTEPUNKT

		} 
		delete[] Karte;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1525259</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525259</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Sun, 08 Jun 2008 16:57:15 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 17:58:59 GMT]]></title><description><![CDATA[<p>Deine Schleifen laufen zu weit.</p>
<p>Als Schuss ins blaue würde ich schätzen, dass es</p>
<pre><code class="language-cpp">for(int i=0;i&lt;Daten.a;i++)
{
    for(int j=0; j&lt;Daten.b;j++)
    {
</code></pre>
<p>heissen muss.</p>
<p>worum benutzt eigentlich niemand std::vector? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525290</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525290</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sun, 08 Jun 2008 17:58:59 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 18:04:50 GMT]]></title><description><![CDATA[<p>otze schrieb:</p>
<blockquote>
<p>worum benutzt eigentlich niemand std::vector? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
</blockquote>
<p>Als Übung sicher nicht schlecht das mal gemacht/verstanden zu haben. Aber ich hoffe er benutzt das nicht &quot;produktiv&quot;.. ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525296</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 08 Jun 2008 18:04:50 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 18:08:33 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>otze schrieb:</p>
<blockquote>
<p>worum benutzt eigentlich niemand std::vector? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
</blockquote>
<p>Ich verstehe es auch nicht...</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525305</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525305</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sun, 08 Jun 2008 18:08:33 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 18:21:08 GMT]]></title><description><![CDATA[<p>Weil selber machen immernoch am spannendsten ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525311</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525311</guid><dc:creator><![CDATA[wurst]]></dc:creator><pubDate>Sun, 08 Jun 2008 18:21:08 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 18:25:24 GMT]]></title><description><![CDATA[<p>ich habe noch nie von vector gehört geschweige denn kenne ich mit damit aus^^</p>
<p>Daher das.</p>
<p>und an dem gleich liegt es nicht habe das schon geändert. Das fängt schon bei i=0 an den haltepunkt auszulösen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525312</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525312</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Sun, 08 Jun 2008 18:25:24 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 18:31:05 GMT]]></title><description><![CDATA[<p>Matyr schrieb:</p>
<blockquote>
<p>ich habe noch nie von vector gehört geschweige denn kenne ich mit damit aus^^</p>
<p>Daher das.</p>
<p>und an dem gleich liegt es nicht habe das schon geändert. Das fängt schon bei i=0 an den haltepunkt auszulösen.</p>
</blockquote>
<p>Dann zeig mal den ganzen Code.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525316</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525316</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 08 Jun 2008 18:31:05 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 18:40:37 GMT]]></title><description><![CDATA[<p>Ich bin anfänger und weiß das das nicht schön ist oder guter stiel.<br />
Sicher auch einige fehler drin.</p>
<pre><code class="language-cpp">// Auslesen Klasse.cpp : Definiert den Einstiegspunkt für die Konsolenanwendung.
//

#include &quot;stdafx.h&quot;
#include &lt;string&gt;
#include &lt;iostream&gt;
#include &lt;windows.h&gt;
#include &lt;sstream&gt;
#include &lt;fstream&gt;

#include &lt;cstring&gt;
#include &lt;typeinfo&gt;

#include &lt;stdlib.h&gt;
#include &lt;math.h&gt;
#include &lt;stdexcept&gt;
#include &lt;io.h&gt; 
#include &lt;fcntl.h&gt;

using namespace std;

class Map
{
private:

	struct gro
	{
		int a;
		int b;
		int c;
	}Daten;

	char* my_null;
	char*** Karte;
	fstream Datei;

public:

	Map();
	~Map();

	void groese();
	char *** init();
	void set(int);

	template&lt;class A,class B&gt;
	void convert(A&amp;,B&amp;);
};

Map::Map()
{
	Datei.open(&quot;Info.txt&quot;);
	Karte=init();
}

Map::~Map()
{
	Datei.close();

		for(int i=0;i&lt;=Daten.a;i++) 
		{ 
			for(int j=0; j&lt;=Daten.b;j++) 
			{
				delete[] Karte[i][j]; 
			}
			delete[] Karte[i]; 

		} 
		delete[] Karte; 

}

char *** Map::init()
{
	    groese();

		Karte = new char**[Daten.a];  // sternchen dahinter 

		for(int i=0;i&lt;=Daten.a;i++)
		{
			Karte[i] = new char*[Daten.b]; 
		}// sternchen dahinter, und nicht dereferenzieren 

		for(int i=0;i&lt;=Daten.a;i++) 
		{
			for(int j=0;j&lt;=Daten.b;j++)
			{
				Karte[i][j] = new char[Daten.c]; 
			}
		}
		return Karte;
}

void Map::groese()
{
		string tmp;

		getline(this-&gt;Datei,tmp);
		cout&lt;&lt;tmp&lt;&lt;&quot;\n&quot;;
		convert(tmp,this-&gt;Daten.a);

		if(Daten.a&lt;=0){Daten.a=2;}

		getline(this-&gt;Datei,tmp);
		cout&lt;&lt;tmp&lt;&lt;&quot;\n&quot;;
		convert(tmp,this-&gt;Daten.b);

		if(Daten.b&lt;=0){Daten.b=2;}

		getline(this-&gt;Datei,tmp);
		cout&lt;&lt;tmp&lt;&lt;&quot;\n&quot;;
		convert(tmp,this-&gt;Daten.c);

		if(Daten.c&lt;=0){Daten.c=2;}

		cout&lt;&lt;&quot;a: &quot;&lt;&lt;this-&gt;Daten.a&lt;&lt;&quot;  b: &quot;&lt;&lt;this-&gt;Daten.b&lt;&lt;&quot;  c: &quot;&lt;&lt;this-&gt;Daten.c;
}

void Map::set(int data)
{

}

template&lt;class A, class B&gt;
void Map::convert(A&amp; input, B &amp;output)
{
						/// Stringstream  http://cplus.kompf.de/artikel/stream4.html
		stringstream ss;
		ss &lt;&lt; input;
		ss &gt;&gt; output;
		if(!ss.eof())
		{
			cout&lt;&lt;&quot; KONVERTIREUNG FEHLGESCHLAGEN&quot;;
		}

}

int main(int argc, _TCHAR* argv[])
{
	Map objekt;

	system(&quot;Pause&quot;);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1525321</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525321</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Sun, 08 Jun 2008 18:40:37 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 19:03:59 GMT]]></title><description><![CDATA[<p>Ein Array aus n Elementen hat nur n Elemente. Und wir fangen mit dem Element Nr. 0 an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525332</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525332</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sun, 08 Jun 2008 19:03:59 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 19:43:15 GMT]]></title><description><![CDATA[<p>habe das gleich beim löschen weg gemacht klappt trozdem nicht.</p>
<p>der löst den error halt schon bei i=0 aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525368</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525368</guid><dc:creator><![CDATA[Matyr]]></dc:creator><pubDate>Sun, 08 Jun 2008 19:43:15 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamisches 3D Array on Sun, 08 Jun 2008 19:54:37 GMT]]></title><description><![CDATA[<p>Falls du einen Fehler machst, erwarte nicht, dass das Programm richtet funktioniert, bevor du ihn an allen Stellen beseitigt hast, wo er auftritt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1525374</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1525374</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sun, 08 Jun 2008 19:54:37 GMT</pubDate></item></channel></rss>