Pointers 用Pascal指针组成单词的程序。找不到错误
我已经写了一个程序,用指针和动态数据结构组成单词 但它不工作,并且在第19行显示错误(元素未在指针类型中声明)。请帮助我完成它。 我将不胜感激Pointers 用Pascal指针组成单词的程序。找不到错误,pointers,dynamic,pascal,Pointers,Dynamic,Pascal,我已经写了一个程序,用指针和动态数据结构组成单词 但它不工作,并且在第19行显示错误(元素未在指针类型中声明)。请帮助我完成它。 我将不胜感激 program pointers; type zv = ^pointer; pointer = record element : char; next : zv; end; var vlan : zv; {separate element} vslov : zv; { pointer for word }
program pointers;
type
zv = ^pointer;
pointer = record
element : char;
next : zv;
end;
var
vlan : zv; {separate element}
vslov : zv; { pointer for word }
symbol : char;
begin
readln(symbol);
new(vslov);
vslov^.element := symbol;
vslov^.next := nil;
vlan := vslov;
while symbol <> '.' do
begin
read(symbol);
new(vlan^.next);
vlan := vlan^.next;
vlan^.element := symbol;
vlan^.next := nil;
end;
end.
程序指针;
类型
zv=^指针;
指针=记录
元素:char;
下一步:zv;
结束;
变量
vlan:zv;{独立元素}
vslov:zv;{单词指针}
符号:字符;
开始
readln(符号);
新的(vslov);
vslov^.元素:=符号;
vslov^.next:=nil;
vlan:=vslov;
而符号“.”则
开始
读(符号);
新建(vlan^下一个);
vlan:=vlan^.next;
vlan^.元素:=符号;
vlan^.next:=nil;
结束;
结束。
指针
是预定义的类型名称。它是用于表示非类型指针的类型。所以zv
是指向指针的指针。并且预定义的类型指针
不是记录,因此不能与成员访问操作符
一起使用
通过为记录类型选择其他名称来解决此问题 我推荐这篇文章来学习如何调试小程序: