<?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[Wie sieht das im Speicher aus?]]></title><description><![CDATA[<p>Hallo, ich habe folgendes Programm:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;
void main()
{
int ganz = 4711;
int *pganz = &amp;ganz;
cout &lt;&lt; pganz &lt;&lt; endl;
cout &lt;&lt; &amp;pganz &lt;&lt; endl;
cout &lt;&lt; *pganz &lt;&lt; endl;
}
</code></pre>
<p>Die Ausgaben sehen so aus:</p>
<pre><code>0012FF7C // von mir umgerechnet 01245052
0012FF78 // 01245048
4711
</code></pre>
<p>Wie kann ich mir das im Speicher vorstellen? Da gibt es ja einen Pointer und eine Referenz. Was ist der Anfang und was das Ende im Speicher? Also welche Adresse gibt denn nun letzendlich was an? Ich bin für Hilfe sehr dankbar.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/127368/wie-sieht-das-im-speicher-aus</link><generator>RSS for Node</generator><lastBuildDate>Tue, 25 Aug 2026 02:15:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/127368.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 23 Nov 2005 16:21:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie sieht das im Speicher aus? on Wed, 23 Nov 2005 16:21:15 GMT]]></title><description><![CDATA[<p>Hallo, ich habe folgendes Programm:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;
void main()
{
int ganz = 4711;
int *pganz = &amp;ganz;
cout &lt;&lt; pganz &lt;&lt; endl;
cout &lt;&lt; &amp;pganz &lt;&lt; endl;
cout &lt;&lt; *pganz &lt;&lt; endl;
}
</code></pre>
<p>Die Ausgaben sehen so aus:</p>
<pre><code>0012FF7C // von mir umgerechnet 01245052
0012FF78 // 01245048
4711
</code></pre>
<p>Wie kann ich mir das im Speicher vorstellen? Da gibt es ja einen Pointer und eine Referenz. Was ist der Anfang und was das Ende im Speicher? Also welche Adresse gibt denn nun letzendlich was an? Ich bin für Hilfe sehr dankbar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/925436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/925436</guid><dc:creator><![CDATA[Kartoffelknolle]]></dc:creator><pubDate>Wed, 23 Nov 2005 16:21:15 GMT</pubDate></item><item><title><![CDATA[Reply to Wie sieht das im Speicher aus? on Wed, 23 Nov 2005 16:38:41 GMT]]></title><description><![CDATA[<p>1. gibt die Adresse von ganz an. Ein Pointer speichert die Adresse, auf die er zeigt. Also gibt er die auch aus, wenn man ihn ohne Operator anspricht.<br />
2. gibt die Adresse von pganz an. Da auch Pointer Variablen sind haben sie natürlich auch Adressen. Mit &amp; kommt man an die Adresse einer Variable.<br />
3. gibt den Inhalt von ganz aus. Der * Operator sucht sich die Variablen an der Adresse, auf die pganz zeigt und gibt deren Inhalt zurück.<br />
geloescht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/925458</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/925458</guid><dc:creator><![CDATA[geloescht]]></dc:creator><pubDate>Wed, 23 Nov 2005 16:38:41 GMT</pubDate></item><item><title><![CDATA[Reply to Wie sieht das im Speicher aus? on Wed, 23 Nov 2005 20:41:36 GMT]]></title><description><![CDATA[<p>Achso! Also ist das Zweite die Adresse des Pointers! Nur noch so als Frage: Für jede Adresse(z.b. hier 0012FF78) wird doch immer einheitlich soviel platz wie für eden entsprechenden typ der variable reserviert, oder?<br />
Würde das heißen dass auf der Adresse 0012FF78 in dem Falle 2 Byte reserviert sind(ist ja int)?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/925700</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/925700</guid><dc:creator><![CDATA[Kartoffelknolle]]></dc:creator><pubDate>Wed, 23 Nov 2005 20:41:36 GMT</pubDate></item><item><title><![CDATA[Reply to Wie sieht das im Speicher aus? on Wed, 23 Nov 2005 20:46:46 GMT]]></title><description><![CDATA[<p>Wie groß ein Variablentyp ist, ist in C++ Plattformabhängig. Auf 32-Bit Systemen hat es oft eine größe 4 Byte (muss aber auch da nicht unbedingt der Fall sein). Wie groß ein Typ (Byte) ist, kannst du mit sizeof() ermitteln.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/925708</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/925708</guid><dc:creator><![CDATA[Vellas]]></dc:creator><pubDate>Wed, 23 Nov 2005 20:46:46 GMT</pubDate></item><item><title><![CDATA[Reply to Wie sieht das im Speicher aus? on Wed, 23 Nov 2005 20:59:04 GMT]]></title><description><![CDATA[<p>wobei gilt sizeof(char) = 1; char muss allerdings nicht unbedingt 8 bit haben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/925721</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/925721</guid><dc:creator><![CDATA[davie]]></dc:creator><pubDate>Wed, 23 Nov 2005 20:59:04 GMT</pubDate></item><item><title><![CDATA[Reply to Wie sieht das im Speicher aus? on Wed, 23 Nov 2005 22:27:52 GMT]]></title><description><![CDATA[<p>Kartoffelknolle schrieb:</p>
<blockquote>
<p>Achso! Also ist das Zweite die Adresse des Pointers! Nur noch so als Frage: Für jede Adresse(z.b. hier 0012FF78) wird doch immer einheitlich soviel platz wie für eden entsprechenden typ der variable reserviert, oder?</p>
</blockquote>
<p>Nein, zusätzlichen Speicher kannst du mit dem new-Operator reservieren. Ein Zeiger kann immer nur entweder auf ein existierendes Objekt (global, lokal ...) oder aber auf Speicher, der von new kommt, zeigen. (es gibt auch andere Allokationsfunktionen, aber das wird jetzt zu verwirrend)</p>
<blockquote>
<p>Würde das heißen dass auf der Adresse 0012FF78 in dem Falle 2 Byte reserviert sind(ist ja int)?</p>
</blockquote>
<p>Ja schon, da liegt ja die Stack-Variable 'pganz'.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/925763</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/925763</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Wed, 23 Nov 2005 22:27:52 GMT</pubDate></item></channel></rss>