Страница: 1 |
Страница: 1 |
Вопрос: Нижний индекс вне диапазона???
Добавлено: 08.08.04 00:44
Автор вопроса: BaskeT
Обьясните пожалуйста, почему выскакивает ошибка "Нижний индекс вне диапазона"???
[code]
Private Type rec
name As String * 20
num As Integer
End Type
Private Sub Command1_Click()
Dim filename As String
Dim my() As rec
filename = "c:\temp.txt"
Open filename For Binary As #1
For i = 1 To 3
my(i).name = InputBox$("Input name ")
my(i).num = InputBox$("Input number")
Put #1, , my(i)
Next
Seek #1, 1
For i = 1 To 3
Get #1, , my(i)
MsgBox "Input name is " & my(i).name
MsgBox "Input number is " & my(i).num
Next
Close #1
End Sub
[/code]
Ответы
Всего ответов: 2
Номер ответа: 1
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #1
Добавлено: 08.08.04 01:05
интересно, а кто будет размер массива объявлять?
может быть так лучше будет...?
Dim my(1 To 3) As rec
Номер ответа: 2
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #2
Добавлено: 09.08.04 09:05
Здесь всё просто: динамический массив ты начинаешь инициализировать с индекса 1. Тогда ты мог забыть написать в General Declarations строчку Option Base 1? Либо учти, что массивы VB по умолчанию тебе надо нумеровать с нуля my(0), my(1), my(2). И ещё: судя по коду, возможно и правда тебе будет удобно обходиться статическим массивом (я правильно выразился)? Удачи!