<?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[Typecasting]]></title><description><![CDATA[<p>Hallo wo ist der unterschieden zwischen der Expliziten und der Implitizen Typekonveriterung ?</p>
<p>charVar hat hier den selben wert wie ret.</p>
<p>Ich verstehe nicht wofür diese Casterei sein soll wenn man doch auch einfach schreiben kann: ret = longVar;</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main()
{

long longVar = 99999;

char charVar;
char ret;

charVar = static_cast&lt;char&gt;(longVar);  // Explizite Konvertierung
cout &lt;&lt;&quot;charVar: &quot; &lt;&lt;  charVar &lt;&lt; endl;

ret = longVar;

cout &lt;&lt; &quot;var: &quot;&lt;&lt; ret &lt;&lt; endl;

system(&quot;PAUSE&quot;);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/259133/typecasting</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 20:24:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/259133.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 19 Jan 2010 14:31:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Typecasting on Tue, 19 Jan 2010 14:31:21 GMT]]></title><description><![CDATA[<p>Hallo wo ist der unterschieden zwischen der Expliziten und der Implitizen Typekonveriterung ?</p>
<p>charVar hat hier den selben wert wie ret.</p>
<p>Ich verstehe nicht wofür diese Casterei sein soll wenn man doch auch einfach schreiben kann: ret = longVar;</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main()
{

long longVar = 99999;

char charVar;
char ret;

charVar = static_cast&lt;char&gt;(longVar);  // Explizite Konvertierung
cout &lt;&lt;&quot;charVar: &quot; &lt;&lt;  charVar &lt;&lt; endl;

ret = longVar;

cout &lt;&lt; &quot;var: &quot;&lt;&lt; ret &lt;&lt; endl;

system(&quot;PAUSE&quot;);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1841427</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1841427</guid><dc:creator><![CDATA[mr_123]]></dc:creator><pubDate>Tue, 19 Jan 2010 14:31:21 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting on Tue, 19 Jan 2010 15:07:47 GMT]]></title><description><![CDATA[<p>Da, wo es möglich ist, wird implizit konvertiert. Das macht es dir ein wenig einfacher. Trotzdem wird manchmal eine Warnung rausgehauen, die dich vor eventuellen Fehlern schützen soll. Wenn du z.B. implizit von float nach int casten lässt, wirst du auf einen eventuellen Datenverlust (Nachkommastellen) hingewiesen.</p>
<p>Und manche Casts gehen einfach nicht implizit. Versuch mal, von char* auf char implizit zu casten. Das gibt einen Fehler, den du nur durch explizites Casting umgehen kannst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1841458</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1841458</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Tue, 19 Jan 2010 15:07:47 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting on Tue, 19 Jan 2010 15:41:39 GMT]]></title><description><![CDATA[<p>Aber ob ich das hier jetzt Implizit oder Explizit caste ist doch egal als Ergebniss wird ja in beiden fällen eine 3 ausgegeben.</p>
<p>Irgendwie erkenne ich noch nicht den Sinn vom Typecasting.</p>
<p>Außer das man es bei bestimmten Sachen unbedingt braucht wenn man z.b. ein const char in ein char machen will....</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

int main()
{

float var;
int z;

var = 3.3;
z = var;

z = static_cast&lt;int&gt;(var);

cout &lt;&lt; z;

system(&quot;PAUSE&quot;);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1841477</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1841477</guid><dc:creator><![CDATA[mr_123]]></dc:creator><pubDate>Tue, 19 Jan 2010 15:41:39 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting on Tue, 19 Jan 2010 15:43:15 GMT]]></title><description><![CDATA[<p>oops<br />
So muss das ja aber das Ergebniss bleibt das selbe -.-</p>
<p>z = static_cast&lt;float&gt;(var);</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1841479</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1841479</guid><dc:creator><![CDATA[mr_123]]></dc:creator><pubDate>Tue, 19 Jan 2010 15:43:15 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting on Tue, 19 Jan 2010 15:55:42 GMT]]></title><description><![CDATA[<p>Guck dir das mal an:</p>
<pre><code class="language-cpp">char a='A';
cout &lt;&lt; a &lt;&lt; endl;
cout &lt;&lt; static_cast&lt;int&gt;(a) &lt;&lt;endl;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1841486</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1841486</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 19 Jan 2010 15:55:42 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting on Wed, 20 Jan 2010 10:02:46 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/19375">@Seppj</a></p>
<p>Geht auch so:</p>
<p>Ist kein untschied ob mit oder ohne cast.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main(int argc, char* argv[])
{

char a='A';
int var;

cout &lt;&lt; a &lt;&lt; endl;

var = a;

cout &lt;&lt; var &lt;&lt; endl;

system(&quot;PAUSE&quot;);
}
</code></pre>
<p>Hier bei ist mir aber z.b. klar wieso man hier casten muss:</p>
<p>Wenn man das const entfernen will.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main()
{
const char *pConst = &quot;Text&quot;;
char *pVar;

pVar = const_cast&lt;char*&gt;(pConst);

cout &lt;&lt; * pVar;

system(&quot;PAUSE&quot;);
}
</code></pre>
<p>Kann mir jemand noch irgendwelche beispiele zeigen wo man etwas nur mit Explizitem Casting lösen kann ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1841849</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1841849</guid><dc:creator><![CDATA[mr_123]]></dc:creator><pubDate>Wed, 20 Jan 2010 10:02:46 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting on Thu, 21 Jan 2010 17:23:10 GMT]]></title><description><![CDATA[<p>mr_123 schrieb:</p>
<blockquote>
<p>Ist kein untschied ob mit oder ohne cast</p>
</blockquote>
<p>Doch, ist es. Wie du siehst, brauchst du mehr Code und eine zusätzliche Variable ohne Cast.</p>
<p>mr_123 schrieb:</p>
<blockquote>
<p>Kann mir jemand noch irgendwelche beispiele zeigen wo man etwas nur mit Explizitem Casting lösen kann ?</p>
</blockquote>
<pre><code class="language-cpp">int num = 3;
int denom = 2;
float quotient = static_cast&lt;float&gt;(num) / static_cast&lt;float&gt;(num);
// Wenn du wieder mit dem Variablen-Argument kommst, stell dir eben
// Typen vor, die keine implizite Konvertierung zueinander besitzen.

Derived obj; // Derived von Base abgeleitet, bietet function() an
Base&amp; ref = obj; // Base hat keine Funktion function().
dynamic_cast&lt;Derived&amp;&gt;(ref).function();
// Annahme, dynamischer Typ von ref sei unbekannt, sonst static_cast.

int integer = 123456789;
char* bytes = reinterpret_cast&lt;char*&gt;(&amp;integer);
bytes[0] = 58;
</code></pre>
<p>Und wenn du danach suchst, wirst du noch mehr Anwendungen der C++-Cast-Operatoren finden. In einem richtigen Kontext sind diese wohl besser verständlich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1842791</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1842791</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 21 Jan 2010 17:23:10 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting on Fri, 22 Jan 2010 20:33:30 GMT]]></title><description><![CDATA[<p>Ist das so richtig ?</p>
<pre><code class="language-cpp">int num = 3;
int denom = 2;
float quotient = (float)num / (float)denom; // C Style ?
float quotient = static_cast&lt;float&gt;(num) / static_cast&lt;float&gt;(denom);  // C++ Style ?
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1843470</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1843470</guid><dc:creator><![CDATA[mr_123]]></dc:creator><pubDate>Fri, 22 Jan 2010 20:33:30 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting on Fri, 22 Jan 2010 20:42:44 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int num = 3;
int denom = 2;
float quotient = static_cast&lt;float&gt;(num) / static_cast&lt;float&gt;(num);
</code></pre>
</blockquote>
<p>Ein cast reicht</p>
<pre><code class="language-cpp">int num = 3;
int denom = 2;
float quotient = float(num) / denom;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1843477</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1843477</guid><dc:creator><![CDATA[C++Fan 2010]]></dc:creator><pubDate>Fri, 22 Jan 2010 20:42:44 GMT</pubDate></item></channel></rss>