Первое знакомство с переменными

На каком бы языке вы ни программировали, один из важнейших аспектов — это различные типы данных, используемые данным языком. В частности, к их числу принадлежат переменные, массивы и константы (хотя это далеко не все существующие типы). Они жизненно необходимы для работы приложений. Итак, что же такое переменная? Переменной называется область памяти, в которой могут храниться различные значения. Как нетрудно догадаться по названию, значение переменной может изменяться.

 

Что такое память?

Чтобы лучше понять, как работают переменные, необходимо сначала поближе познакомиться с памятью. Представьте себе лист бумаги в клетку. Каждый квадрат имеет размеры 5x5 мм и площадь 0,25 см2. Если представить память компьютера в виде этого листа, то один квадрат будет соответствовать одному байту. Один килобайт (1024 байт) будет иметь размеры 16x16 см. На первый взгляд кажется, что это не так уж много, но мегабайт оказывается на удивление большим. Один мегабайт равен 1024 Кбайт, поэтому лист будет иметь размеры 5,12x5,12 м, или 26,2144м2.

Если на вашем компьютере установлено 16 Мбайт памяти, лист увеличивается до размеров 20,48x20,48 м, то есть около 420 м2. Почти треть футбольного поля!

Если же одному квадратику будет соответствовать не байт, а бит, то лист получится еще больше — размером почти в три футбольных поля. К счастью, на первых порах вам не придется работать с битами. Теперь вы примерно представляете себе, как устроена память, и поймете, как работают переменные различных типов.

 

Типы переменных

Как только ваши приложения начнут хранить, извлекать и отображать данные, вам неизбежно придется работать с переменными, массивами и константами. Эти фундаментальные средства предназначены для хранения в памяти временных величин. Они используются не только в Visual Basic, но и в других языках программирования.

Переменной называется имя, определяющее область памяти для хранения временной величины. Такая величина может изменяться во время работы приложения. Переменные применяются в самых разных ситуациях, многие из них выузнаете по мере накопления опыта. В Visual Basic существует несколько типов переменных, называемых типами данных. Каждый тип данных обладает собственными характеристиками (см.табл. 7.1).

 

Таблица 7.1. Типы даннъис для переменнъис и констант

Тип данных Назначение
Integer Числовая переменная, содержит целые числа из интервала -32 768 — 32767
Long Числовая переменная, отличается от Integer более широким интервалом
Single Числовая переменная — содержит числа с десятичной точкой
Double Числовая переменная, отличается от Single более широким интервалом
Currency Переменная для хранения денежных величин
String Переменная для хранения текстовых или строковых значений
Byte Числовая переменная — интервал 0-255, даже меньше, чем у Integer
Boolean Переменная для хранения значений True или False
Date Переменная для хранения дат
Object Переменная для хранения ссылок на объекты Visual Basic и других приложений
Variant Универсальная переменная общего назначения, которая может хранить значения большинства других типов

Как видно из табл. 7.1, типов переменных много. Материал, изложенный в книге, требует знакомства лишь с самыми распространенными: байтовым (Byte), строко­вым (String), целым (Integer), логическим (Boolean), универсальным (Variant) и объектным (Object).

Объектный тип может быть разбит на тип^усатегории — формы, элементы, прин­теры и т. д. Универсальный тип удобен в томотношении, что онможет хранить зна­чения всех остальных типов, однако при отладке больших приложений он может вызвать проблемы. Обо всех этих нюансах вы узнаете из главы 12, «Отладка приложений».

 

Байтовые переменные

Простейшим типом переменных является байтовый тип. Чтобы не углубляться в тонкости двоичной арифметики, поверьте мне на слово: байтовая переменная может хранить числа от 0 до 255.

 

Байтовые переменные хорошо подходят для хранения малых числовых величин, в частности символов из набора ASCII и двоичных данных. Работа с байтовыми переменными демонстрируется на следующем примере:

1. Создайте новый проект командой File > New Project.

2. В окне Project Wizard выберите значок Standard EXE.

3. Когда Visual Basic завершит создание проекта, удалите форму Form1. Для этого следует щелкнуть на строке Form1 правой кнопкой мыши в окне проекта и выбрать команду Remove Form1 в контекстном меню.

4. Если Visual Basic предложит сохранить Form1, нажмите кнопку No.

5. Щелкните правой кнопкой мыши в окне проекта и выберите команду Add > Module в контекстном меню.

6. В диалоговом окне Add Module выберите значок Module. B проекте появится пустой модуль.

7. Если модуль еще не открыт в окне программы, дважды щелкните на строке Module 1 в окне проекта.

8. Добавьте в модуль следующий фрагмент:

 

Option Explicit

Private Sub Main()

Dim b As Byte

Dim text As String

 

Debug.Print "ASCII-таблица"

 

for b = 0 To 63

text = Str$(b) & " " & Chr$(b)

text = text & Chr$(9) & Chr$(9)

text = Str$(b + 64) & " " & Chr$(b + 64)

text = text & Chr$(9) & Chr$(9)

text = Str$(b + 128) & " " & Chr$(b + 128)

text = text & Chr$(9) & Chr$(9)

text = Str$(b + 192) & " " & Chr$(b + 192)

text = text & Chr$(9) & Chr$(9)

Debug.Print text

Next

 

End

End Sub

 

9. Запустите программу командой Run > Start.

