>>585
test->Struct = (Struct *)(MEMORY_gff + 0x38);

で代入しちゃってるからなぁ
ローカル変数用意してそこに代入した方がいいかもね

Struct *testStruct = (Struct *)(MEMORY_gff + 0x38);
printf("0x%08lx\tStruct[%d]->Type\t0x%08lx(%lu)\r\n", &testStruct[i].Type, i, testStruct[i].Type, testStruct[i].Type);

あとマクロとか使ったほうがいいかもね
ttp://ideone.com/cDq75