VisualBasic 程序设计 VB3教程.PPTVIP

  • 7
  • 0
  • 约 202页
  • 2017-08-19 发布于广东
  • 举报
静态数组和动态数组由其定义方式决定,即: 用数值常数或符号常量作为下标定维的数组是静态数组。 用变量作为下标定维的数组是动态数组。 动态数组的定义 动态数组以变量作为下标值,在程序运行过程中完成定义,通常分为两步: 1、首先在窗体层、标准模块或过程中用Dim或Public声明一个没有下标的数组(括号不能省略) 2、然后在过程中用Redim语句定义带下标的数组。 ReDim语句的格式为: ReDim[Preserve] 变量(下标)As 类型 该语句用来重新定义动态数组,按定义的上下界重新分配存储单元,并可为定义的变量改变存储类型。当重新分配动态数组时,数组中的内容将被清除,但如果在ReDim语句中使用了Preserver选择项,则不清除数组内容。 在ReDim语句中可以定义多个动态数组,但每个数组必须事先用“Dim Variable(_)”或“Public Variable()”这种形式进行声时,在括号中省略上下界,在用ReDim语句重新定义时指定数组下标的上下界。 例如: Dim stuname( ) as string …… Sub command1_click() …… n=inputbox(msg) Redim sutname(n) …… End Sub ReDim只能出现在事件过程或通用过程中,用它定义的数组是一个“临时”数组,即在执行数组所在的过程时为数组开辟一定的内存空间,当过程结束时,这部分内存即被释放。 说明: 1、在窗体层或模块层定义的动态数组只有类型,没有指定维数,其维数在ReDim语句中给出,最多不能超8维。 2、可以用ReDim语句直接定义数组。如果在标准模块层或窗体层没有用Public或Dim声明过同名的数组,则用ReDim定义的数组最多可达60维。 3、在一个程序中,可以多次用ReDim语句定义同一个数组,随时修改数组中元素的个数,但是应注意,只能改变元素的个数,不能改变数组的维数。 数组的清除和重定义 数组一经定义,便在内存中分配了相应的存储空间,其大小是不能改变的。也就是说,在一个程序中,同一个数组只能定义一次。有时候,可能需要清除数组的内容或对数组重新定义,这可以用Erase语句来实现,其格式为: Erase 数组名[,数组名]…… Erase语句用来重新初始化静态数组的元素,或者释放动态数组的存储空间。注意,在Erase语句中,只给出要刷新的数组名,不带括号和下标。 Erase对数组的作用: 例如: Erase test 说明: 1、当把Erase语句用于静态数组时,如果这个数组是数值数,则把数组中的所有元素置为0;如果是字符串数组,则把所有元素置为空字符串,如果是记录数组,则根据每个元素(包括定长的字符串)的类型重新进行设置。 2、当把Erase语句用于动态数组时,将删除整个数组结构并释放该数组所占用的内存。也就是说,动态数组以Erase后即不复存在;而静态数组以Erase如果仍然存在,只是其内容被清空了。 3、当把Erase语句用于变体数组时,每个元素将被重置为“空”(Empty)。 4、Erase释放动态数组所使用的内存。在下次引用该动态数组之前,必须用ReDim语句重新定义该数组变量的维数。 常用内部函数 Vb 中提供的内部函数大体上可分为5类,本节介绍其中的:转换函数、数学函数、日期函数、时间函数和随即数函数。 注: 对于内部函数,本书仍称为自变量。对于用户自己编写的过程,一律称为参数。 Int(x): 求不大于自变量x的最大整数 例:Int ( -12.3 ) = -13 Int ( 18.9 ) = 18 数值型数据 提问:Print “此函数最后值是”;Int(-19.7) 答案:此函数的最后值是-20 变量 常量 Fix(x): 去掉一个浮点数的小数部分, 保留其整数部分 数值型数据 注:若为浮点数,则舍去小数,取整。 例如:Fix(19.9)

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档