<?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[Pointer-Array richtig initialisieren?]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich lege ein Array aus arrays an und würde gerne wissen ob ich zur richtigen Initialisierung wirklich komplett über das ganze Array laufen muss zuerst...so:<br />
Oder gibt es eine Alternative?</p>
<pre><code class="language-cpp">int arr = new int*[size];
for (i = 0; i &lt; size; i++)
    arr[i] = NULL;
</code></pre>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/256641/pointer-array-richtig-initialisieren</link><generator>RSS for Node</generator><lastBuildDate>Fri, 11 Sep 2026 04:51:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/256641.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 15 Dec 2009 20:13:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pointer-Array richtig initialisieren? on Tue, 15 Dec 2009 20:13:19 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich lege ein Array aus arrays an und würde gerne wissen ob ich zur richtigen Initialisierung wirklich komplett über das ganze Array laufen muss zuerst...so:<br />
Oder gibt es eine Alternative?</p>
<pre><code class="language-cpp">int arr = new int*[size];
for (i = 0; i &lt; size; i++)
    arr[i] = NULL;
</code></pre>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1823119</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1823119</guid><dc:creator><![CDATA[Mati]]></dc:creator><pubDate>Tue, 15 Dec 2009 20:13:19 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer-Array richtig initialisieren? on Tue, 15 Dec 2009 20:30:03 GMT]]></title><description><![CDATA[<p>Was drin steht, ist undefiniert, irgendwas altes vom OS. Wenn du überall im Array wirklich 0en haben willst, musst du alles von Hand auf 0 setzten, sonst können irgendwelche Adressen in dem Array stehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1823126</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1823126</guid><dc:creator><![CDATA[Ad aCTa]]></dc:creator><pubDate>Tue, 15 Dec 2009 20:30:03 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer-Array richtig initialisieren? on Tue, 15 Dec 2009 21:57:20 GMT]]></title><description><![CDATA[<p>Mati schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int arr = new int*[size];
</code></pre>
</blockquote>
<p>Dieser Code ist so nicht korrekt. Entweder, du forderst ein dynamisches Array von <code>int</code> -Elementen an:</p>
<pre><code class="language-cpp">int* arr = new int[size];
</code></pre>
<p>Oder von Zeigern auf <code>int</code> (wozu auch immer...)</p>
<pre><code class="language-cpp">int** arr = new int*[size];
</code></pre>
<p>Ad aCTa schrieb:</p>
<blockquote>
<p>Wenn du überall im Array wirklich 0en haben willst, musst du alles von Hand auf 0 setzten, sonst können irgendwelche Adressen in dem Array stehen.</p>
</blockquote>
<p>Nicht wirklich von Hand.</p>
<pre><code class="language-cpp">// Eine Möglichkeit
int* arr = new int[size];
std::fill(arr, arr+size, 0);
delete[] arr;

// Oder einfacher (geht nur beim Defaultwert)
int* arr = new int[size]();
delete[] arr;

// Oder du verwendest gleich STL-Container, die sorgen auch für Freigabe
// folgende Zeile ist äquivalent zu den jeweiligen Anweisungen oben
std::vector&lt;int&gt; arr(size);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1823192</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1823192</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 15 Dec 2009 21:57:20 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer-Array richtig initialisieren? on Wed, 16 Dec 2009 19:04:56 GMT]]></title><description><![CDATA[<p>Soweit ich weiß, initialisiert calloc dein Array automatisch mit 0, ist aber halt C.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1823671</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1823671</guid><dc:creator><![CDATA[wxSkip]]></dc:creator><pubDate>Wed, 16 Dec 2009 19:04:56 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer-Array richtig initialisieren? on Wed, 16 Dec 2009 22:59:33 GMT]]></title><description><![CDATA[<p>wxSkip schrieb:</p>
<blockquote>
<p>Soweit ich weiß, initialisiert calloc dein Array automatisch mit 0, ist aber halt C.</p>
</blockquote>
<p>Dass es C ist, macht es alleine noch nicht gefährlich, aber dafür die Tatsache, dass es nur mit POD-Objekten sinnvoll funktioniert. In C++ sollte man <code>new/new[]</code> und <code>delete/delete[]</code> oder gleich selbstverwaltende Klassen vorziehen, die wissen auch wie mit ihren Elementen umzugehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1823784</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1823784</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Wed, 16 Dec 2009 22:59:33 GMT</pubDate></item></channel></rss>