<?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[AdressvonZeiern und Adress von Speicher auf dem Heap]]></title><description><![CDATA[<p>Also ich versteh das doch schon richtig jetzt, wenn ich habe: int *p=new int[10];<br />
dann wird mir hier&quot; cout &lt;&lt; p &lt;&lt; endl; &quot;die Adress von p[0] ausgedruckt, stimmt doch oder?<br />
wenn ich dann mach&quot;p++; cout &lt;&lt; p &lt;&lt; endl;&quot;dann wird mir jetzt die Adress von p[1] ausgedruckt?<br />
Und wenn ich mach:&quot;cout &lt;&lt; &amp;p &lt;&lt; endl&quot;dann wird mir doch die Adress vom Zeiger p der auf das erste Element gerichtet ist ausgegeben. Bin nämlich grad bisschen verwirrt. Ich seh zuviele Zeiger um mich <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="🙂"
    /><br />
Dankeschön schon mal im Voraus.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/172525/adressvonzeiern-und-adress-von-speicher-auf-dem-heap</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 21:40:21 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/172525.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 05 Feb 2007 20:59:41 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to AdressvonZeiern und Adress von Speicher auf dem Heap on Mon, 05 Feb 2007 20:59:41 GMT]]></title><description><![CDATA[<p>Also ich versteh das doch schon richtig jetzt, wenn ich habe: int *p=new int[10];<br />
dann wird mir hier&quot; cout &lt;&lt; p &lt;&lt; endl; &quot;die Adress von p[0] ausgedruckt, stimmt doch oder?<br />
wenn ich dann mach&quot;p++; cout &lt;&lt; p &lt;&lt; endl;&quot;dann wird mir jetzt die Adress von p[1] ausgedruckt?<br />
Und wenn ich mach:&quot;cout &lt;&lt; &amp;p &lt;&lt; endl&quot;dann wird mir doch die Adress vom Zeiger p der auf das erste Element gerichtet ist ausgegeben. Bin nämlich grad bisschen verwirrt. Ich seh zuviele Zeiger um mich <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="🙂"
    /><br />
Dankeschön schon mal im Voraus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1223522</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1223522</guid><dc:creator><![CDATA[Stromberg]]></dc:creator><pubDate>Mon, 05 Feb 2007 20:59:41 GMT</pubDate></item><item><title><![CDATA[Reply to AdressvonZeiern und Adress von Speicher auf dem Heap on Tue, 06 Feb 2007 01:18:12 GMT]]></title><description><![CDATA[<p>Ja, das stimmt so.<br />
Ein Zeiger ist ja auch eine &quot;Variable&quot;, und muss auch irgendwo zuhause sein -- also hat er auch eine Adresse. Also kann es z.B. auch Zeiger auf Zeiger geben.</p>
<p>Die Standard Streams schreiben wenn du einen Zeiger reinsteckst nicht das auf was er Zeigt raus, sondern den &quot;Wert des Zeigers&quot;, also die Adresse von dem auf was er zeigt wenn man so will.</p>
<p>Da &quot;&amp;p&quot; nun einen Zeiger auf einen Zeiger macht (int**), und du diesen &quot;Zeiger auf p&quot; in den Stream reinsteckst, wird logischerweise die Adresse von p selbst angezeigt, da &quot;&amp;p&quot; ja auf p zeigt. Sozusagen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1223586</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1223586</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 06 Feb 2007 01:18:12 GMT</pubDate></item><item><title><![CDATA[Reply to AdressvonZeiern und Adress von Speicher auf dem Heap on Tue, 06 Feb 2007 12:44:21 GMT]]></title><description><![CDATA[<p>Jetzt nur mal n primitives Beispiel:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main()
{
    int *a=new int[5];
    a[0]=22;
    a[1]=24;
    a[2]=35;
    a[3]=46;
    a[4]=57;
    int **b=&amp;a;
    cout &lt;&lt; *b[0] &lt;&lt; endl;  // Ausgabe: 22 RICHTIG!
    cout &lt;&lt; *b[1] &lt;&lt; endl;  // Ausgabe: 2293696 FALSCH! Warum?
    return 0;
}
</code></pre>
<p>Warum geht das nicht? (also warum kommt da die falsche Ausgabe?)<br />
Dankeschön schon mal im Voraus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1223790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1223790</guid><dc:creator><![CDATA[Stromberg]]></dc:creator><pubDate>Tue, 06 Feb 2007 12:44:21 GMT</pubDate></item><item><title><![CDATA[Reply to AdressvonZeiern und Adress von Speicher auf dem Heap on Tue, 06 Feb 2007 12:50:25 GMT]]></title><description><![CDATA[<p>Weil hier [] vor * gewertet wird. Schreib ( *b )[ 1 ] dann gehts, oder **b+1 oder 1[ *b ]. <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/1223795</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1223795</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Tue, 06 Feb 2007 12:50:25 GMT</pubDate></item><item><title><![CDATA[Reply to AdressvonZeiern und Adress von Speicher auf dem Heap on Tue, 06 Feb 2007 12:50:28 GMT]]></title><description><![CDATA[<p>Das hängt am Operator-Vorrang - [] hat höhere Proirität als *, deshalb ist *b[1]= *(b[1]). b[1] ist schon außerhalb des von dir kontrollierten Speichers<sup>*</sup> und deshalb macht es wenig Sinn, daüber zu sprechen, wohin es zeigt.</p>
<p><sup>*</sup> Mit der Index-Schreibweise gehst du davon aus, daß b auf ein Array von int* zeigt - b[0] ist das erste Element dieses Arrays, b[1] das zweite, also mit etwas Glück ist das b (je nach Speicher-Layout).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1223796</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1223796</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 06 Feb 2007 12:50:28 GMT</pubDate></item></channel></rss>