对数组定义的一个例子不明白的地方,请高人指点下。

来源:百度知道 编辑:UC知道 时间:2024/09/24 07:23:40
static a(3)
a(1)=100
a(2)="hello"
a(3)=125.3

dim n as integer
private sub command1_click()
dim a(n) as integer
……
end sub
这是一道选择题上的两个选项,我认为第一是错的,因为数组的类型应该是一致,除非是默认数组,可上面不是数组。
第2个选项我看不出哪里是错的

正确答案恰恰相反,第一个是对的,第二个是错的

第一个
static a(3) 表示定义数组a(),没有指定数据类型,实际是 Variant(变体型),每个元素的数据类型可以不同。

第二个
dim a(n) as integer
错在字母 n,必须要求常量,应把 n 改成数字。
如果确实要用变量定义数组,应这样定义:
Redim a(n) as integer

第一个问题也不一定对,因为数组可以从0 开始,而且默认从0开始,因此,这样才是对的:
Option Base 1

static a(3)
a(1)=100
a(2)="hello"
a(3)=125.3

第二个问题应该这样
dim n as integer
private sub command1_click()
dim a() as integer
redim a(n)
……
end sub

第2个选项是错的
定义数组要用常数表达式

第一个没声明类型,可以这样赋值