#include #include #include int main() { unsigned int ip[2]; unsigned char *c, *vp; int v; vp = (unsigned char *) &v; c = (unsigned char *) ip; c[0] = 0x21; c[1] = 0x91; c[2] = 0x86; c[3] = 0x99; c[4] = 0x06; c[5] = 0x51; c[6] = 0x79; c[7] = 0x74; printf("0: 0x%08x\n", ip[0]); printf("1: 0x%08x\n", ip[1]); memcpy(vp, ip, 2); memcpy(vp+2, ip+1, 2); printf("2: 0x%08x\n", v); printf("3: 0x%02x 0x%02x 0x%02x 0x%02x\n", vp[0], vp[1], vp[2], vp[3]); memcpy(&v, c+2, 4); v += 0x01100220; printf("4: 0x%02x 0x%02x 0x%02x 0x%02x\n", vp[0], vp[1], vp[2], vp[3]); return 0; }