UINT16 value appears to be "backwards" when printing
<p>I have a UINT8 pointer mArray, which is being assigned information via a *(UINT16 *) casting. EG:</p>

<pre><code>int offset = someValue;
UINT16 mUINT16 = 0xAAFF
*(UINT16 *)&amp;mArray[offset] = mUINT16;

for(int i = 0; i &lt; mArrayLength; i++)
{
    printf("%02X",*(mArray + i));
}

output:   ... FF AA ...
expected: ... AA FF ...
</code></pre>

<p>The value I am expecting to be printed when it reaches offset is to be AA FF, but the value that is printed is FF AA, and for the life of me I can't figure out why. </p>
