VB里什么叫数组?
大堆。array是一个英语单词,名词、动词,作名词时意思是“数组,阵列;排列,列阵;大批,一系列;衣服”,作动词时意思是“排列,部署;打扮”。短语搭配array转换成数组SubmillimeterArray次毫米波阵列望远镜;位于夏威夷的亚毫米波望远镜。
1.基本概念数组:是同类型变量的一个有序的集合。
如:A(1 To
100),表示一个包含100个数组元素的名为A的数组。
2.数组元素:
即数组中的变量。用下标表示数组中的各个元素。
表示方法:数组名(P1,P2,……)其中P1、P2表示元素在数组中的排列位置,称为“下标”。
如:A(3,2)代表二维数组A中第3行第2列上的那个元素。
3.数组维数:
由数组元素中下标的个数决定,一个下标表示一维数组,二个下标表示二维数组。 VB中有一维数组、二维数组、……最多60维数组。
关于可变长数组(VLA)的问题:原来的C标准中是不允许可变长数组出现的,也就是你说的那个n可变。但是在C99中,加入了对VLA的支持,也有不少编译器已经支持这个了,而且好像没有太多的人用这个可变长数组。
如果有过用其它语言编程的经历,那么想必会熟悉数组的概念。由于有了数组,可以用相同名字引用一系列变量,并用数字(索引)来识别它们。在许多场合,使用数组可以缩短和简化程序,因为可以利用索引值设计一个循环,高效处理多种情况。数组有上界和下界,数组的元素在上下界内是连续的。因为 Visual Basic对每一个索引值都分配空间,所以不要不切实际声明一个太大的数组。
此处数组是程序中声明的变量数组。它们不同于控件数组,控件数组是在设计时通过设置控件的 Index 属性规定的。变量数组总是连续的;与控件数组不同的是,不能从一个数组的中部加载或卸载数组元素。
一个数组中的所有元素具有相同的数据类型(在在C、C++、Java中都这样。但也并非所有涉及数组的地方都这样,比如在Visual Foxpro中的数组就并没这样的要求)。当然,当数据类型为 Variant 时,各个元素能够包含不同种类的数据(对象、 字符串 、数值等等)。 可以声明任何基本数据类型的数组,包括用户自定义类型(请参阅 “再论编程”中的“创建自己的数据类型”)和对象变量(请参阅“用对象编程”)。
如果要用户输入的是一个数组,一般是用一个循环,但是在输入前也需要固定数组的大小。
compact跟变长数组没有太大的关系,也应该用不到变长数组。因为一般的传数组到函数中就是传数组的地址和元素的个数的,那只是一个提示,不是要求。
原型可以这样写(假设数组的元素是type):
int compact(type *Array,int Count)
数组类型说明 在C语言中使用数组必须先进行类型说明。 数组说明的一般形
式为: 类型说明符 数组名 [常量表达式],……; 其中,类型说明符是任一种基本数据类型或构造数据类型。 数组名是用户定义的数组标识符。 方括号中的常量表达式表示数据元素的个数,也称为数组的长度。
例如:
int a[10]; 说明整型数组a,有10个元素。
float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。
char ch[20]; 说明字符数组ch,有20个元素。
[编辑本段]相关操作
声明固定大小的数组
有三种方法声明固定大小的数组,用哪一种方法取决于数组应有的有效范围:
建立公用数组,在模块的声明段用 Public 语句声明数组。
建立模块级数组,在模块的声明段用 Private 语句声明数组。
建立局部数组,在过程中用 Private 语句声明数组。
设定上下界
声明数组时,在数组名之后跟一个用括号括起来的上界。上界不得超过 Long 数据类型的范围(-2,147,483,648 到 2,147,483,647)。例如,下列数组声明可出现在模块的声明段:
Dim Counters (14) As Integer '15 个元素。
Dim Sums (20) As Double '21 个元素。
为建立公用数组,直接用 Public 取代 Dim。
Public Counters (14) As Integer
Public Sums (20) As Double
在过程之中同样的声明使用 Dim:
Dim Counters (14) As Integer
Dim Sums (20) As Double
第一个声明建立了一个有 15 个元素的数组,其索引号从 0 到 14 。第二个声明建立了一个有 21 个元素的数组,其索引号从 0 到 20 。缺省的下界为 0。
为了规定下界,用关键字 To 显式提供下界(为 Long 数据类型):
Dim Counters (1 To 15) As Integer
Dim Sums (100 To 120) As String
在前述声明中,Counters 的索引值范围从 1 到 15,而 Sums 的索引值范围从 100 到 200。
包含其它数组的数组
有可能建立 Variant 数据类型数组,并与不同数据类型的数组共居一处。以下代码建立两个数组,一个包含整数,而另一个包含 字符串。然后声明第三个 Variant 数组,并将整数和字符串数组放置其中:
Private Sub Command1_Click ()
Dim intX As Integer '声明计数器变量。
'声明并放置整数数组。
Dim countersA (5) As Integer
For intX = 0 To 4
countersA (intX) = 5
Next intX
'声明并放置字符串数组。
Dim countersB (5) As String
For intX = 0 To 4
countersB (intX) = "hello"
Next intX
Dim arrX (2) As Variant '声明拥有两个成员的新数组。
arrX (1) = countersA () '将其它数组移居到数组。
arrX (2) = countersB ()
MsgBox arrX (1) (2) '显示每一个数组的成员。
MsgBox arrX (2) (3)
End Sub
数组的话,就是将一些有联系的数据通过连续编号的方式集合在一起。比方说,班级里学生信息,就可以用数组表示student(1)表示学号为1的学生信息,student(2)表示学号为2的学生信息,以此类推···
和C语言里面讲的数组一样的,都是分几维,一维数组,相当于行,二维相当于数据表
c语言的a[b[i]]什么意思?数组里有数组??
b[i]是指b数组中的第i+1个元素,假如i=2,b数组中值为1,2,3,4,5则b[i]=3,a[b[i]]其实也就是a[3],就是a中的第4个元素
在数组a和数组b中分别放入n个有序整数,使用什么算法
定义两个数组,数组 a 和数组 b,并分别设置数组的大小为 an 和 bn。使用循环语句,依次将数字从小到大输入到数组 a 和数组 b 中。使用输入语句,从用户输入所需要的数字。在循环中,使用条件语句来判断当前输入的数字是否大于等于已经输入的最大数字。如果是,则将该数字放入数组中。如果不是,则...
b[0]=5是什么意思?
b[0]是数组中下标为0的元素,b[0]=5是给b[0]赋值为5。如果定义了一个数组b[n],数组名为b,[n]中的n表示数组中元素的个数。数组中元素的下标一般从0开始,b[0]表示数组b中的第一个元素。
字符串数组a数组比b长是什么原因?
答案是D,a数组比b数组长度长 原因:a数组的长度是6,b数组的长度是7。在C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串。字符串总是以'\\0'作为串的结束符。
C++中 比如b[32]={0}是什么意思?
int num = 123;int b[32] = {0};b[32]是一个数组,后面的{0}是将32个元素全部初始化为0,十进制转二进制的时候:num % 2 = 1,此时的1就会放入b[0]中,也就是b[0]=1;依次类推,就将二进制数存放到了数组b里面了,然后再将二进制转化成八进制数 ...
二元数组?二维数组?
二元 函数,即有两个自变量的函数叫 二元 函数。二维数组,数组为矩阵形式,几行几列。维,指空间坐标系有几个方向。欧几里德空间,希伯莱空间...数组 习惯 用维 C 语言 声明中 a[20][10] 叫二维数组。Fortran 语言 声明中 A(10,20) 叫二维数组。多维数组: a[20][10][4]; b[4][4][...
matlab 结构体数组 size a*b里a,b分别什么意思?(下图1*2中1、2分别什...
这个数组大小是 1 行 2 列。这个数组和我们线性代数里的行列式(数组)的概念是一样的,有若干行若干列。常见的数组A=[1,2;3,4]里面每一个元素如A(1),A(2)是一个数字(标量)。而结构体数组里面的每一个元素如Schedule(1),Schedule(2)是一个结构体。Schedule:[Schedule(1),Schedule(2)]
C语言中 int b{1,2,3}; b+2啥意思??
定义数组b,初始化数组的3个元素分别值是1,2,3。(定义时直接给数组初值,可不指定维度,但如果不给初值,必须有维度大小,比如int b[3];)所以这里b是数组名,表示数组首地址常量,b+2就是数组第三个元素的地址(等同于&b[2])。同理b,b+1,b+2分别对应数组三个元素的地址,对其取值*b,...
java 中 int a[],b;是声明了一个int型一维数组a和一个int型变量b...
可以这样理解:第一种只是声明了一个int类型,至于是数组还是单个整形数都可以。第二种是直接声明了一个int类型的数组,所以变量只能是数组。
数组公式什么意思?
C12和C13单元格里的公式,使用加号对单个单...>> 问题二:数组公式的含义 数组公式可以认为是Excel对公式和数组的一种扩充,换一句话说,是Excel公式在以数组为参数时的一种应用。数组公式可以看成是有多重数值的公式。与单值公式的不同之处在于它可以产生一个以上的结果。一个数组公式可以占用一个或多个单元。
尤瞿麻仁: 把一组具有相同属性、类型的数据放在一起并用一个统一的名字来作为标识,这就是数组.数组中的每一个数据称一个数组元素,用数组名和该数据在数组中的序号来标识,序号称下标. 例如,一个班级有30名学生,可以用一个数组A来表示30...
宁化县18789834261: Vb中的数组是什么意思? - ?
尤瞿麻仁: 楼主您好:无论是在面向对象的编程中,还是在面向过程的编程中,数组都是常用的数据结构,VB 中的数组可以由基本的数据类型组成,也可以由对象组成:由基本的数据类型组成的数据在使用时与面向过程的编程方法一致,而由对象组成的...
宁化县18789834261: vb数组怎么理解? - ?
尤瞿麻仁: 数组,你可以理解为同一类型的数据的元素的集合,用下标来给它们排序,下标从0开始.你所说的a(i)和a(j)可以理解为数组a的第i个元素和第j个元素.如:if a(i)>a(j+1) then ....的意思就是“如果 数组a的第i个元素大于第j+1个元素,那么……”在同一个数组中一个元素只有一个下标,但是可以有不同的表示方法,如a(5)也可以表示为a(2+3).对于程序中看不懂的变量可以根据所在代码段的目的上猜出来,但是如果自己写最好还是加上注释,有时候自己写的程序,隔一段时间后都可能还得花点功夫才能理解. 谢谢!望采纳…川厂贬断撞登鳖券搏猾…(*^__^*)
宁化县18789834261: vb中数组的定义是什么?
尤瞿麻仁: Dim A(10) As Integer Dim B(-3 To 5) As String*3 声明了B是数组名、字符串型、一维数组、有9个元素,下标的范围是-3~5,每个元素最多存放3个字 Dim C(-1 To 5, 4) As Long 声明了C是数组名、长整型、二维数组、第一维下标范围为-1~5,第...
宁化县18789834261: VB里什么叫数组? - ?
尤瞿麻仁: 数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来.这些按序排列的同类数据元素的集合称为数组.在C语言中, 数组属于构造数据类型.一个数组可以分解为多个数组元素,这些数组元素可以是基本数据...
宁化县18789834261: vb数组什么意思 - ?
尤瞿麻仁: Private Sub Command1_Click() Dim a(1 To 4一维数组只有一个下标,这样也便于理解 二、二维数组通常是指由两个下标的数组元素所组成的数组,我们建议大家无论是否需要,还是带上s= 0. Private Sub Command1_Click() Dim a(100) As ...
宁化县18789834261: 数组是什么啊?
尤瞿麻仁: 数组是一组具有相同类型和名称的变量的集合.这些变量称为数组的元素,每个数组元素都有一个编号,这个编号叫做下标,我们可以通过下标来区别这些元素.数组元素的个数有时也称之为数组的长度. 一般情况下,数组的元素类型必须相同,可以是前面讲过的各种基本数据类型.但当数组类型被指定为变体型时,它的各个元素就可以是不同的类型. 数组和变量一样,也是有作用域的,按作用域的不同可以把数组分为:过程级数组(或称为局部数组)、模块级数组以及全局数组.
宁化县18789834261: VB 中数组到底是什么意思? 可以做什么? - ?
尤瞿麻仁: 数组可以看做是某种变量的集合 比如你定义一个整型数组a(9),就可以给a(0)~a(9)赋值,需要调用的时候也非常方便.如果没有数组,就需要用户自己命名,如果要保存10个整型数据,就得定义十个不同的整型变量,非常麻烦. 比如: dim a(9) as integer for i=0 to 9 a(i) =i next i 这样就很快捷的给0~9这十个数定义了十个变量来保存
宁化县18789834261: VB中数组的定义 - ?
尤瞿麻仁: 没有声明API吧 Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function GetWindowThreadProcessId Lib "user32" (...
宁化县18789834261: VB程序中控件数组是什么意思 - ?
尤瞿麻仁: 例如你编程中所用到的按钮,文本框等等,这类东西是控件,用他们所组成的数组就是控件数组,控件数组的用途很多,可以方便你的编程,并且可以非常方便的完成一些一般控件所不能完成的功能.具体创建方法:你可以直接复制,粘贴控件,或者是在属性窗口中将N个控件的名字改成一个名字(个人推荐前者.)