Re: union to get parts of integer
Tim Walberg <[email protected]> Mon, 20 Dec 2010 09:30:08 -0600
| Newsgroups | org.kernel.vger.linux-c-programming |
|---|---|
| Message-ID | <[email protected]> |
It's likely that either the union or direct pointer expressions yield more efficient code, as they can probably be compiled to direct byte-width load/store instructions, rather than shifts and logical ands... However, if the code's not in a critical path for performance, it probably won't matter. And on some architectures, there may not be byte-width operations, I guess... On 12/20/2010 15:44 +0100, Michal Nazarewicz wrote: >> >> ((char *)&i)[0]. >> >> However, are you sure that you need this? Don't you need "(i & 255)", >> "((i >> 8) & 255)", etc. instead? >> >> -- >> Best regards, _ _ >> .o. | Liege of Serenly Enlightened Majesty of o' \,=./ `o >> ..o | Computer Science, Michal "mina86" Nazarewicz (o o) >> ooo +--<mina86-tlen.pl>--<jid:mina86-jabber.org>--ooO--(_)--Ooo-- End of included message -- +----------------------+ | Tim Walberg | | 830 Carriage Dr. | | Algonquin, IL 60102 | | [email protected] | +----------------------+