Delphi整理六(数据与记录)

数组与记录

静态数组:

定义的时候就分配存储单元,确定数组元素的个数和类型的数组。
声明格式:

<类型标识符>=array[<下标类型> of<基类型>];

1)<类型表示符>是用户定义的数组类型的名称。
2)<下标类型>必须是整数、字符、布尔、子界、枚举类型(顺序类型)
3)<基类型>就是元素的类型,可以是任何类型,数组的每个元素类型是一致的。
4)数组元素的格式就是下标的个数

type
xuehao=1..50;
score=array[xuehao] of integer;
acolor=(red,blue,green);
yanse=array[acolor] of integer;
var
s1,s2:score;
c1,c2:yanse;

一起定义,更简洁

var a1,a2:array[1..30] of real;
low():数组最小下标(1)
high():数组的最大下标(green)
length()表示数组元素的个数

二维静态数组

type
<数组类型名>=array[<下标类型1>] of array[<下标类型2>] of <元素类型>;

一般来说,习惯把二维数组定义为如下形式:

type
<数组类型名>=array[<下标类型1>,<下标类型2>] of <元素类型>;

例如,

type
aa=array[1..5,2..8] of integer;
var
a1,a2:aa;

动态数组

一维动态数组的定义:

type
<数组类型名称>=array of<基类型>

或者直接将类型和变量定义在一起

var
<变量名>:array of<基类型>
setLength(a,20):

声明数组a有20个元素,a[0]~a[19]

多维动态数组

语法格式:

type
<数组类型名称>=array of array of<基类型>

var
<变量名>:array of array of <基类型>
setLength(a,4,6);

a有24个元素

字符串类型

<字符串类型名>=string;
var
<字符串变量>:<字符串类型名>;

或者

<字符串变量>:string;

允许在定义字符串的时候声明字符串中字符的个数:

<字符串类型名>=string[<长度>];
var
<字符串变量名>:<字符串类型名>;

或者

var
<字符串变量名>:string[<长度>];

例如,

type
xingming=string[10];
var
xml:xingming;
or
xml:string[10];

特别:xml的长度为10,
第一个位置是存放长度的s[0]=#5
ord(s[0])可以得到字符串长度。
123页

记录类型

记录类型的定义格式为:

type
<记录类型名>=record
<字段1>:<类型1>;
<字段2>:<类型2>;
...
end;

例,

type
  student=record
  xh:string[2];
  xm:string[8];
  yw:integer;
end;
var
st:array[1..20] of student;
s1,s2:student;

记录类型的访问与with语句

with  <变量名>  do;

用法:(接上面的定义例子)

with s1 do
begin
xingming:='张三';
yuwen:=90
end

with语句的嵌套(就近原则)

with s2,s1 do
begin
  ...
end

结果为s1的信息值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值