<?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[Probleme beim casten]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich hab ein unsigned short (WORD) namens timeout. Diesen lese ich ein und deswegen liegt er erstmal als String vor. Jetzt darf ich den Müll casten, ich denke mal das unsigned long okay sein dürfte. Jetzt verlangt die Methode ToULong aber eine Referenz, nur wie soll ich da beim cast jetzt noch den &amp;-Operator unterbringen? Ohne cast könnte ich einfach &amp;timeout schreiben...</p>
<pre><code class="language-cpp">timeoutString.ToULong(static_cast&lt;unsigned long&gt;(timeout));
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/223728/probleme-beim-casten</link><generator>RSS for Node</generator><lastBuildDate>Sat, 03 Oct 2026 19:18:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/223728.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 30 Sep 2008 10:49:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Probleme beim casten on Tue, 30 Sep 2008 10:49:09 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich hab ein unsigned short (WORD) namens timeout. Diesen lese ich ein und deswegen liegt er erstmal als String vor. Jetzt darf ich den Müll casten, ich denke mal das unsigned long okay sein dürfte. Jetzt verlangt die Methode ToULong aber eine Referenz, nur wie soll ich da beim cast jetzt noch den &amp;-Operator unterbringen? Ohne cast könnte ich einfach &amp;timeout schreiben...</p>
<pre><code class="language-cpp">timeoutString.ToULong(static_cast&lt;unsigned long&gt;(timeout));
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1590797</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590797</guid><dc:creator><![CDATA[arrrrr]]></dc:creator><pubDate>Tue, 30 Sep 2008 10:49:09 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme beim casten on Tue, 30 Sep 2008 10:59:18 GMT]]></title><description><![CDATA[<p>Lokale Variable vom Typ unsinged long, da den Kram hincasten, dessen Adresse der Funktion übergeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1590808</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590808</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Tue, 30 Sep 2008 10:59:18 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme beim casten on Tue, 30 Sep 2008 10:59:34 GMT]]></title><description><![CDATA[<p>Denk nochmal darüber nach, ob es wirklich eine gute Idee ist, der Funktion einen short (meist 2 Byte) zu übergeben, damit diese dort einen unsigned long (meist 4 Byte) platziert.</p>
<p>Ansonsten:</p>
<pre><code class="language-cpp">timeoutString.ToULong(*reinterpret_cast&lt;unsigned long*&gt;(&amp;timeout));
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1590809</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590809</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Tue, 30 Sep 2008 10:59:34 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme beim casten on Tue, 30 Sep 2008 12:23:56 GMT]]></title><description><![CDATA[<p>LordJaxom schrieb:</p>
<blockquote>
<p>Denk nochmal darüber nach, ob es wirklich eine gute Idee ist, der Funktion einen short (meist 2 Byte) zu übergeben, damit diese dort einen unsigned long (meist 4 Byte) platziert.</p>
<p>Ansonsten:</p>
<pre><code class="language-cpp">timeoutString.ToULong(*reinterpret_cast&lt;unsigned long*&gt;(&amp;timeout));
</code></pre>
</blockquote>
<p>Das ist die Frage. In dem String sollte ( <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> ) ansich immer ein gültiger 2 Byte-Wert stehen, schließlich wurde der Wert vorher irgendwann mal abgespeichert.</p>
<p>Kann ich dann beim einlesen da ich keine passendere Methode habe nicht einfach das ganze zu unsigned long casten? Oder kann da was schiefgehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1590849</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590849</guid><dc:creator><![CDATA[gerge]]></dc:creator><pubDate>Tue, 30 Sep 2008 12:23:56 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme beim casten on Tue, 30 Sep 2008 12:29:02 GMT]]></title><description><![CDATA[<p>gerge schrieb:</p>
<blockquote>
<p>Kann ich dann beim einlesen da ich keine passendere Methode habe nicht einfach das ganze zu unsigned long casten? Oder kann da was schiefgehen?</p>
</blockquote>
<p>Ja natürlich kann da was schiefgehen - die Funktion würde vier Bytes dorthin schreiben, wo nur Platz für zwei Bytes ist. Deshalb fragte ich (rhetorisch), ob Du das wirklich für eine gute Idee hälst.</p>
<p>Was spricht denn gegen...?</p>
<pre><code class="language-cpp">unsigned long ulTimeout;
timeoutString.toULong(ulTimeout);
// evtl. Grenzen prüfen
timeout = static_cast&lt;short&gt;(ulTimeout);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1590855</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590855</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Tue, 30 Sep 2008 12:29:02 GMT</pubDate></item></channel></rss>