<?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[Feld von Pointern auf NULL setzen]]></title><description><![CDATA[<p>Hi Leute!</p>
<p>Ich möchte mit</p>
<pre><code>hashing::hashing(int m) : size(m)
{
	int** feld = new int*[m];

	for(int i=0; i&lt;size; i++)
	{
		*feld = 0;
		feld++;
	}
}
</code></pre>
<p>ein Feld von Pointern auf NULL setzen. Wenn ich danach das Feld von Pointern auf NULL abfrage, nämlich so</p>
<pre><code>if(feld[idx] == NULL)
	{
		return 1;
	}
	else
	{
		return 0;
	}
</code></pre>
<p>dann meckert der Compiler, dass es eine &quot;unbehandelte Ausnahme, bei..., ... Zugriffsverletzung...&quot; gibt.</p>
<p>Was mache ich falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/316961/feld-von-pointern-auf-null-setzen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Jul 2026 11:32:33 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/316961.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 22 May 2013 13:41:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 13:41:24 GMT]]></title><description><![CDATA[<p>Hi Leute!</p>
<p>Ich möchte mit</p>
<pre><code>hashing::hashing(int m) : size(m)
{
	int** feld = new int*[m];

	for(int i=0; i&lt;size; i++)
	{
		*feld = 0;
		feld++;
	}
}
</code></pre>
<p>ein Feld von Pointern auf NULL setzen. Wenn ich danach das Feld von Pointern auf NULL abfrage, nämlich so</p>
<pre><code>if(feld[idx] == NULL)
	{
		return 1;
	}
	else
	{
		return 0;
	}
</code></pre>
<p>dann meckert der Compiler, dass es eine &quot;unbehandelte Ausnahme, bei..., ... Zugriffsverletzung...&quot; gibt.</p>
<p>Was mache ich falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325270</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325270</guid><dc:creator><![CDATA[vip*r]]></dc:creator><pubDate>Wed, 22 May 2013 13:41:24 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 13:45:43 GMT]]></title><description><![CDATA[<p>vip@r schrieb:</p>
<blockquote>
<p>dann meckert der Compiler, dass es eine &quot;unbehandelte Ausnahme, bei..., ... Zugriffsverletzung...&quot; gibt.</p>
</blockquote>
<p>Logisch.</p>
<p>vip@r schrieb:</p>
<blockquote>
<p>Was mache ich falsch?</p>
</blockquote>
<p>Du verwendest (immer noch) keinen std::vector. Irgendwelche Gründe für diese fatale Entscheidung?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325274</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325274</guid><dc:creator><![CDATA[Zugriffsverletzung]]></dc:creator><pubDate>Wed, 22 May 2013 13:45:43 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 13:46:22 GMT]]></title><description><![CDATA[<pre><code>hashing::hashing(int m) : size(m)
{
	for(int i=0; i&lt;size; i++)
	{
		*feld = 0;
		feld++;
	}
}
</code></pre>
<p>Im Schleifenrumpf verwendest du i gar nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325275</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325275</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 22 May 2013 13:46:22 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 13:55:00 GMT]]></title><description><![CDATA[<p>Lass mich raten: Das feld ist gar nicht das feld aus hashing::hashing.</p>
<p>Wenn du in C++ jemals new für Felder benutzt, machst du fast mit Sicherheit was falsch. Besonders wenn du schon am Unterschied zwischen lokalen und Membervariablen strauchelst. Nimm vector, dann passieren auch weniger von diesen vermeidbaren Fehlern.</p>
<p>P.S.: Ich sehe gerade, dieser Tipp wurde dir in der Vergangenheit schon mehrfach gegeben. Das ist irgendwie selber schuld. Wenn du die Ratschläge nicht verstehst, dann musst du eben erst einmal mehr von der Sprache lernen. Hier im Forum ist viel Lehrmaterial angegeben. vector gehört zum Grundumfang der Sprache, new ist unnötig fehleranfällig. Wenn du es trotz mehrfacher Warnung weiter benutzt, dann wirst du deine selbstgemachten Probleme auch selber lösen müssen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325276</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325276</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 22 May 2013 13:55:00 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 13:52:08 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<pre><code>hashing::hashing(int m) : size(m)
{
	for(int i=0; i&lt;size; i++)
	{
		*feld = 0;
		feld++;
	}
}
</code></pre>
<p>Im Schleifenrumpf verwendest du i gar nicht.</p>
</blockquote>
<p>-Außerdem ist feld lokal.<br />
-Außerdem ist die Abfrage auf NULL oft zweifehlhaft.<br />
-Außerdem wieso new?</p>
<p>Mehr fällt mir grad nicht auf. Aber das kannst du nu erstmal korrigieren <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325278</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325278</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 22 May 2013 13:52:08 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 13:57:15 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<pre><code>hashing::hashing(int m) : size(m)
{
	for(int i=0; i&lt;size; i++)
	{
		*feld = 0;
		feld++;
	}
}
</code></pre>
<p>Im Schleifenrumpf verwendest du i gar nicht.</p>
</blockquote>
<p>Das ist ok. Problematisch könnte nur sein, dass feld nachher ins Nirgendwo zeigt.<br />
Trotzdem könnte man sich dieses nullen auch mit den richtigen Parametern für new oder mit memset schneller erledigen lassen. Aber vip@r ist halt ein echter l0wl3v3l h4xx0r!11</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325279</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325279</guid><dc:creator><![CDATA[Zugriffsverletzung]]></dc:creator><pubDate>Wed, 22 May 2013 13:57:15 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 15:02:05 GMT]]></title><description><![CDATA[<p>vip@r schrieb:</p>
<blockquote>
<p>dann meckert der Compiler, dass es eine &quot;unbehandelte Ausnahme, bei..., ... Zugriffsverletzung...&quot; gibt.</p>
<p>Was mache ich falsch?</p>
</blockquote>
<p>Egal ob die Pointer NULL sind, idx darf die Feldgroesse nicht ueberschreiten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325293</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325293</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Wed, 22 May 2013 15:02:05 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 15:15:35 GMT]]></title><description><![CDATA[<blockquote>
<p>-Außerdem ist feld lokal.<br />
-Außerdem ist die Abfrage auf NULL oft zweifehlhaft.<br />
-Außerdem wieso new?</p>
</blockquote>
<p>Feld ist nicht lokal. Feld steht in meiner Klasse. Siehe hier:</p>
<pre><code>class hashing
{
private:
	int** feld;
	int* elem;
	int size;

public:
	hashing(int size);
	~hashing();
};
</code></pre>
<p>Wie initialisiere ich nun das feld korrekterweise mit NULL?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325297</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325297</guid><dc:creator><![CDATA[vip*r]]></dc:creator><pubDate>Wed, 22 May 2013 15:15:35 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 15:27:53 GMT]]></title><description><![CDATA[<p>vip@r schrieb:</p>
<blockquote>
<pre><code>hashing::hashing(int m) : size(m)
{
	int** feld = new int*[m];

	for(int i=0; i&lt;size; i++)
	{
		*feld = 0;
		feld++;
	}
}
</code></pre>
</blockquote>
<p>feld ist lokal. feld steht in deinem Konstruktor hashing.</p>
<p>vip@r schrieb:</p>
<blockquote>
<p>Wie initialisiere ich nun das feld korrekterweise mit NULL?</p>
</blockquote>
<pre><code>for(int i=0; i!=size; ++i)
    {
		feld[i] = 0;
    }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2325301</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325301</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 22 May 2013 15:27:53 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 15:46:23 GMT]]></title><description><![CDATA[<pre><code>int** feld = new int*[m]();
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325313</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325313</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Wed, 22 May 2013 15:46:23 GMT</pubDate></item><item><title><![CDATA[Reply to Feld von Pointern auf NULL setzen on Wed, 22 May 2013 15:47:32 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<pre><code>for(int i=0; i!=size; ++i)
    {
		feld[i] = 0;
    }
</code></pre>
</blockquote>
<p>Nur um das deutlich zu machen:<br />
Nicht feld nochmal deklarieren!<br />
Das verdeckt dann den Member.<br />
Richtig macht initialisiert man ein dynamisches Array so:</p>
<pre><code>foo::foo()
: field_(42)
{}
</code></pre>
<p>Weils ein vector sein sollte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2325314</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2325314</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Wed, 22 May 2013 15:47:32 GMT</pubDate></item></channel></rss>