<?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[Probleme mit Ausgabe von Pointer auf Adresse]]></title><description><![CDATA[<p>Ich bin gerade dabei, mich an den Pointern zu versuchen.<br />
Um mir die Funktionsweise zu verdeutlcihen habe ich ein kleines Prog geschrieben (siehe Quelltext unten).<br />
Es funktioniert soweit, nur bei der Ausgabe vom Pointer, der auf eine Adresse zeigt, haperts.<br />
Es kommt folgende Fehlermeldung:</p>
<p>error C2440: '=': 'int *__w64 ' kann nicht in 'int' konvertiert werden<br />
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat</p>
<p>Was bitte ist eni reinterpret_cast-Operator und warum funzt es so net? Ich habe probiert mir die Adresse als String ausgeben zu lassen, aber auch das hat net gefunzt.</p>
<pre><code class="language-csharp">#include &lt;iostream&gt;
#include &lt;conio.h&gt;

using namespace std;
int main(int argc, char* argv[]) {

	int a = 1;
	int *p = new int;	

	cout &lt;&lt; &quot;Variable a: \t\t&quot; &lt;&lt; a;
	cout &lt;&lt; &quot;\n\nAdresse a: \t\t&quot; &lt;&lt; &amp;a;
	cout &lt;&lt; &quot;\n\nPointer *p: \t\t&quot; &lt;&lt; *p;
	*p = a;
	cout &lt;&lt; &quot;\n\nPointer auf a: \t&quot; &lt;&lt; *p;
	*p = &amp;a;
	cout &lt;&lt; &quot;\n\nPointer auf Adresse von a: \t&quot; &lt;&lt; *p;   //Adresse als String-Ausgabe habe ich so probiert: 
                                                        //&lt;&lt; string *p; hat aber net gefunzt;

	getch();

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/126692/probleme-mit-ausgabe-von-pointer-auf-adresse</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 21:00:45 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/126692.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 17 Nov 2005 13:16:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Thu, 17 Nov 2005 13:16:43 GMT]]></title><description><![CDATA[<p>Ich bin gerade dabei, mich an den Pointern zu versuchen.<br />
Um mir die Funktionsweise zu verdeutlcihen habe ich ein kleines Prog geschrieben (siehe Quelltext unten).<br />
Es funktioniert soweit, nur bei der Ausgabe vom Pointer, der auf eine Adresse zeigt, haperts.<br />
Es kommt folgende Fehlermeldung:</p>
<p>error C2440: '=': 'int *__w64 ' kann nicht in 'int' konvertiert werden<br />
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat</p>
<p>Was bitte ist eni reinterpret_cast-Operator und warum funzt es so net? Ich habe probiert mir die Adresse als String ausgeben zu lassen, aber auch das hat net gefunzt.</p>
<pre><code class="language-csharp">#include &lt;iostream&gt;
#include &lt;conio.h&gt;

using namespace std;
int main(int argc, char* argv[]) {

	int a = 1;
	int *p = new int;	

	cout &lt;&lt; &quot;Variable a: \t\t&quot; &lt;&lt; a;
	cout &lt;&lt; &quot;\n\nAdresse a: \t\t&quot; &lt;&lt; &amp;a;
	cout &lt;&lt; &quot;\n\nPointer *p: \t\t&quot; &lt;&lt; *p;
	*p = a;
	cout &lt;&lt; &quot;\n\nPointer auf a: \t&quot; &lt;&lt; *p;
	*p = &amp;a;
	cout &lt;&lt; &quot;\n\nPointer auf Adresse von a: \t&quot; &lt;&lt; *p;   //Adresse als String-Ausgabe habe ich so probiert: 
                                                        //&lt;&lt; string *p; hat aber net gefunzt;

	getch();

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/920047</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920047</guid><dc:creator><![CDATA[sarah1986]]></dc:creator><pubDate>Thu, 17 Nov 2005 13:16:43 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Thu, 17 Nov 2005 13:27:31 GMT]]></title><description><![CDATA[<p>sarah1986 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">*p = a;
	cout &lt;&lt; &quot;\n\nPointer auf a: \t&quot; &lt;&lt; *p;
</code></pre>
</blockquote>
<p>&quot;Pointer auf a&quot; würde in meinen ohren was anderes heißen. was du getan hast: du hast den wert von a in den mit new erzeugten int gelegt, auf den p zeigt. a und *p sind unabhängig voneinander.</p>
<pre><code class="language-cpp">*p = a; //sagen wir, a = 4
*p = 5; //a ist aber immer noch 4
</code></pre>
<p>sarah1986 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">*p = &amp;a;
</code></pre>
</blockquote>
<p>ich bin mir nicht sicher, was du tun willst. willst du p auf a zeigen lassen? dann</p>
<pre><code class="language-cpp">p = &amp;a; //jetzt wirken *p und a auf denselben integer
*p = 5; //ist gleichbedeutend mit a = 5
//der mit new angelegte int ist übrigens jetzt nicht mehr zugreifbar, ein speicherleck. schlecht.
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/920061</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920061</guid><dc:creator><![CDATA[davie]]></dc:creator><pubDate>Thu, 17 Nov 2005 13:27:31 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Thu, 17 Nov 2005 13:56:47 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/10495">@sarah1986</a>: Vllt. hilft dir folgendes Listing:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

int main(int argc, char **argv) {
  int i = 5, j;
  int *p = &amp;i;    //mit Operator &amp; Adresse von i holen und an p zuweisen
  j = *p;  //Derefenziere p mit Operator * und weise Ergebnis j zu
  cout&lt;&lt;j&lt;&lt;'\n';  //Gibt 5 aus

  p = &amp;j;  //p zeigt jetzt auf j
  *p = 215;  //p dereferenzieren und 215 zuweisen
  cout&lt;&lt;j&lt;&lt;'\n';  //Gibt 215 aus
  return 0;
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/920111</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920111</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Thu, 17 Nov 2005 13:56:47 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Fri, 18 Nov 2005 06:40:58 GMT]]></title><description><![CDATA[<p>GPC schrieb:</p>
<blockquote>
<p>int main(int argc, char **argv) {<br />
int i = 5, j;<br />
int *p = &amp;i; //mit Operator &amp; Adresse von i holen und an p zuweisen<br />
j = *p; //Derefenziere p mit Operator * und weise Ergebnis j zu<br />
cout&lt;&lt;j&lt;&lt;'\n'; //Gibt 5 aus</p>
</blockquote>
<p>Warum kommt hier 5 raus? Wenn ich den Pointer die Adresse von i zuweise, muesste er doch die Adresse ausgeben, oder nicht?</p>
<p>GPC schrieb:</p>
<blockquote>
<p>p = &amp;j; //p zeigt jetzt auf j</p>
</blockquote>
<p>zeigt der p in dem Fall nicht auf die Adresse von j?</p>
<p>Ich versteh das irgendwie net, was mache ich, indem ich den ZEIGER dereferenziere (also das * davor schreibe)? Was passiert in dem Moment mit dem p?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/920146</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920146</guid><dc:creator><![CDATA[sarah1986]]></dc:creator><pubDate>Fri, 18 Nov 2005 06:40:58 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Fri, 18 Nov 2005 07:09:18 GMT]]></title><description><![CDATA[<p>sarah1986 schrieb:</p>
<blockquote>
<p>GPC schrieb:</p>
<blockquote>
<p>int main(int argc, char **argv) {<br />
int i = 5, j;<br />
int *p = &amp;i; //mit Operator &amp; Adresse von i holen und an p zuweisen<br />
j = *p; //Derefenziere p mit Operator * und weise Ergebnis j zu<br />
cout&lt;&lt;j&lt;&lt;'\n'; //Gibt 5 aus</p>
</blockquote>
<p>Warum kommt hier 5 raus? Wenn ich den Pointer die Adresse von i zuweise, muesste er doch die Adresse ausgeben, oder nicht?</p>
</blockquote>
<p>p wird die adresse von i zugewisen (zeigt auf die adresse), und j wird (durch das dereferenzieren) der inhalt dieser adrese (wert 5 ) zugewiesen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/920171</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920171</guid><dc:creator><![CDATA[ser1al]]></dc:creator><pubDate>Fri, 18 Nov 2005 07:09:18 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Fri, 18 Nov 2005 07:18:27 GMT]]></title><description><![CDATA[<p>ich glaube, so ganz langsam verstehe ich es... Vielen Dank!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/920183</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920183</guid><dc:creator><![CDATA[sarah1986]]></dc:creator><pubDate>Fri, 18 Nov 2005 07:18:27 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Fri, 18 Nov 2005 07:19:44 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">p=&amp;i;
</code></pre>
<p>Das bedeutet, daß p anschließend die Adresse <em>enthält</em> - d.h. er &quot;zeigt&quot; auf den Speicherplatz, wo i abgelegt wurde.</p>
<pre><code class="language-cpp">j=*p;
</code></pre>
<p>Die Anweisung dereferenziert den Pointer p (gibt also den Wert zurück, auf den p zeigt) und weist den erhaltenen Wert der Variablen j zu.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/920185</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920185</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 18 Nov 2005 07:19:44 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Fri, 18 Nov 2005 08:51:35 GMT]]></title><description><![CDATA[<p>Das heißt jetzt also, immer wenn ich ein * vor den Pointer schreibe, gebe ich den Inhalt aus, ohne Stern die Adresse?<br />
Und bei Variablen den Inhalt mit dem Namen der Variable und mit einem &amp; davor, die Adresse der Variablen?<br />
Hab ich das jetzt richtig verstanden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/920286</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920286</guid><dc:creator><![CDATA[sarah1986]]></dc:creator><pubDate>Fri, 18 Nov 2005 08:51:35 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Ausgabe von Pointer auf Adresse on Fri, 18 Nov 2005 08:55:12 GMT]]></title><description><![CDATA[<p>sarah1986 schrieb:</p>
<blockquote>
<p>Das heißt jetzt also, immer wenn ich ein * vor den Pointer schreibe, gebe ich den Inhalt aus, ohne Stern die Adresse?<br />
Und bei Variablen den Inhalt mit dem Namen der Variable und mit einem &amp; davor, die Adresse der Variablen?<br />
Hab ich das jetzt richtig verstanden?</p>
</blockquote>
<p>Ja. Stimmt so. Im Übrigen gibt's auch nen Artikel von mir zum Thema Pointer. Findest du im Artikel Sub-Forum.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/920294</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/920294</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Fri, 18 Nov 2005 08:55:12 GMT</pubDate></item></channel></rss>