Buff : 전역 Pointer
----------------------------
ReallocMem(Buff, 원래 Buff 크기 + Buffer크기);
이 함수 사용을 위해
GetMem(Buffer, ?)
동적메모리의 임의크기데이타를
Buff 로 CopyMemory( ) 했습니다..
[원래 Buff 크기] 를 알수있는 방법으로
Sizeof( BUff ) 를 하면 포인터 형이기때문에 4 byte 안나와서요
그래서 Buff 에 쓴 크기를 합쳐서 원하는 결과를 잠깐 보았습니다
어떤 방식으로 알아내야 할까요?
포인터 사용하여 메모리 할당하면 기본적으로 메모리 관리는 개발자가 하여야 합니다..
integer 나 array [0..9] of char 와 같이 할당된 메모리의 사이즈가 정해진 것이 아닙니다.. 따라서, 컴파일러가 메모리 관리를 하지 못합니다..
하지만, 제한 없이 어떤 메모리 영역에든 접근 할 수 있는 것이 포인터의 장점 입니다.
최적의 메모리 사용이 될지, 메모리 릭이 될지는 전적으로 개발자에게 달려 있습니다.
참고로, 가변 메모리를 쓰면서 컴파일러가 메모리 관리를 하게 하려면, dyanmic array 를 쓰셔야 합니다..
수고하세요..