51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1664|回复: 3
打印 上一主题 下一主题

[讨论] 边界条件问题是如何产生的?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-7-25 11:02:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  我现在正在自学软件测试方面的知识,手头上正在看的是一本《软件测试》书,由于我的本专业和计算机没有一点关系,上学期间也毛毛学过一两种语言,但现在差不多都忘记了,于是现在看一些简单的程序都不懂了。昨天我看到了有关边界条件的内容,“边界条件是特殊情况,奇怪的是程序在处理大量中间数值时都是对的,但是可能在边界出处错误”,于是文章中举了一个简单的程序来说明是如何产生边界条件问题的。可是等我看完整个例子,还是没有明白什么是问题的关键,请个位测友帮忙指点!!

举例内容:

演示边界条件软件缺陷的简单BASIC程序

1:Rem Create a 10 element integer array
2:Rem Initialize each element to —1
3:Dim data(10) As Integer
4:Dim i As Integer
5:For i=1 to 10
6:data(i)=-1
7:Next i
8:End

  这段代码的意图是要创建包含10个元素的数组,并为数组中的每一个元素赋予初值-1,它建立了包含10整数的数组data和一个计数值i。FOR循环从1到10,数组中从第一个元素到到第十个元素被赋予数值-1.
说这是一个包含10个元素的数组好理解,可下面的一段话我就想不明白了:
“当以声明的范伟定义数组时——在本例中定义语句是Dim data(10) As Integer——第一个创建的元素是0,而不是1。该程序实际上创建了一个从data(0)到data(10)工11个元素的数组。”

我就是想不清楚为什么是11个数组而不是10个数组,为什么呀?程序中从哪里可以看出来?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-7-25 15:59:30 | 只看该作者
建议你先去看看VB的书写格式和语法规则。
数组计数都是从[0]开始的。从0到10不是11个数字吗?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-9-29 10:29:25 | 只看该作者
没有看到我给你的博客留言?

定义一个数组有多少个元素,用data(元素个数),但是数组里的第一个元素是用data(0),而不是data(1).所以从data(0)~data(10)自然是11个元素了。上面程序中for i=1 to 10应该是for i=0 to 9.
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-10-1 17:51:48 | 只看该作者
这是BASIC的规定它就是从0开始的。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-27 07:01 , Processed in 0.071177 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表