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 | | twalberg@xxxxxxxxxxx | +----------------------+ -- To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html