Game Dev/Binary
Float의 메모리 내용을 Float 값으로 변환하기
AKer
2011. 3. 30. 12:27
반응형
OllyDbg 등 외부 디버거로 테스트 할 때 메모리가 어떤 값에서 어떤 값으로 변했는지 알기가 힘들어서 급하게 발코딩 했음...
printf("Input Float's 4Bytes(=8Chars) Memory in Hex\n");
printf("ex) 0010FA42\n\n\t");
char mem[12] = {0};
scanf(
"%c%c%c%c%c%c%c%c",
mem+0, mem+1,
mem+3, mem+4,
mem+6, mem+7,
mem+9, mem+10
);
char num[4] = {0};
for (int i = 0; i < 4; ++i)
{
num[i] = (char)strtoul(mem+(i*3), NULL, 16);
}
float f = 0.0f;
memcpy(&f, num, sizeof(float));
printf(
"\n\tInput Mem [%s %s %s %s] is Float [%f]\n\n\n\n",
mem, mem+3, mem+6, mem+9, f
);
gets(mem); // Eat Line Feed
반응형