В окне отладки промелькнет таблица, состоящая из чисел и символов. Она известна программистам под названием ASCII-таблицы. В нее входят числа от 0 до 255, что соответствует байтовому типу данных. Рядом с каждым числом выведен соответствующий ASCII-символ. Пользуясь этими числами, вы можете включать в свою программу непечатаемые и другие специальные символы. Например, в приведенном выше фрагменте несколько раз встречается ссылка вида Chr$(9). Значение 9 соответствует символу табуляции. Поскольку вы не можете ввести его в тексте программы, приходится использовать Chr$(9). Команда Debug.Print выполняет вывод в окне отладки. Более подробная информация о ней приведена в уроке 9, «Печать».

 

ПОДСКАЗКА Чтобы включить в программу символ, который невозможно ввести с клавиатуры, найдите его код в ASCII-таблице и воспользуйтесь функцией Chr$(), указав ASCII-код символа в скобках.

 

Строковые переменные

Разобравшись с байтовыми переменными, мы перейдем к более полезному способу их применения. Строковые переменные (или просто строки) занимают в памяти цепочку последовательных байтов и могут содержать буквы и числа. Вместе эти байты образуют мнемонические сокращения, слова и даже целые предложения. На рис. 7.2 изображена простейшая строка в памяти. Обратите внимание: ее общая длина равна 11 байтам, так как каждый ASCII-символ представлен одним байтом.

Некоторые свойства, с которыми нам уже приходилось работать, на самом деле представляли собой строковые переменные. Так, свойства Name и Caption имеют алфавитно-цифровые значения. Чтобы работать со строковой переменной, нужно выполнить ряд предварительных действий:

 

О выбрать имя переменной;

О объявить переменную как строковую (типа String);

О задать имя переменной.

 

Давайте создадим простую строковую переменную с именем strName. Префикс str обычно говорит о том, что переменная имеет строковый тип. Он может пригодиться во время отладки, если вы не уверены, к какому типу относится переменная. Следующим шагом должно стать объявление строковой переменной. Для объявления переменных используется ключевое слово Dim:

 

Dim strName as String

 

При объявлении для переменной выделяется область памяти. Visual Basic резер-нпруетдостаточно памяти, чтобы в ней поместился объект соответствующего типа. Наконец, строке можно присвоить значение:

 

strName = "Jane"

 

Если строке присваивается непосредственное значение, его следует заключить в кавычки. Если этого не сделать, Visual Basic предполагает, что значение strName хранится в переменной с именем Jane.

Присвоив переменной значение, вы сможете воспользоваться им для дальнейших вычислений, например передать его в качестве параметра процедуры или присвоить элементу на форме:

 

Form1.Caption = strName

 

Следующимпример поможет лучше понять сказанное:

1. Создайте новый проект командой File > New Project.

2. Дважды щелкните на форме Form1 в конструкторе форм, чтобы открыть окно программы.

3. Выберите из списка Events окна программы событие Click формы.

4. Добавьте в процедуру события Click следующий фрагмент:

 

Private Sub Form_Click()

Dim msg As String

msg = "Привет!"

Caption = msg

End Sub

 

5. Запустите программу командой Run > Start.

6. Щелкните на форме и проследите за изменением заголовка.

Мы рассмотрели простейший пример использования строковых переменных в приложении. Во время чтения этой книги вам предстоит увидеть множество других, менее тривиальных примеров.

Если вы забываете объявлять свои переменные, попробуйте форсировать явное объявление всех переменных — включите строку Option Explicit в секцию (General) (Declarations) окна программы вашей формы. Эту же строку можно включать в аналогичную секцию всех создаваемых форм и стандартных модулей Visual Basic (.BAS).

ПОДСКАЗКА

Чтобы форсировать явное объявление переменных во всех модулях, выполните команду Tools > Options. Установите флажок Require Variable Declaration на вкладке Editor диалогового окна Options (рис. 7.3). После этого Visual Basic будет автоматически вставлять строку Option Explicit в секцию (General) (Declarations) каждого создаваемого модуля.

Puc. 7.3. Диалоговое окно Options

 

Целые переменные

Целый тип также принадлежит к фундаментальным типам данных. Целые переменные отчасти похожи на байтовые, но они могут иметь знак (то есть быть положительными или отрицательными) и принадлежат интервалу от -32 768 до 32 767. Целый тип удобен для простых вычислений, при которых значения заведомо остаются целочисленными величинами. Кроме того, целые переменные часто используются в качестве счетчиков.

 

Мы рассмотрим работу с целыми переменными на следующем примере:

1. Создайте новый проект.

2. Создайте на форме кнопку Задайте ее свойству Name значение cmdPush, а свойству Caption — значение Нажми.

3. Дважды щелкните на кнопке, чтобы открыть окно программы.

4. Добавьте следующий фрагмент в процедуру события Click кнопки:

 

Dim A As Integer

Dim В As Integer

А = 2

В = А + 1

Print В

 

5. Запустите программу и нажмите кнопку.

На рис. 7.4 показано окно программы с приведенным выше фрагментом.

 

Рис. 7.4. Окно программы для примера

 

Последняя строка выводит на текущей форме значение переменной В, равное 3 (рис. 7.5).

 

Рис. 7.5. Окно приложения-примера

 

Другие примеры работы с целыми переменными встречаются как в этом уроке, так и в оставшейся части книги.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: