On Thu, Aug 2, 2012 at 10:13 AM, Charles Henry <[email protected]> wrote: > On Thu, Aug 2, 2012 at 7:39 AM, Martin Homuth-Rosemann > <[email protected]> wrote: >> { >> // define an aliasing type to perform a "reinterpret cast" >> typedef __u32 __attribute__ (( __may_alias__ )) u32bit; >> if ( *( (u32bit*)&f ) & 0x7F000000 ) // E > 1 : normal. > > Is there a 64-bit version of the same? This appears to work with a > 32-bit unsigned int as a pointer, meaning that it's applicable to > 32-bits. How does a "reinterpret cast" work?
Wait... I'll answer that one myself. It's applicable to 64-bits. The u32bit* is whatever size the address space is. So, it doesn't matter. The reinterpret cast is making this 32-bit float into a 32-bit integer directly without numerical conversion. _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/listinfo/linux-audio-dev
