<?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 auf Funktion]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte einen Pointer auf die Funktion &quot;division&quot;, wenn ich das wie im Beispiel realisiere erhalte ich für den Pointer aber immer die Ausgabe 1, anstatt eine &quot;richtige Adresse&quot;.</p>
<p>Kann mir bitte jemand einen Tipp geben wo der Fehler liegt. Die Initialisierung und die Deklaration habe ich 1 zu 1 aus meinem Buch übernommen.</p>
<p>Danke schon jetzt.<br />
Kaspar</p>
<pre><code>#include&lt;iostream&gt;
using namespace std;

double division(int d1, int d2){

	return d1/d2;
	}

int main(){

// Deklaration
double (*PFoo)(int, int);

// Initialisierung
PFoo = &amp; division;

	cout &lt;&lt; PFoo &lt;&lt; endl;		// 1  :confused: 

return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/312110/pointer-auf-funktion</link><generator>RSS for Node</generator><lastBuildDate>Mon, 03 Aug 2026 16:18:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/312110.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 24 Dec 2012 11:25:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pointer auf Funktion on Mon, 24 Dec 2012 11:25:01 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte einen Pointer auf die Funktion &quot;division&quot;, wenn ich das wie im Beispiel realisiere erhalte ich für den Pointer aber immer die Ausgabe 1, anstatt eine &quot;richtige Adresse&quot;.</p>
<p>Kann mir bitte jemand einen Tipp geben wo der Fehler liegt. Die Initialisierung und die Deklaration habe ich 1 zu 1 aus meinem Buch übernommen.</p>
<p>Danke schon jetzt.<br />
Kaspar</p>
<pre><code>#include&lt;iostream&gt;
using namespace std;

double division(int d1, int d2){

	return d1/d2;
	}

int main(){

// Deklaration
double (*PFoo)(int, int);

// Initialisierung
PFoo = &amp; division;

	cout &lt;&lt; PFoo &lt;&lt; endl;		// 1  :confused: 

return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2282949</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2282949</guid><dc:creator><![CDATA[Kasper]]></dc:creator><pubDate>Mon, 24 Dec 2012 11:25:01 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer auf Funktion on Mon, 24 Dec 2012 11:52:58 GMT]]></title><description><![CDATA[<p>Funktionszeiger und Zeiger auf Daten sind untereinander nicht kompatibel. Zudem hat <code>ostream::operator&lt;&lt;</code> keine Überladung für Funktionszeiger (das wäre auch gar nicht so einfach zu machen). Daher ist die passendste Überladung für einen Funktionszeiger der <code>ostream::operator&lt;&lt;(bool)</code> , dessen Ergebnis du hier siehst.</p>
<p><em>Falls</em> Funktionszeiger und Datenzeiger auf deinem System die gleiche Größe haben (sofern du nicht für MS-DOS oder ähnliches programmierst wird dies der Fall sein) kannst du mit einem reinterpret_cast den Funktionszeiger in einen void* umwandeln und somit wie einen &quot;normalen&quot; Zeiger ausgeben:</p>
<pre><code>cout &lt;&lt; reinterpret_cast&lt;void*&gt;(PFoo);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2282962</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2282962</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Mon, 24 Dec 2012 11:52:58 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer auf Funktion on Mon, 24 Dec 2012 12:27:00 GMT]]></title><description><![CDATA[<p>Hallo SeppJ,</p>
<p>Vielen Dank für die schnelle Antwort. Mit reinterpret_cast&lt;void*&gt;(*PFoo); funktioniert es.</p>
<p>Danke!<br />
Kasper</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2282974</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2282974</guid><dc:creator><![CDATA[Kasper]]></dc:creator><pubDate>Mon, 24 Dec 2012 12:27:00 GMT</pubDate></item></channel></rss>