<?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[C++ typecasting]]></title><description><![CDATA[<p>Hallo,</p>
<p>folgendes kleines Testprogramm läßt sich problemlos mit MinGW kompilieren und linken:</p>
<pre><code class="language-cpp">int funk(void *ptr)
{
	// Mach irgendwas
	return 1;
}

int main()
{
	int a = funk((void*)(main));
}
</code></pre>
<p>Wenn ich aber den C-Style - Cast weglasse, oder aber versuche, static_cast&lt;void *&gt; zu verwenden, verweigert der Compiler seinen Dienst.<br />
Einmal mit der Meldung: invalid conversion from ...<br />
und einmal mit: invalid static_cast from ...</p>
<p>Normalerweise sollte man aber doch sämtliche C-Style Casts durch C++ Casts ersetzen können ...<br />
In diesem Fall finde ich keinen Weg dazu.<br />
dynamic_ und reinterpret_ casts gehen erwartungsgemäß auch nicht.<br />
Heisst das, daß es tatsächlich Fälle gibt, in denen man C-Style Casts nicht vermeiden kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/230642/c-typecasting</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 06:37:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/230642.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 30 Dec 2008 11:08:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C++ typecasting on Tue, 30 Dec 2008 11:08:55 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>folgendes kleines Testprogramm läßt sich problemlos mit MinGW kompilieren und linken:</p>
<pre><code class="language-cpp">int funk(void *ptr)
{
	// Mach irgendwas
	return 1;
}

int main()
{
	int a = funk((void*)(main));
}
</code></pre>
<p>Wenn ich aber den C-Style - Cast weglasse, oder aber versuche, static_cast&lt;void *&gt; zu verwenden, verweigert der Compiler seinen Dienst.<br />
Einmal mit der Meldung: invalid conversion from ...<br />
und einmal mit: invalid static_cast from ...</p>
<p>Normalerweise sollte man aber doch sämtliche C-Style Casts durch C++ Casts ersetzen können ...<br />
In diesem Fall finde ich keinen Weg dazu.<br />
dynamic_ und reinterpret_ casts gehen erwartungsgemäß auch nicht.<br />
Heisst das, daß es tatsächlich Fälle gibt, in denen man C-Style Casts nicht vermeiden kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1637207</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1637207</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Tue, 30 Dec 2008 11:08:55 GMT</pubDate></item><item><title><![CDATA[Reply to C++ typecasting on Tue, 30 Dec 2008 11:49:56 GMT]]></title><description><![CDATA[<p>MSVC schluckt den static_cast. Wobei man überhaupt keinen Cast benötigt. Alle Zeiger (bis auf Member-Zeiger) lassen sich implizit in void* casten.</p>
<p>Gruß<br />
Don06</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1637218</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1637218</guid><dc:creator><![CDATA[Don06]]></dc:creator><pubDate>Tue, 30 Dec 2008 11:49:56 GMT</pubDate></item><item><title><![CDATA[Reply to C++ typecasting on Tue, 30 Dec 2008 11:58:48 GMT]]></title><description><![CDATA[<p>Mhm, also ein Fehler des g++ von MinGW?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1637220</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1637220</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Tue, 30 Dec 2008 11:58:48 GMT</pubDate></item><item><title><![CDATA[Reply to C++ typecasting on Tue, 30 Dec 2008 12:53:27 GMT]]></title><description><![CDATA[<p>mein GCC beschwert sich mit static_cast zwar auch(da ich void* nie benutzt habe, kann ich dir nicht sagen ob zurecht), aber mit reinterpret_cast gehts.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1637234</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1637234</guid><dc:creator><![CDATA[JustAnotherNoob]]></dc:creator><pubDate>Tue, 30 Dec 2008 12:53:27 GMT</pubDate></item><item><title><![CDATA[Reply to C++ typecasting on Tue, 30 Dec 2008 13:12:57 GMT]]></title><description><![CDATA[<p>Don06 schrieb:</p>
<blockquote>
<p>Alle Zeiger (bis auf Member-Zeiger) lassen sich implizit in void* casten.</p>
</blockquote>
<p>Nur Zeiger auf Daten, für Funktionszeiger gilt das nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1637245</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1637245</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Tue, 30 Dec 2008 13:12:57 GMT</pubDate></item></channel></rss>