问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

VB中实时错误9:“下标越界”是什么意思?

发布网友 发布时间:2022-05-05 19:56

我来回答

4个回答

热心网友 时间:2022-06-28 00:32

意思是:没有给数组分配空间。

造成的原因:引用了不存在的数组元素.

下标可能比下标范围大或小,或是在应用程序中这一边的数组没有指定范围。检查数组的声明以确认其上界和下界。若使用的是重新指定范围的数组,应使用 UBound 和 LBound 函数来决定数组访问。如果索引指定为变量,应检查变量名的拼写。

声明数组时没有指定元素的数目。例如,下列的代码就会导致此错误:

Dim MyArray() As Integer

MyArray(8) = 234 ' 导致错误 9。

Visual Basic 并不会将没有指定范围的数组自动设为 0 – 10。相反必须使用 Dim 或 ReDim 来指定数组中元素的数目。

扩展资料:

VB语言特色:

制作应用程序安装盘等提供了友好的集成开发环境。

1、可视化的设计平台:

在使用传统的程序设计语言编程时,一般需要通过编写程序来设计应用程序的界面(如界面的外观和位置等),在设计过程中看不见界面的实际效果。而在Visual Basic 6.0中,采用面向对象程序设计方法(Object-Oriented Programming),把程序和数据封装起来作为一个对象,每个对象都是可视的。

开发人员在界面设计时,可以直接用Visual Basic 6.0的工具箱在屏幕上"画"出窗口、菜单、命令按键等不同类型的对象,并为每个对象设置属性。开发人员要做的仅仅是对要完成事件过程的对象进行编写代码,因而程序设计的效率可大大提高。

2、事件驱动的编程机制:

面向过程的程序是由一个主程序和若干个子程序及函数组成的。程序运行时总是先从主程序开始,由主程序调用子程序和函数,开发人员在编程时必须事先确定整个程序的执行顺序。

Visual Basic 6.0事件驱动的编程是针对用户触发某个对象的相关事件进行编码,每个事件都可以驱动一段程序的运行。开发人员只要编写响应用户动作的代码。这样的应用程序代码精简,比较容易编写与维护。

3、结构化的程序设计语言:

Visual Basic 6.0具有丰富的数据类型和众多的内部函数。其采用模块化和结构化程序设计语言,结构清晰,语法简单,容易学习。

4、强大的数据库功能:

Visual Basic 6.0利用数据控件可以访问Access、FoxPro等多种数据库系统,也可以访问Excel、Lotus等多种电子表格。

参考资料来源:百度百科-下标越界

参考资料来源:百度百科-Visual Basic

热心网友 时间:2022-06-28 00:32

下标越界是指只能在定义的范围内访问数组元素和集合成员。

一、产生下标越界的原因

1、下标可能比下标范围大或小,或是在应用程序中这一边的数组没有指定范围。检查数组的声明以确认其上界和下界。若使用的是重新指定范围的数组,应使用 UBound 和 LBound 函数来决定数组访问。如果索引指定为变量,应检查变量名的拼写。

声明数组时没有指定元素的数目。例如,下列的代码就会导致此错误:

Dim MyArray() As Integer MyArray(8) = 234 ' 导致错误 9。

Visual Basic 并不会将没有指定范围的数组自动设为 0 – 10。相反必须使用 Dim 或 ReDim 来指定数组中元素的数目。

2、引用了不存在的集合成员。

试着使用 For Each...Next 结构代替指定元素下标。使用速写形式的下标,结果指定了错误的元素。

例如:

当在集合上使用 感叹号(!) 运算子时,叹号自动指定了一个键,集合中如果 keyname 表示一个错误键,错误就会产生。若要改进此错误,在集合对象中使用正确的键名称或索引。

二、VB语言的特点

1、VB 的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用程序的GUI 系统,但是又可以开发相当复杂的程序。VB 的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组件的属性和方法。

2、窗体控件的增加和改变可以用拖放技术实现。一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮)。每个控件都有自己的属性和事件。默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。

3、VB 的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。有很少功能的对话框窗口(比如没有最大化和最小化按钮的窗体)可以用来提供弹出功能。

4、VB 的组件既可以拥有用户界面,也可以没有。这样一来服务器端程序就可以处理增加的模块。

5、VB 使用参数计算的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组件的出现,程序员可以选用自己需要的扩展库。

6、VB 使得大量的外界控件有了自己的生存空间。大量的第三方控件针对 VB 提供。VB 也提供了建立、使用和重用这些控件的方法,但是由于语言问题,从一个应用程序创建另外一个并不简单。

三、VB语言缺点

1、Visual Basic 语言具有不支持继承、无原生支持多线程、异常处理不完善等三项明显缺点,使其有所局限性(此些缺点皆已在 vb .net 获得改进)。

2、VB 5.0 和 VB 6.0 都是基于对象的编程语言,但是不包含继承特性。VB 中提供了特殊的类的功能,但是还是不能满足程序员的需求。

3、Visual Basic 对于多线程无原生支持,只能通过Windows API的调用实现,且极其的不稳定。因为在API创建的线程中,并没有自动初始化运行时库,导致部分的函数无法使用。

4、Visual Basic 中内置异常处理,即使未写异常处理代码,一旦用户出错也会弹出一个明确写出出错原因对话框,接着程序终止。


扩展资料:

VB语言发展历程

1、1991年4月,微软公司推出了 Visual Basic 1.0Windows版本,这个连接编程语言和用户界面的进步被称为Tripod,最初的设计是由阿兰·库珀(Alan Cooper)完成的。在当时,它是第一个“可视”的编程软件。 

