关于PASCAL指针的基础问题

来源:百度知道 编辑:UC知道 时间:2024/09/24 08:52:45
我虽然已经学了一段时间的PASCAL .. 但是我从来不用指针. 也不会用..

现在想向大家请教一下 1.指针有什么好处.
2.指针经常用在什么地方(处理什么样的问题)处
3.有哪些指针基本语句(怎么用指针)

回答得好有加分(15分)
希望对指针的用法介绍的再详细一些!

指针嘛,可以说在NOIP范围内很少能真正上战场,即使用到也不过是填填空,说说特征罢了

指针的好处很简单,因为是动态分配的,也可以释放,比较省空间,实际上,有一些搜索强题,即使再怎么优化空间也还是会有爆的可能,这种情况下就要使用指针来省一省空间了
new()初始化指针变量,不过刚开始是乱指一气的,因此还是要赋一个值
dispose()释放指针变量
指针常量nil,给指针赋上此值指针将不指向任何值,经常在链表的表尾,或者二叉树的叶子节点使用
附:链表的建立
初始化head指针,指针域赋nil
然后每家入一个元素,就执行如下操作
new(p);new(q);
p^.data:=XXX;//数据域,填需要的数据
p^.next:=nil;
q^.next:=p;//迭代,从而完成表的建立
q:=p;

建立完以后执行p:=h;
然后
while p^.next<>nil do
begin
执行对该节点的操作;
p:=p^.next;
end;
从而完成遍历

指针

指针是通过地址来访问变量的一种特殊的数据类型,属于动态的数据结构,它可以在需要时产生,用完后则又可以取消或回收,以减少占用的内存空间。指针变量与其他类型的变量不同,它占有的不是数据,而是地址。
由于动态数据结构的变量是在程序执行过程中动态生成的,所以不能预先予以说明,无法预先给这些变量起名字,访问时也无法通过名字直接输出或显示,而只能用指针得到其地址,然后间接访问。

1、定义指针类型
在Turbo Pascal中,指针变量用来存放某个存储单元的地址,即指针变量指向某个存储单元。一个指针变量仅能指向某一种类型的存储单元,这种数据类型是在指针类型的定义中确定的,称为指针类型的基类型。指针类型定义如下:
类型名=^基类型名;
例如:type q=^integer;
var a,b,c:q;
说明:q是一指向整型存