버퍼 내용을 record 타입으로 읽는 방법
절름발이 프로그래머/Delphi / 2009. 7. 17. 17:15
C언어에서는 당연하고 되는 것이지만,
델파이 즉, 오브젝티브 파스칼을 쓸 때는 한번쯤 생각해보게 되는 방법이다.
C언어에서는 타입 캐스팅으로 되는 것을
델파이에서는 다음과 같이 해야된다.
tmpbuffer: array[0..1023] of Byte;
ptr : ^aRecord;
// 파일에서 데이터를 읽어온다.
ZeroMemory(@tmpbuffer[0], sizeof(tmpbuffer));
BlockRead(File, tmpbuffer, datasize, readbytes);
ptr := @tmpbuffer; // 버퍼 내용을 레코드 형식으로 해석한다.
ptr.a
이런 식으로 버퍼의 데이터를 레코드형식으로 받아서 사용할 수 있다.