<?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[Addresse einer Funktion ausgeben]]></title><description><![CDATA[<p>Hallo,<br />
angenommen, ich hab die Funktion void MyFunc(), wie kann ich ausgeben, an welcher Addresse sie sich befindet?</p>
<p>Ich hab folgendes probiert:</p>
<pre><code class="language-cpp">cout &lt;&lt; MyFunc &lt;&lt; endl;
</code></pre>
<p>und da ich über google gesehen hab, dass es mit Function pointers geht:</p>
<pre><code class="language-cpp">void (*fpPointer)();
fpPointer = MyFunc;
cout &lt;&lt; *fpPointer &lt;&lt; endl;
</code></pre>
<p>Egal welche version ich kompiliere, mein Kompiler liefert mir immer die warnung:</p>
<pre><code>warning: the address of `void MyFunc()', will always evaluate as `true'
</code></pre>
<p>Wie mach ich das richtig?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/294314/addresse-einer-funktion-ausgeben</link><generator>RSS for Node</generator><lastBuildDate>Sat, 15 Aug 2026 23:30:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/294314.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 22 Oct 2011 19:32:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Addresse einer Funktion ausgeben on Sat, 22 Oct 2011 19:32:33 GMT]]></title><description><![CDATA[<p>Hallo,<br />
angenommen, ich hab die Funktion void MyFunc(), wie kann ich ausgeben, an welcher Addresse sie sich befindet?</p>
<p>Ich hab folgendes probiert:</p>
<pre><code class="language-cpp">cout &lt;&lt; MyFunc &lt;&lt; endl;
</code></pre>
<p>und da ich über google gesehen hab, dass es mit Function pointers geht:</p>
<pre><code class="language-cpp">void (*fpPointer)();
fpPointer = MyFunc;
cout &lt;&lt; *fpPointer &lt;&lt; endl;
</code></pre>
<p>Egal welche version ich kompiliere, mein Kompiler liefert mir immer die warnung:</p>
<pre><code>warning: the address of `void MyFunc()', will always evaluate as `true'
</code></pre>
<p>Wie mach ich das richtig?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2134452</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2134452</guid><dc:creator><![CDATA[seux]]></dc:creator><pubDate>Sat, 22 Oct 2011 19:32:33 GMT</pubDate></item><item><title><![CDATA[Reply to Addresse einer Funktion ausgeben on Sat, 22 Oct 2011 19:37:42 GMT]]></title><description><![CDATA[<p>Geht das überhaupt? Ich nehme mal an er gibt immer true aus, weil geschaut wird, ob es die Funktion gibt. Und da es sie gibt, true...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2134453</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2134453</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 22 Oct 2011 19:37:42 GMT</pubDate></item><item><title><![CDATA[Reply to Addresse einer Funktion ausgeben on Sat, 22 Oct 2011 19:39:58 GMT]]></title><description><![CDATA[<p>Du bekommst diese Warnung, weil die einzig brauchbare Überladung des operator&lt;&lt; der ist, der einen bool frisst. Und die Adresse einer Funktion ist niemals der Nullzeiger. Deswegen kommt da immer &quot;true&quot; bzw &quot;1&quot; raus. Das und nur das sagt die Warnung.</p>
<p>Sofern sizeof(void*)==sizeof(void(<em>)()) gilt (das mag nicht unbedingt garantiert sein) könntest Du reinterpret_cast&lt;void const</em>&gt;(&amp;MyFunction) verwenden. Für void* gibt es nämlich einen operator&lt;&lt;, der die Adresse in Hex ausgibt (oder so).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2134454</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2134454</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Sat, 22 Oct 2011 19:39:58 GMT</pubDate></item><item><title><![CDATA[Reply to Addresse einer Funktion ausgeben on Sat, 22 Oct 2011 19:39:36 GMT]]></title><description><![CDATA[<p>Vermutlich geht es mit einem reinterpret_cast:</p>
<pre><code class="language-cpp">std::cout &lt;&lt; reinterpret_cast&lt;void*&gt;(f);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2134455</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2134455</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Sat, 22 Oct 2011 19:39:36 GMT</pubDate></item><item><title><![CDATA[Reply to Addresse einer Funktion ausgeben on Sat, 22 Oct 2011 19:53:18 GMT]]></title><description><![CDATA[<p>beide vorschläge liefern mir den error</p>
<pre><code>ISO C++ forbids casting between pointer-to-function and pointer-to-object
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2134461</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2134461</guid><dc:creator><![CDATA[seux]]></dc:creator><pubDate>Sat, 22 Oct 2011 19:53:18 GMT</pubDate></item><item><title><![CDATA[Reply to Addresse einer Funktion ausgeben on Sat, 22 Oct 2011 20:01:26 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">std::cout &lt;&lt; std::hex &lt;&lt; reinterpret_cast&lt;intptr_t&gt;(&amp;MyFunc);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2134464</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2134464</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 22 Oct 2011 20:01:26 GMT</pubDate></item><item><title><![CDATA[Reply to Addresse einer Funktion ausgeben on Sat, 22 Oct 2011 20:14:18 GMT]]></title><description><![CDATA[<p>Funktioniert, danke <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/2134468</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2134468</guid><dc:creator><![CDATA[seux]]></dc:creator><pubDate>Sat, 22 Oct 2011 20:14:18 GMT</pubDate></item></channel></rss>