读书人

已知一个结构体指针 ptr,和偏移量 off

发布时间: 2012-02-28 13:06:36 作者: rapoo

已知一个结构体指针 ptr,和偏移量 offset, 怎么样得到 地址为ptr+offset 的内存的内容?
已知一个指针 ptr,和偏移量 offset, 怎么样得到 地址为ptr+offset 的内存的内容?

我写的code 如下:

Offset :DWORD;
strResult : string;

strResult := (ptr[offset])^;


但编译通不过。学艺不精,惭愧,请指教。



[解决办法]
strout传递进来的没有分配内存吗?

strout可以看作是一个特殊的指针。
@strout是指针的地址
@strout[1]是字符串第一个值的地址。

如果是一个空字符串,那么就会出现地址错误。所以先要分配内存,制造一段长度为size的string
strout:=stringofchar(#0,size);

CopyMemory(@strOut[1], ptr, Size);

读书人网 >.NET

热点推荐