<?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[Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen?]]></title><description><![CDATA[<p>hi,</p>
<p>wie ist es möglich, dass ich einen Funktionszeiger in eine Variable (selbst ein Zeiger) speichere, und mithilfe der nun in dieser Variable gespeicherten Adresse die darin enthaltene Funktion wieder aufrufe? danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/192482/funktionszeiger-in-variable-speichern-und-funktion-anschließend-aufrufen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 10:28:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/192482.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 14 Sep 2007 22:24:49 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Fri, 14 Sep 2007 22:24:49 GMT]]></title><description><![CDATA[<p>hi,</p>
<p>wie ist es möglich, dass ich einen Funktionszeiger in eine Variable (selbst ein Zeiger) speichere, und mithilfe der nun in dieser Variable gespeicherten Adresse die darin enthaltene Funktion wieder aufrufe? danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1365629</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1365629</guid><dc:creator><![CDATA[Klaus K.]]></dc:creator><pubDate>Fri, 14 Sep 2007 22:24:49 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Fri, 14 Sep 2007 22:43:51 GMT]]></title><description><![CDATA[<p>?? oO</p>
<p>Meinst du sowas:</p>
<pre><code class="language-cpp">void method() { std::cout &lt;&lt; &quot;hi&quot;; }

// ...
void (*fp)() = method;
void* p = fp;
(static_cast&lt;void (*)()&gt;(p))();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1365636</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1365636</guid><dc:creator><![CDATA[this-*gt*that]]></dc:creator><pubDate>Fri, 14 Sep 2007 22:43:51 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Fri, 14 Sep 2007 22:55:59 GMT]]></title><description><![CDATA[<p>Jau danke, genau das wollte ich wissen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <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="🙂"
    /> Schönen abend noch!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1365639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1365639</guid><dc:creator><![CDATA[Klaus K.]]></dc:creator><pubDate>Fri, 14 Sep 2007 22:55:59 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Sat, 15 Sep 2007 02:18:31 GMT]]></title><description><![CDATA[<p>Das ist UB.<br />
Man darf zwar jeden Datenzeiger nach void* casten und wieder zurück, aber nicht Funktionszeiger.<br />
Ist doof, aber der Standard sagt halt so.</p>
<p>Die meisten Compiler unterstützen es freilich trotzdem (weil's normal auch garkein Problem ist).</p>
<p>EDIT: d.h. ich bin mir nur 90% sicher dass es UB ist - wenn's nicht UB ist ist es &quot;implementation defined&quot; (würde mich aber sehr wundern).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1365671</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1365671</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sat, 15 Sep 2007 02:18:31 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Sat, 15 Sep 2007 06:29:01 GMT]]></title><description><![CDATA[<p><a href="http://www.parashift.com/c++-faq-lite/pointers-to-members.html#faq-33.8" rel="nofollow">http://www.parashift.com/c++-faq-lite/pointers-to-members.html#faq-33.8</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1365684</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1365684</guid><dc:creator><![CDATA[finix]]></dc:creator><pubDate>Sat, 15 Sep 2007 06:29:01 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Sat, 15 Sep 2007 07:13:18 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>Die meisten Compiler unterstützen es freilich trotzdem (weil's normal auch garkein Problem ist).</p>
</blockquote>
<p>Das geht zum Beispiel unter MS-DOS in Speichermodellen schief, in denen Datenzeiger near (nur Offset) und Funktionszeiger far (Segment:Offset) sind.</p>
<p>Der OP hat aber gar nichts von void* gesagt, ich frage mich, ob die Frage wirklich so gemeint war. Denn fp ist ja in dem Beispiel schon eine Variable, über die man auch die Funktion wieder aufrufen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1365690</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1365690</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Sat, 15 Sep 2007 07:13:18 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Sat, 15 Sep 2007 17:28:41 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/4239">@finix</a>: von member pointern war glaube ich nie die Rede</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/904">@Bashar</a>: ja, ich weiss dass es Plattformen gibt auf denen es nicht geht - auf &quot;den üblichen Plattformen&quot; (Win32, Linux, ...) geht es aber wie gesagt. Ich wollte auch hauptsächlich darauf hinweisen dass nicht garantiert ist dass es geht, nur wollte ich auch gleich dem unvermeidlichen &quot;funktioniert aber trotzdem sogut wie überall&quot; vorgreifen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366015</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366015</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sat, 15 Sep 2007 17:28:41 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Sat, 15 Sep 2007 17:31:35 GMT]]></title><description><![CDATA[<p>Ich wollte gar nichts gegen dich sagen, nur Hintergrundinformationen liefern. <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/1366017</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366017</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Sat, 15 Sep 2007 17:31:35 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Sat, 15 Sep 2007 19:16:19 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/4239">@finix</a>: von member pointern war glaube ich nie die Rede</p>
</blockquote>
<p>URI != Content:</p>
<p>parashift FAQ schrieb:</p>
<blockquote>
<p>[33.8] Can I convert a <strong>pointer-to-function</strong> to a void*?</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1366068</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366068</guid><dc:creator><![CDATA[finix]]></dc:creator><pubDate>Sat, 15 Sep 2007 19:16:19 GMT</pubDate></item><item><title><![CDATA[Reply to Funktionszeiger in Variable speichern, und Funktion anschließend aufrufen? on Sat, 15 Sep 2007 22:52:50 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/4239">@finix</a>: sooorry <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/1366123</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366123</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sat, 15 Sep 2007 22:52:50 GMT</pubDate></item></channel></rss>