| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 700 人关注过本帖
标题:想显示一个数组的内容,但提示缺少数组,大家帮忙分析下,谢谢。
只看楼主 加入收藏
wcwycp
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2012-12-21
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:3 
想显示一个数组的内容,但提示缺少数组,大家帮忙分析下,谢谢。
VB如何读取数组里面的内容啊?是自义生成的一组数组。

Public Const SFEP_UFPDATA_SIZE = (498)
Public Type SFEP_USER_FPDATA
    rbData(SFEP_UFPDATA_SIZE - 1) As Byte
End Type



Dim stRegtem As SFEP_USER_FPDATA
Dim i As Byte

    If nEnrollCount = 3 Then
        lblStatus = "": lblStatus.Refresh
        nRet = SFEP_GetTemplateForRegister(stTemplates(0), stRegTem)

        If nRet <> RES_OK Then
            lblStatus = "Failed in get template for enroll!": lblStatus.Refresh
        Else
            nRet = SFEP_Enroll(stRegTem, dwID, bFingerNum, bManager)
'-----------------------------------------------------------------------------
            For i = LBound(stRegTem) To UBound(stRegTem)    ‘出现错误的地方
            Text1.Text = Text1.Text & Chr(10) & Str(stRegTem(i))
            'MsgBox stRegtem(i)
            Next
'-----------------------------------------------------------------------------
            If nRet <> RES_OK Then
                If nRet = ERR_DUPLICATED Then
                    lblStatus = "Duplicate!" + vbCrLf + "ID=" + Str(dwID) + ", FN=" + Str(bFingerNum)
                Else
                    lblStatus = "Failed Enroll!" + vbCrLf + "ERROR CODE = " + Str(nRet)
                End If
            Else
                lblStatus = "Success!!!!!"
            End If
        End If
    End If


显示编译错误,缺少数组,请大家帮忙看下是什么原因啊,谢谢。

如果不加FOT循环是可以正常执行的,谢谢。
搜索更多相关主题的帖子: 如何 Failed 
2013-08-10 15:42
yklstudent
Rank: 2
等 级:论坛游民
帖 子:16
专家分:64
注 册:2011-2-9
收藏
得分:7 
i是byte型变量 你循环值已经大于byte最大值 所以要报错的
2013-08-10 17:30
lowxiong
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:27
帖 子:652
专家分:3402
注 册:2008-5-7
收藏
得分:7 
stRegtem 根本就不是一个数组,只是一个自定义变量,虽然自定义变量包含数组,但stRegtem 本身只是一个单一变量。
2013-08-10 22:35
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:7 
3楼说的对,你  stRegtem 的定义是:
Dim stRegtem As SFEP_USER_FPDATA
这里定义的是一个单一变量。虽然它指向一个自定义类型,而这个自定义类型包含一个 数组 。

            For i = LBound(stRegTem) To UBound(stRegTem)    ‘出现错误的地方

你需要访问 这个变量里的数组,就需要使用 . 进行引用。stRegtem.rbData
这个数组的大小,是一个常量规定的,那这段代码就可以直接用 常量来表示,不建议再用 函数去取最大下标。
            for i=0 to SFEP_UFPDATA_SIZE-1
最小下标,你在常量规定时,就以规定了下标是从 0 开始的,所以也可以不用去用函数去最小下标。

授人于鱼,不如授人于渔
早已停用QQ了
2013-08-11 11:39
快速回复:想显示一个数组的内容,但提示缺少数组,大家帮忙分析下,谢谢。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022411 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved