すいません。VC++で以下のプログラムを実行するとdataの中身が
22 11 44 33 66 55 CC CC AA 99 88 77
となって、CC CCというゴミデータが入るんですがどうしたらこれを消せますか

#include <stdio.h>

#pragma pack(1)

typedef struct
{
unsigned x : 16;
unsigned y : 16;
unsigned z : 16;
unsigned w : 32;
} DATA;

int main(void)
{
DATA data;
data.x = 0x1122;
data.y = 0x3344;
data.z = 0x5566;
data.w = 0x778899AA;

FILE *fp = fopen("data", "w");
fwrite(&data, sizeof(DATA), 1, fp);
fclose(fp);

return 0;
}