Переменные и выражения в Visual Basic
Во всех языках высокого уровня программный код состоит из:
· переменных;
· операторов;
· функций;
· выражений;
· управляющих структур;
· классов и объектов.
В Visual Basic переменные хранят информацию (значения). При их использовании Visual Basic резервирует область в памяти компьютера для хранения данной информации. Каждая переменная имеет своё имя, которое может состоять не более чем из 255 символов. В имени переменной могут использоваться только латинские буквы, цифры и знак подчёркивания. Имя следует начинать с буквы. Регистр символов значения не имеет. Приведём несколько примеров имён переменных:
· numOfLetters – подходит;
· 2Bottle - неверно, т.к. начинается не с буквы;
· цName – не подходит, так как первый символ – буква русского алфавита;
· sng.Cos - не подходит, т.к. используется точка.
Каждая переменная имеет определённый тип. Кроме того, программист может определить и свой тип. Основные типы переменных VB:
Byte - предназначен для хранения целых чисел от 0 до 255. Если переменной такого типа присвоить значение, выходящее за эти пределы, то Visual Basic сгенерирует ошибку.
Integer - предназначен для хранения целых чисел в диапазоне -32768 до +32767, т.е. размер памяти, выделяемой под такую переменную составляет 2 байта.
Long- предназначен для хранения целых чисел в диапазоне -2147483648 до +2147483647, т.е. размер памяти, выделяемой под такую переменную составляет 4 байта.
String- предназначен для хранения строковой (символьной) информации, т.е. текста (текст записывается в кавычках: «»). Может содержать до 256 символов текста.
Double- предназначен для хранения дробных чисел, с точностью до 16 цифр. Диапазон отрицательных значений от -1.79769313486232Е308 до -4.94065645841247Е-324. Диапазон положительных значений от 4.94065645841247Е-324 до 1.79769313486232Е308. Длина числа может достигать 300 знаков. Занимает 8 байтов памяти. Вычисления с данными переменными будут приблизительными и менее быстрыми, чем с переменными целого типа. Используется для научных расчётов.
Date- этот тип данных позволяет хранить значения времени и даты в промежутке от полуночи 1 января 100 года до полуночи 31 декабря 9999 года. Если переменной присваивается только значение даты, то время равняется 00:00.
Boolean- очень важный и распространённый тип данных. Позволяет хранить так называемые булевы значения, т.е. только два значения – True(Истина) и False (Ложь). Используется тогда, когда вам нужно хранить только значение Да или Нет.
Variant- переменная типа Variant может содержать данные любого типа. Использование такого типа данных замедляет работу программы, т.е. требуется время и ресурсы для преобразования типов. Поэтому следует воздерживаться от применения этого типа данных, за исключением специфических случаев, например, возвращение функцией массива возможно только при использовании типа Variant.
В Visual Basic переменные объявляются в любом месте программы с помощью следующего оператора:
Dim <Имя_переменной> As <Тип_переменной>.
Если не указывать тип, то переменная будет объявлена как Variant.
Примеры объявления переменных:
Dim a As Long– объявляется переменная с именем а целого типа, диапазон изменения от -2147483648 до +2147483647.
Dim b As Byte– объявляется переменная с именем b целого типа, диапазон изменения от 0 до 255.
Dim myStr As String– объявляется строковая переменная с именем myStr.
После объявления переменной ей присваивается значение по умолчанию. Для строки это – “” (пустая строка), для чисел – 0, для булевой переменной – False.
Переменные можно объявлять и в одной строчке, разделяя объявления запятой:
Dim a As Long, Dim b As Integer
Значение переменной задается с помощью оператора присваивания – знак “=”. Например:
a = 1234567
b = 234
myString = “Visual Basic”
В данном примере переменным присваивались константы. Но часто бывает необходимо присвоить одной переменной значение другой. Это делается следующим образом:
a = b'переменная а примет значение 234, т.к. переменная b “умещается” в тип Long (234<4294967296)
a = b + c'переменная а станет равна сумме (b+c), т.е. а=234, т. к. с=0 по умолчанию
b = c'переменная b примет значение 0 (0<255)
b = a'появится сообщение об ошибке, так как значение переменной а не принадлежит [0-255]
В Visual Basic можно объявлять не только переменные, но и константы. Константа, как и переменная, тоже хранит некоторое значение, но в отличие от переменной хранимое значение не может изменяться. В Visual Basic константы объявляются в любом месте программы с помощью следующего оператора:
Const <Имя_переменной> = <Значение_переменной>.
Пример.
Const PI = 3.1415'объявлена константа c именем PI и значением 3.1415.
Рекомендации:
Перед использованием переменной, её желательно объявить. Это избавит вас от лишних ошибок.
Переменным нужно давать осмысленные имена. Т.е. старайтесь не использовать такие имена, как a1,a2,a3,ab,ccc и т.п.
Выражения в VB являются основными кирпичиками, из которых строится программа. Согласно самому точному определению, “выражение” - это “что-то, что содержит значение”. Выражение (кроме логического выражения) записывается после оператора присваивания и представляет собой конструкцию, в которую могут входить переменные, константы, операторы и функции.
Пример.
b = 234' 234 - это выражение содержащее константу.
c = b' выражение состоит из переменной b, имеет значение 234
c = а + 5 * 2' а + 5 * 2это выражение, состоящее из переменной а, операторов + и *, констант 5 и 2.
c = sin(а)'sin(а)выражение состоит из функции sin() и переменной а
Рассмотрим другие, очень распространённые выражения – логические выражения (выражения сравнения). Такие выражения возвращают True или False, в зависимости от получившегося значения выражения.
Операторы
В Visual Basic операторы бывают следующих типов:
1. Арифметические операторы:
· ^ – оператор возведения в степень;
· * – оператор умножения;
· / – оператор деления;
· \ – оператор целочисленного деления;
· mod – оператор вычисления остатка от деления;
· + – оператор сложения;
· – – оператор вычитания.
2. Операторы сравнения:
· < – меньше;
· > – больше;
· <= – не больше;
· >= – не меньше;
· = – равно;
· < > – не равно.
3. Конкатенации (слияния):
· + или &.
4. Логические операторы:
· And – оператор логического умножения;
· Eqv – оператор логической эквивалентности;
· Imp – оператор логической импликации;
· Not – оператор логического отрицания;
· Or – оператор логического сложения;
· Xor – оператор логического исключающего сложения.
Так же, как и в алгебре, здесь действует принцип приоритетов. Он заключается в том, что каждый оператор имеет свой приоритет. Например, умножение имеет больший приоритет, чем сложение. Приоритет можно указать явно, поставив в нужной части выражения круглые скобки:
c = (5 + 5) * 2'сначала выполнится оператор сложения, а затем умножение.
Таблица 2. Приоритеты операторов
Арифметические | Сравнения | Логические |
Возведение в степень(^) | Равно (=) | Not |
Отрицание (–) | Неравно (<>) | And |
Умножение и деление (*, /) | Меньше чем (<) | Or |
Целочисленное деление (\) | Больше чем (>) | Xor |
Остаток от деления (mod) | Меньше или равно (<=) | Eqv |
Сложение и вычитание (+,–) | Больше или равно (>=) | Imp |
Конкатенация (&) | Принадлежность к типу (Is) |
В этой таблице сверху вниз показан порядок следования приоритетов операторов Visual Basic. Сверху вниз приоритет убывает. Операторы, имеющие одинаковый приоритет в выражении вычисляются слева направо. Если в выражении встречаются операторы из разных категорий, то вычисляются они в порядке столбцов слева направо, т.е. сначала арифметические, затем операторы сравнения и лишь затем логические операторы.
Управляющие структуры
Во всех языках программирования есть такие классические структуры, как условные операторы и операторы цикла.
Примечание: Здесь бы хотелось заметить, что управляющие структуры мы тоже будем называть операторами.
В этом разделе мы познакомимся с операторами ветвления If…End If и цикла For…Next.