2、1992年9月,Visual Basic 1.0 DOS版本发布。11月,由于Visual Basic 1.0的功能过于简单,微软推出了新版本Visual Basic 2.0。这个版本最大的改进就是加入了对象型变量对语言的改进和扩充。

3、1993年,微软公司推出Visual Basic 3.0,分为标准版和专业版。其中包含一个数据引擎,可以直接读取Access数据库。增加了最新的ODBC2.0的支持,Jet数据引擎的支持和新版本OLE的支持。

4、2002年,微软将.NET Framework与 Visual Basic 结合而成为 Visual Basic .NET (vb .net),重新打造 VB,新增许多特性及语法。

5、2005年11月7日,Visual Basic 2005 (v8.0)问世,同时间推出Visual Basic 2005的免费简化版本Visual Basic 2005 Express Edition给Visual Basic初学者及学生使用。

6、2008年3月,微软宣布将不会再对非.NET版本的VB进行支持。

参考资料来源:百度百科-下标越界

参考资料来源:百度百科-Visual Basic

热心网友 时间:2022-06-28 00:33

只能在定义的范围内访问数组元素和集合成员。下标可能比下标范围大或小,或是在应用程序中这一边的数组没有指定范围。检查数组的声明以确认其上界和下界。若使用的是重新指定范围的数组,应使用 UBound 和 LBound 函数来决定数组访问。如果索引指定为变量,应检查变量名的拼写。

以一个简单的一维数组为例:int a[10];这是一个整型的数组a,有10个元素:a[0]-a[9],因为正确的下标应该是从0开始,到9结束,与生活习惯中的1-10不一样,于是产生一个a[10]的错误,即数组下标越界。



扩展资料

下列的代码就会导致此错误:

Dim MyArray() As Integer

MyArray(8)=234'导致错误9。

Visual Basic并不会将没有指定范围的数组自动设为0–10。相反必须使用Dim或ReDim来指定数组中元素的数目。

引用了不存在的集合成员。

试着使用For Each...Next结构代替指定元素下标。

使用速写形式的下标,结果指定了错误的元素。

例如,当在集合上使用!运算子时,!自动指定了一个键。例如object!keyname.value和object.item(keyname).value是一样的。在此例中,集合中如果keyname表示一个错误键,错误就会产生。若要改进此错误,在集合对象中使用正确的键名称或索引。

详细信息,可选取有问题的项目,并按下F1键。

参考资料来源:百度百科-下标越界

参考资料来源:百度百科-数组下标越界

热心网友 时间:2022-06-28 00:33

是数组越界 具体就是使用了不存在的数组下标 也就是说你定义了a(9) 那么你最多只能使用0-9这10个数作为a(?)一旦超过9 就出现这样的错误 你可以在程序中判断这个你使用的下标是否大于定义的数比如a(i) if i>ubound(a) then msgbox "i值大于数组a的定义,请检查"
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
抖音火山版怎么查看钱包 查看方法介绍 职能手机v3职能手机的优点和缺点 关于Cascode运放的偏置电路 vb WindowsMediaPlayer1控件怎么同时播放两个视频文件 太阳马戏团特点 【加拿大必知百科系列】加拿大文化璀璨之星—太阳马戏团 太阳马戏团简介 垃圾短信如何拦截设置 垃圾短信拦截设置的方法 vivo xplay3s用奇兔刷机刷机后打电话显示SIM卡错误是怎么回事?卡重新插... 为什么我的vivo xplay3s联通卡插上去显示无SIM卡呢? 你好,我的U盘,是新买的幻彩16G,现在插入电脑的时候有红色灯缓慢的闪动,电脑认不出U盘,这是什么问题? 新手用vb6还是vb9? VB实时错误9,下标越界 VA,VB1,VB2,VB6,VB9,VB12,VC,VD,VE这些字母在医学上代表什么? vivox23红色手机是幻彩版吗 武林外传红色的幻彩恶魔时装怎么弄的 曹操出行工作怎么样? 构成主义与现代艺术设计的关系 什么是生活数学观?儿童数学观?现实数学观 什么是生活数学观,儿童数学观和现实数学观 数学公理的定义 数学对人发展的影响有哪些方面 高观点下的初等数学讲的是初等数学吗 《结构主义》pdf下载在线阅读全文,求百度网盘云资源 斗破苍穹1098-1223章有的请发 q584130245@163.com 谢谢! 解构主义的主要特点与思想有哪些? 跪求一个dnf体验服账号 可以借我的朋友 加Q584758299 谁能教我把QQ资料卡也弄成透明的?+Q584483106 什么是结构主义 结构主义的概念 谁能给个 造梦 西游 的 号 !要第一部的 带第2部加分 要双人的最好 不要藏啊 +Q584897934 VB中实时错误9:“下标越界”是什么意思? 雅诗兰黛的精华液100ml瓶子底部VB9是什么意思? 幻彩罗汉鱼会变色吗 雅诗兰黛的精华液100ml瓶子底部VB9是什么意思? vb基础问题9 vb基础问题9 迪奥口红金艳幻彩系列069是粉色吗? 关于VB运行时错误9下标越界 关于VB运行时错误9下标越界 八字中官印是啥意思? 纯蓝色背景的鱼缸,想问下底沙选择什么颜色比较搭配呢?我准备养幻彩红宝石雷龙,缸是60,40的 vs2008里的VB是哪个版本的? 现在用VB6还是用VB9的人多? vb运行错误9下标越界 VB主要指的是什么? VB主要指的是什么? 官印是不是结婚的意思?正印是不是老婆的意思? 幻彩金属板建筑有哪些 VB 2008 Beat2(VB9)中文版 VB 2008 Beat2(VB9)中文版