在c语言中
有:a[5]={1,2,3,4,5} ;
那么在 delphi中,这个数组的赋值该怎么写??
问题补充:下面有人说的对,我就是想在声明数组的时候赋初值,至于初值的内容你们不需要知道,我想知道的只是申明的时候赋值的格式,而不是通过一个过程去实现
var
a:=array[1..5] of integer=(1,2,3,4,5)
只有全局变量才能赋初始值,而且5个值都要赋满
s:array[1..264] of integer;
s:=((1),(2),(2),(1),(1),(2),(2),(1),(2),(1),(1),(1),(1),(2),(2),(1),(1),(2),(1),(1),(2),(2),(1),(1),(2),(1),(1),(2),(2),(2),(1),(2),(1),(2),(1),(2),(2),(2),(2),(1),(2),(2),(1),(2),(1),(1),(2),(1),(2),(1),(1),(2),(1),(1),(1));
s:=(122112221211111111111111222221212121212121212);
都显示错误哦;C语言可以的哦
静态数组的定义方法
//1. 标准方法:
var
MyArr: array[0..10] of Integer; //定义静态数组
--------------------------------------------------------------------------------
//2. 可以使用非0下标:
var
MyArr: array[9..10] of Integer; //不能提倡,这样不容易与
系统函数沟通
--------------------------------------------------------------------------------
//3. 根据预定义类型来声明数组:
type
TMyArr = array[0..10] of Integer; //先定义一个数组类型
var
MyArr: TMyArr; //再定义静态数组
--------------------------------------------------------------------------------
//4. 在非过程区可以直接赋值:
var
MyArr: array[0..2] of Integer = (11,22,33);
--------------------------------------------------------------------------------
//5. 多维数组:
var
MyArr: array[0..2, 0..2] of Integer;
begin
//使用
MyArr[1,2] := 100;
end;
--------------------------------------------------------------------------------
//6. 根据子界定义数组:
type
TRange = 0..10;
var
MyArr: array[TRange] of Integer;
--------------------------------------------------------------------------------
//7. 根据枚举定义数组:
type
TEnums = (Enum1,Enum2,Enum3);
var
MyArr: array[TEnums] of string;
begin
MyArr[Enum1] := '万一';
ShowMessage(MyArr[Enum1]); //万一
end;
--------------------------------------------------------------------------------
//8. 根据其他类型定义数组:
var
MyArr: array[Byte] of Char;
begin
MyArr[255] := #65;
ShowMessage(MyArr[255]); //A
end;
//应尽量不使用内建类型,可以新建类型:
type
TNewByte = Byte;
var
MyArr: array[TNewByte] of Char;
begin
MyArr[255] := #65;
ShowMessage(MyArr[255]); //A
end;
//也可以使用类型别名:
type
TChar = type Char;
var
MyArr: array[TChar] of Byte;
begin
MyArr['C'] := 255;
ShowMessage(IntToStr(MyArr['C'])); //255
end;
//同时定义类型:
type
MyRec = record
s: string;
r: Real;
b: Byte;
end;
var
Arr1: array[0..100] of MyRec
;
Arr2: array[0..100] of record s: string; r: Real; b: Byte; end; //可以直接这样定义
Arr3: packed array[0..100] of MyRec; //
压缩数组定义, 好像没有区别?
一. 一维数组
A:Array of integer ;
setlength(A,5)
二: 二维数组
定义整型二维数组
aiMyarray : array of array of integer
大小设置
setlength(aiMyarray,5,5)
三、多维数组的定义
当一维数组元素的类型也是一维数组时,便构成了二维数组。二维数组定义的一般格式:
array[下标类型1] of array[下标类型2] of 元素类型;
但我们一般这样定义二维数组:
array[下标类型1,下标类型2] of 元素类型;
说明:其中两个下标类型与一维数组定义一样,可以看成“下界1..上界1”和“下界2..上界2”,
给出二维数组中每个元素( 双下标