Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
512244_74984_sidorov_m_e_algoritmizaciya_i_prog....doc
Скачиваний:
19
Добавлен:
01.05.2019
Размер:
5.08 Mб
Скачать

Определение типа переменной по умолчанию

Инструкция DefTиn используется на уровне модуля для задания типа данных, используемого по умолчанию для переменных имена которых начинаются с определенных символов. Синтаксис: DefТип ДиапазонБуквЧерезДефис. Используются следующие инструкции: DefBool DefByte, DefInt, DefLng, DefCur, DefSng, DefDbl, DefDate, DefStr, DefObj,. DefVar, для соответствующих типов данных.

Примеры.

DefInt A-K

DefStr L-Z

CalcVar = 4

StringVar = "Hello there"

Dim Calc As Double

Calc = 2.3455

Еще одним способом задания типа переменной по умолчанию является включение в конец его имени специального символа, устанавливающего тип переменной:

Тип

Integer

Long

Single

Double

Currency

String

Символ

%

&

!

#

@

$

Примеры.

Int%=6

Str$="Строка"

Массивы

Массивы должны быть объявлены до их использования в программе.

Синтаксис:

Dim ИмяМассива (Индексы) [As Тип]

где

Индексы - Размерности массива. Допускается описание до 60 размерностей.

Синтаксис: [Нижний То] Верхний [,[Нижний То] Верхний] ...

Если нижний индекс не задан явно, то нижняя граница массива определяется инструкцией Option Base, иначе нижняя граница массива равняется нулю. Базовый индекс можно изменить, написав в области описания модуля инструкцию, например

Option base 1 'Базовый Индекс равен 1

Dim MyArray(20), TwoDArray(3, 4) ' Объявление массивов

Dim ZeroArray(0 To 5) As Integer ' Явное задание базового индекса

Dim MyMatrix(1 To 5, 1 To 9) As Double

ZeroArray(0)=15

ZeroArray(20)=25

MyMatrix(1,1)=8.9

Для определения одномерных массивов можно использовать переменную типа variant, задавая значения элементам массива инструкцией Array:

Dim A As Variant

А = Аrrау(1, 15, 30) ' значения элементов массива равны: 1, 15, 30

Динамические массивы

Если в процессе выполнения программы требуется изменять размер массива, то массив объявляют как динамический, например

Dim R() As Single

В программе следует задать размер массива с помощью инструкции ReDim. Синтаксис:

ReDim [Preserve] ИмяМассива(Индексы) [As Тип]

Preserve - ключевое слово, используемое для сохранения данных в существующем массиве при изменении значения последней размерности.

Для массива, не сохраняющего данные, можно изменять верхнюю и нижнюю границы, но нельзя менять размерность массива, например:

ReDim R(1 to 90)

ReDim R(-10 to 10)

Для массива, сохраняющего данные, можно изменять только верхний и последний индекс размерности массива, например:

Dim Matr () As Integer

ReDim Matrix1(19, 29)

ReDim Preserve Matr (19,33)

Чистка массивов

Для повторной инициализации массивов фиксированной длины и освобождения памяти, отведенной для динамического массива служит процедура Erase СписокМассивов, например

Dim NumAr(10) As Integer ' числовой массив

Dim StrVarAr(10) As String 'массив строк переменной длины

Dim StrFixAr(10) As String * 10 'массив строк постоянной длины

Dim VarAr(10) As Variant ' 'массив вариант

Dim DynAr() As Integer ' динамический массив

ReDim DynAr(10) 'определение длины массива

Erase NumAr ' все элементы массива равны 0.

Erase StrVarAr ' все элементы массива нулевой длины ("")

Erase StrFixAr ' все элементы массива равны 0

Erase VarAr ' все элементы массива равны Empty

Erase DynAr 'освобождение памяти, использовавшейся для массива

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]