<?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[Aus 2 Bytes ein WORD machen; ohne MAKEWORD]]></title><description><![CDATA[<p>Folgende Situation:</p>
<p>Ich habe das LOWBYTE und das HIGHBYTE eines WORDS und möchte es zu einem WORD machen.<br />
Es gibt da das Makro MAKEWORD(LOWBYTE,HIGHBYTE), mit dem das funktioniert.<br />
Bevor ich das Makro kannte hab ich es so probiert:</p>
<pre><code class="language-cpp">(unsigned short)((unsigned short)(cEndBuffer[1]*0x100)+cEndBuffer[0])=iWord
</code></pre>
<p>Wobei cEndBuffer vom Typ char ist.<br />
Das funktionierte auch bis auf wenn cEndBuffer[0] und cEndBuffer[1] den Wert 0xFF hatten. Denn dann hatte iWord(vom Typ unsigned short) statt den von mir erwarteten Wert 0xffff den Wert 0xfeff. Warum passiert das? Mathematisch müsste ja 0xffff rauskommen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/87144/aus-2-bytes-ein-word-machen-ohne-makeword</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Apr 2026 18:22:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/87144.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 26 Sep 2004 20:06:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Aus 2 Bytes ein WORD machen; ohne MAKEWORD on Sun, 26 Sep 2004 20:06:30 GMT]]></title><description><![CDATA[<p>Folgende Situation:</p>
<p>Ich habe das LOWBYTE und das HIGHBYTE eines WORDS und möchte es zu einem WORD machen.<br />
Es gibt da das Makro MAKEWORD(LOWBYTE,HIGHBYTE), mit dem das funktioniert.<br />
Bevor ich das Makro kannte hab ich es so probiert:</p>
<pre><code class="language-cpp">(unsigned short)((unsigned short)(cEndBuffer[1]*0x100)+cEndBuffer[0])=iWord
</code></pre>
<p>Wobei cEndBuffer vom Typ char ist.<br />
Das funktionierte auch bis auf wenn cEndBuffer[0] und cEndBuffer[1] den Wert 0xFF hatten. Denn dann hatte iWord(vom Typ unsigned short) statt den von mir erwarteten Wert 0xffff den Wert 0xfeff. Warum passiert das? Mathematisch müsste ja 0xffff rauskommen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/615505</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/615505</guid><dc:creator><![CDATA[ewitt7u0]]></dc:creator><pubDate>Sun, 26 Sep 2004 20:06:30 GMT</pubDate></item><item><title><![CDATA[Reply to Aus 2 Bytes ein WORD machen; ohne MAKEWORD on Sun, 26 Sep 2004 22:03:13 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">WORD test;
        test = (0xFF * 0x100) + 0xFF; /* (char[1] * 0x100) + char[0] */
</code></pre>
<p>so muck ich dat und klappt och so bi mi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/615548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/615548</guid><dc:creator><![CDATA[MiC++ha]]></dc:creator><pubDate>Sun, 26 Sep 2004 22:03:13 GMT</pubDate></item></channel></rss>