#include union share { int as_int; unsigned char as_arr [4]; }; int main () { volatile share s; s.as_int = 12345; for (int i = 3; i >= 0; i--) printf ("%02X ", s.as_arr[i]); return 0; }