//定义结构体
type
mypoint=record
x:integer;
y:integer;
end;
//定义结构体指针
PMyPoint = ^mypoint;
//声明结构体指针变量
var
_pMyPoint1 : PMyPoint;
_pMyPoint2 : PMyPoint;
//给结构体指针分配内存方式1
_pMyPoint1 := New(PMyPoint);
_pMyPoint2 := New(PMyPoint);
//给结构体指针分配内存方式2
{
New(_pMyPoint1 );
New(_pMyPoint2 );
}
_pMyPoint1.x := 1;
_pMyPoint1.y := 2;
//深度拷贝结构体内存
MoveMemory(_pMyPoint2,_pMyPonit1,SizeOf(mypoint));
大功告成。
本文深入探讨了Pascal语言中结构体与指针的使用,包括结构体的定义、指针的声明与内存分配,以及如何通过指针进行结构体的深度拷贝。适合初学者和有一定基础的开发者参考。
524

被折叠的 条评论
为什么被折叠?



