最正规的应该这么写: type ListHighTYPE=array[1..500000000] of word; var p:ListHighTYPE; procedure writelntype(p:listhightype); begin with p do begin ……省略 end; end; function intotype(a:pchar):writelntype; ……省略 begin p:=intotype('100'); writelntype(p); readln; end.