关于(var A: array of array of string;)这里A是几维数组?(50分)

  • 主题发起人 主题发起人 sqlserver2
  • 开始时间 开始时间
S

sqlserver2

Unregistered / Unconfirmed
GUEST, unregistred user!
var
A: array of array of string;
I, J, K: integer;
begin
SetLength(A, 5);
for I := Low(A) to High(A) do
begin
SetLength(A, 5);
for J := Low(A) to High(A) do
begin
SetLength(A[I, J], 5);
for K := Low(A[I, J]) to High(A[I, J]) do//HIGH cannot be applied to a long string
begin

end;
end;
end;
end;

为什么会是HIGH cannot be applied to a long string?
而I,J循环时却没有.

array of array of string的是什么样的数组?
 
二维动态数组

A[i,j]是string类型
 
SetLength(A[I, J], 5);
这里不是有三维了吗?
 
显然是二维数组:
for I := Low(A) to High(A) do 类似网格控件的行
for J := Low(A) to High(A) do 类似网格控件的列
for K := Low(A[I, J]) to High(A[I, J]) do//HIGH cannot be applied to a long string 是出现错误了吧,对字符串操作不能这样,应该是:for k:=1 to length(A[I, J])
 
如果你认为这样就可以是三维了,那就不需要这样定义了
A: array of array of string;

直接定义,想多少维就多少维
A: string;//这样多简单,方便,还少写了很多代码[:D][:D]
但这样是不可能实现的
 
二维数组。
 
A[I, J]只是一个string

打扰各位了;
 
多人接受答案了。
 
后退
顶部