unsigned int *foo = (unsigned int *) &sr[1]; unsigned int *bar = (unsigned int *) sr; bar[0] = foo[0]; bar[1] = foo[1]; bar[2] = foo[2]; bar[3] = (foo[3] & 0x00FFFFFF) | (out_block[15] << 24);