Unix C++で下記の2つのキャストってどうやるの?

unsigned int abcd;

struct test {
unsigned char a;
unsigned char b;
unsigned char c;
unsigned char d;
}

unsigned int⇔struct testは共に4バイトデータ