<?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 &amp;amp; new-Operator]]></title><description><![CDATA[<p>[cpp]Hi!</p>
<p>Ich muss demnächst einen Test in C++ bestreiten und es gibt eine Testsammlung aus den Vorjahren. Darunter ist folgende Frage:</p>
<blockquote>
<p>Das folgende Programmfragment ist problematisch:<br />
{<br />
int *abc = new int;<br />
*abc = 100000;<br />
.......<br />
}<br />
Schlagen Sie Korrekturen vor und erklären Sie warum diese notwendig sind!</p>
</blockquote>
<p>Ich vermute es soll in etwa so ausgebessert werden:</p>
<blockquote>
<p>int *abz;<br />
abz = new int;<br />
*abz = 100000;</p>
</blockquote>
<p>Das einzige was ich nicht verstehe ist, worin der Unterschied besteht. Könnte mir das jemand kurz erklären?</p>
<p>Thanks<br />
Jarvis</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/298194/pointer-amp-new-operator</link><generator>RSS for Node</generator><lastBuildDate>Thu, 13 Aug 2026 23:33:23 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/298194.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 15 Jan 2012 15:09:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pointer &amp;amp; new-Operator on Sun, 15 Jan 2012 15:09:28 GMT]]></title><description><![CDATA[<p>[cpp]Hi!</p>
<p>Ich muss demnächst einen Test in C++ bestreiten und es gibt eine Testsammlung aus den Vorjahren. Darunter ist folgende Frage:</p>
<blockquote>
<p>Das folgende Programmfragment ist problematisch:<br />
{<br />
int *abc = new int;<br />
*abc = 100000;<br />
.......<br />
}<br />
Schlagen Sie Korrekturen vor und erklären Sie warum diese notwendig sind!</p>
</blockquote>
<p>Ich vermute es soll in etwa so ausgebessert werden:</p>
<blockquote>
<p>int *abz;<br />
abz = new int;<br />
*abz = 100000;</p>
</blockquote>
<p>Das einzige was ich nicht verstehe ist, worin der Unterschied besteht. Könnte mir das jemand kurz erklären?</p>
<p>Thanks<br />
Jarvis</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168377</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168377</guid><dc:creator><![CDATA[Jarvis87]]></dc:creator><pubDate>Sun, 15 Jan 2012 15:09:28 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer &amp;amp; new-Operator on Sun, 15 Jan 2012 15:16:45 GMT]]></title><description><![CDATA[<p>Das ist nicht die Lösung. Was gehört zu jedem new?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168378</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168378</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Sun, 15 Jan 2012 15:16:45 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer &amp;amp; new-Operator on Sun, 15 Jan 2012 15:18:42 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">{ 
int *abc = new int; 
*abc = 100000; 
....... 
}
</code></pre>
<p>ist genau das gleiche wie</p>
<pre><code class="language-cpp">int *abz; 
abz = new int; 
*abz = 100000;
......
</code></pre>
<p>ausser dass du im zweiten Codeausschnitt die Deklaration und Initialisierung trennst.</p>
<p>Das problematische an dem Codefragment ist wohl eher die Frage, wo der Speicher wieder freigegeben wird. Speicher, den durch 'new' angelegt wird, wird nicht automatisch freigegeben. Der muss irgendwo explizit durch 'delete' gelöscht werden sonst gibt es Probleme - Stickwort 'memory leaks'.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168379</guid><dc:creator><![CDATA[icarus2]]></dc:creator><pubDate>Sun, 15 Jan 2012 15:18:42 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer &amp;amp; new-Operator on Sun, 15 Jan 2012 15:47:45 GMT]]></title><description><![CDATA[<p>Wow, das ging schnell!</p>
<p>Danke für die Antworten und für die simple Lösung...</p>
<p>Zwei Fragen hätt ich noch:</p>
<blockquote>
<p>Das folgende Programmfragment ist fehlerhaft:<br />
bool test = bound1 &amp;&amp; bound2;<br />
if test {<br />
// .......<br />
} else {<br />
// .......<br />
}<br />
Korrigieren Sie die Fehler im Programmcode und erklären Sie, warum die Korrekturen<br />
notwendig sind!</p>
</blockquote>
<p>und</p>
<blockquote>
<p>Das folgende Programmfragment ist fehlerhaft:<br />
int xyz;<br />
xyz = 123450000;<br />
int xyz_ptr = &amp;xyz;<br />
delete xyz_ptr;<br />
Schlagen Sie Korrekturen vor und erklären Sie warum diese notwendig sind!</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/2168390</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168390</guid><dc:creator><![CDATA[Jarvis87]]></dc:creator><pubDate>Sun, 15 Jan 2012 15:47:45 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer &amp;amp; new-Operator on Sun, 15 Jan 2012 15:52:59 GMT]]></title><description><![CDATA[<p>Beim ersten fehlen die runden Klammern beim if.<br />
Beim zweiten fehlt dem &quot;Pointer&quot; das Sternchen und es wird versucht delete auf ihn aufzurufen, obwohl er nicht auf Speicher zeigt, das von new angelegt wurde.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168391</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168391</guid><dc:creator><![CDATA[Ethon]]></dc:creator><pubDate>Sun, 15 Jan 2012 15:52:59 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer &amp;amp; new-Operator on Sun, 15 Jan 2012 15:56:49 GMT]]></title><description><![CDATA[<p>Beim ersten fehlen Klammern um das if.<br />
Beim zweiten ist xyz_ptr kein Pointer. Das delete auf ein Stackobjekt macht natürlich auch keinen Sinn, wobei ich mich frage, was man da als Korrektur vorschlagen soll. delete raus hauen? Aber irgendwie steht der ganze Code ja in keinem Zusammenhang, da finde ich, dass das Weglassen von Dingen eigentlich nicht mehr in der Menge der korrekten Möglichkeiten liegt. Na ja, da musst du wohl fragen.</p>
<p>Edit: Zu spät.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168394</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168394</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Sun, 15 Jan 2012 15:56:49 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer &amp;amp; new-Operator on Sun, 15 Jan 2012 16:20:35 GMT]]></title><description><![CDATA[<p>Vielen vielen Dank <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/2168405</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168405</guid><dc:creator><![CDATA[Jarvis87]]></dc:creator><pubDate>Sun, 15 Jan 2012 16:20:35 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer &amp;amp; new-Operator on Sun, 15 Jan 2012 16:27:07 GMT]]></title><description><![CDATA[<p>Ehrlich gesagt, hatte ich zunächst gedacht, dass das delete irgendwo hinter den Punkten versteckt sei. Mein erster Gedanke war: Man sieht dort nicht den Sinn der Heapallozierung -&gt; die ist eventuell überflüssig -&gt;</p>
<pre><code class="language-cpp">int abz = 100000;
</code></pre>
<p><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="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2168410</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2168410</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Sun, 15 Jan 2012 16:27:07 GMT</pubDate></item></channel></rss>