[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Hex constant definition
- From: "Javier Guerra" <javier@...>
- Date: Mon, 22 Sep 2008 12:07:48 -0500
On Mon, Sep 22, 2008 at 11:08 AM, Jeff Wise <jwise@sealyrealty.com> wrote:
> I need to define 3 bytes of hex data. I originally used:
>
> local hunted = 0xD3A8AF
>
> This gave no errors but the program did not work. When I discovered 'hunted'
> was the culprit, I used:
>
> local h1 = 0xD3
> local h2 = 0xA8
> local h3 = 0xAF
> local hunted = h1 .. h2 .. h3
>
> This worked. I can not believe this is necessary. What am I missing?
the same thing you've missing in your other posts: value typing.
0xD3 is a Number, it's synonymous to 211, not to a byte, or a
character. 0xD3A8AF is also a number, synonymous to 13871279. even
worse, in Lua all numbers are floating point, so these are 211.0, and
13871279.0
if you want a three character string with each character specified in
hexadecimal, use:
string.char (0xD3, 0xA8, 0xAF)
--
Javier