У вас вопросы?
У нас ответы:) SamZan.net

Каждая переменная имеет собственное имя

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 4.3.2025

Основы программирования в Visual Basic 2008

Переменные

Переменная представляет собой зарезервированное место в оперативной памяти для временного хранения данных. Каждая переменная имеет собственное имя. После того как переменной присвоено значение, вы можете в программе вместо самого значения использовать эту переменную.

Имена переменных

Для того чтобы сделать переменные более наглядными и простыми для чтения, рекомендуется давать им имена, имеющие определенное смысловое значение. Правила задания имен переменных:

имя переменной должно содержать не более 255 символов;

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

первый символ в имени переменной должен быть буквой или символом подчеркивания;

в имени переменной должны отсутствовать пробелы и знаки пунктуации;

имя должно быть уникальным внутри области видимости;

имя не должно являться ключевым словом, например, Print.

Замечание

Список ограничений достаточно велик, чтобы знать его наизусть, но вам всегда поможет проверка синтаксиса программы, при выполнении которой будет указано на использование недопустимых имен. Например, допустимы перечисленные ниже имена переменных:

CurrentNum, Total, Date_of_birth

Следующие имена недопустимы:

2Time, $Total, Date of birth

Типы данных

Основные типы данных Visual Basic приведены в табл. 2.1.

Таблица 2.1. Типы данных Visual Basic

Тип данных

Занимает в памяти

Значение

Что хранит

Boolean

Различно

True, False

Логические значения

Byte

1 байт

От 0 до 255 (без знака)

Двоичные числа

Char

2 байта

Один символ

Один символ (кодировка Unicode)

Date

8 байтов

Дата от 1 января 0001 года до 31 декабря 9999 года и время от 0:00:00 до 23:59:59

Значения даты и времени

Decimal

16 байтов

Без десятичной запятой: от -79 228 162 514 264 337 593 543 950 335 до +79 228 162 514 264 337 593 543 950 335

С десятичной запятой (28 знаков после запятой): от-7,9228162514264337593543950335 до+7,9228162514264337593543950335

Наименьшее ненулевое значение (+1Е-28): +0,0000000000000000000000000001

Число с фиксированной запятой

Double

8 байтов

Отрицательные числа от -1,79769313486231570Е308 до 4,94065645841246544Е-324;

положительные числа от 4,94065645841246544Е-324 до 1,79769313486231570Е308

Числа с плавающей запятой двойной точности

Integer

4 байта

От -2 147 483 648 до 2 147 483 647

Целые числа

Long

8 байтов

От -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807

Целые числа

Object

Различно

В переменной типа Object могут храниться значения любого типа

Ссылка на объект

SByte

1 байт

От-128 до 127

Целые числа

Short

2 байта

От -32 768 до 32 767

Целые числа

Single

4 байта

Отрицательные значения от -3.4028235Е38 до -1.401298Е-45;

положительные значения от 1.401298Е-45 до 3.4028235Е38

Числа с плавающей запятой

String

Различно

От 0 приблизительно до 2 миллиардов символов в кодировке Unicode

Текст

Ulnteger

4 байта

От 0 до 4 294 967 295 (без знака)

Целые числа

ULong

8 байтов

От 0 до 18 446 744 073 709 551 615 (без знака)

Целые числа

UShort

2 байта

От 0 до 65 535 (без знака)

Целые числа


Переменная типа данных Boolean может принимать только два значения: True и False. При переводе числовых данных в логические значения 0 становится False, а остальные значения — True. Когда логические значения переводятся в числовые, False становится 0, a True — 1. По умолчанию переменной типа Boolean присваивается значение False. Названия типов, указанных в табл. 2.1, являются псевдонимами для типов, определенных в пространстве имен System. Так, тип integer является псевдонимом для типа System. Int32, а тип string является псевдонимом для типа system.string. Псевдонимы полностью эквивалентны типам, объявленным в пространстве System.

Для хранения двоичных чисел используется переменная или массив данных типа Byte.

Для текстовой информации предназначены переменные типов char и string. Первый из них хранит один символ в кодировке Unicode, а второй — строку от 0 до примерно 2 млрд символов {строкой называют последовательность символов, заключенную в кавычки). Переменная типа string является ссылкой на строку. Символы в строке не могут быть изменены, может быть изменена только ссылка на нее, что следует учитывать при написании программы.

Переменные типа Date хранят значения даты и времени. Значение даты должно заключаться между знаками # и быть в формате "месяц/день/год", например #5/31/1993#. По умолчанию переменные типа Date инициализируются значением 12:00 1 января 0001 года. Для перевода значения типа Date в переменную строкового типа используется функция Format, которая имеет следующий синтаксис:

Function Format(ByVal Expression As Object,  Optional ByVal Style As String =  "")  As String

где:

Expression— выражение, которое необходимо привести к строковому типу;

style — используемый при переводе к строковому типу формат (например, "dddd, ммм d yyyy" и "Long Date"). Если параметр не указан, дата представляется в наиболее коротком формате, распознаваемом компьютером, а время — в формате (12-часовом или 24-часовом), действующем на компьютере.

Следующие строки демонстрируют использование функции Format:

Format(Now(), "Long Time")

Format (Now() , "dd.MM.yy hh:mm")

Для хранения целых значений используются переменные типа short, integer и Long для знаковых чисел и ushort, uinteger и ULong для беззнаковых. Переменные типов short и ushort занимают меньший объем памяти, но вычисление формул, содержащих данные типа integer, происходит быстрее, чем формул, содержащих данные других целых типов.

Для чисел с дробной частью предназначены типы данных Double и Single, которые хранят числа с плавающей запятой, т. е. числа, представленные в виде произведения числа (так называемые "мантиссы", как правило, в пределах от 1 до 10) на 10 в определенной степени, например, 4,5Е7, что означает 4,5- 107 или 45 000 000. Числа с плавающей запятой могут иметь и отрицательный показатель степени 10, например, 4,5Е-4, что означает 4,5- 10 или 0,00045. Таким образом, числа с плавающей запятой применяются для хранения как очень малых, так и очень больших величин.

Переменные, объявленные как Decimal, содержат числа с фиксированной десятичной запятой. В отличие от чисел с плавающей запятой, числа данного типа не имеют множителя "десять в степени". Это позволяет избежать ошибок округления, которые могут возникнуть при вычислении с использованием чисел с плавающей запятой. Поэтому рекомендуется применять тип Decimal, когда производятся сложные вычисления, в которых недопустима подобная погрешность.

Преобразование чисел из одних типов данных в другие может быть явным и неявным. Неявное преобразование выполняется автоматически при присвоении определенного значения переменной. В случае явного преобразования используются методы класса system.convert.

Тип данных object может хранить различные данные и менять их тип во время выполнения программы.

При разработке программ в среде Visual Basic в зависимости от типа данных переменных можно использовать префиксы, приведенные в табл. 2.2.

Таблица 2.2. Префиксы, используемые в наименованиях переменных

Тип данных

Префикс

Пример

Boolean

bin

blnSuccess

Byte

byt

bytImage

Date

dtm

dtmFinish

Decimal

dec

decCost

Double

dbl

dblSum

Integer

int

intQuantity

Long

lng

IngTotal

Object

obj

obj Temp

Short

shr

shrAge

Single

sng

sngLength

String

str

strLastname

Применение префиксов в среде .NET не является обязательным и может быть рассмотрено, скорее, как дань традиции программирования на Visual Basic. Кроме того, знание префиксов может помочь при переносе существующего кода из Visual Basic на платформу .NET. В Visual Basic предусмотрен набор знаков, которые можно использовать для принудительного присвоения значению переменной другого типа данных, не совпадающего с типом, определяемым его формой. Для этого на конце значения переменной добавляется специальный знак. В табл. 2.3 приведены допустимые знаки с примерами их использования.

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

Знак

Тип данных

Пример

s

Short

I = 347S

i

Integer

J = 3471

L

Long

К = 347L

D

Decimal

X = 347D

F

Single

Y = 347F

R

Double

Z = 347R

US

UShort

L = 347US

UI

Ulnteger

M = 347UI

UL

ULong

N = 347UL

С

Char

Q = " . "C

Объявление переменной

В Visual Basic существует явное и неявное объявление переменной.

Явное объявление означает указание имени и типа переменной перед ее использованием.    ОНО    Осуществляется    операторами    Dim,    Private,    Static, Public, которые имеют следующий синтаксис:

Dim имяПеременной  [As  типДанных]    [=3начение]

Private имяПеременной  [As  типДанных]    [=3начение]

Static имяПеременной  [As  типДанных]    [=3начение]

Public имяПеременной  [As  типДанных]    {^Значение]

Переменная, объявленная при помощи оператора Dim, доступна из любого места программы в пределах области видимости, содержащей оператор Dim. Например, если она объявлена внутри модуля вне любой процедуры, то такая переменная доступна из любого места этого модуля. Если переменная объявлена внутри процедуры, то она доступна только в пределах этой процедуры. Такая переменная называется локальной. Чтобы определить доступность переменной более детально, применяются операторы Private и Public.

Использование оператора Public означает, что переменная имеет общий доступ, т. е. доступ без каких-либо ограничений. Public-переменная не может быть объявлена внутри процедуры.

Переменная, объявленная с ключевым словом Private, доступна только в пределах контекста, в котором объявлена, включая процедуры. Private-переменная может быть объявлена внутри модуля, класса или структуры, но не внутри процедуры.

Если переменная при объявлении указана как static, то она остается существовать в памяти и сохраняет свое последнее значение после завершения работы процедуры, в которой была объявлена, static-переменная не может быть объявлена вне процедуры.

С помощью одного оператора можно объявлять несколько переменных, разделяя их запятыми. Примеры объявления переменных приведены далее:

Private bSuccess As Boolean

Dim lastName, firstName As String, dblSum As Double

Часть [As типданных] объявления переменной является необязательной, однако если тип данных не указан, Visual Basic назначит переменной тип значения, которое присваивается ей при объявлении.-Если не указан тип данных и переменная не инициируется никаким начальным значением, Visual Basic назначит ей тип данных object. В случае, если не указан тип, но присвоение значения переменной происходит при ее объявлении, компилятор создаст переменную на основании типа выражения, используемого для инициализации переменной. Пример (после символа ' приведены комментарии к строке программы):

Dim a ' Переменная типа Object

Dim b As Integer   ' Переменная типа Integer

Dim с = "Test"     ' Переменная типа String

Предпочтительным является явное объявление переменных с указанием типа данных, поскольку это снижает вероятность возникновения ошибок написания или конфликта имен.

Область видимости переменных

При выполнении программы принципиальное значение имеет область видимости используемых переменных. Попытка использования переменных, которые не действуют в данном месте программы, приводит к синтаксической ошибке. В Visual Basic могут применяться глобальные и локальные переменные. Глобальные переменные доступны из любой части программы. Для локальных переменных можно задавать область видимости в рамках всего модуля, класса или отдельной процедуры. Присваивая имена переменным с учетом области ее действия, для удобства работы можно придерживаться формата, представленного в табл. 2.4.

Область видимости переменной

Префикс

Пример

Глобальная

g

gdtmFinish

Локальная внутри модуля

m

msngLength

Локальная внутри процедуры

нет префикса

strLastname

Для создания переменной, которую вы хотите определить в качестве глобальной, вначале главного модуля приложения поместите оператор Public. Например:

Public gdtmFinish As Date

Для объявления переменной, локальной внутри модуля или формы, используйте операторы Private или Dim. В этом случае объявленная переменная будет доступна для всех входящих в форму или модуль процедур, но в то же время окажется недоступной в процедурах других модулей и форм.

Переменные, локальные на уровне процедуры, создаются операторами Dim или static внутри процедуры. При наличии в одной области видимости нескольких переменных с одинаковым именем при вычислениях используется переменная, находящаяся на самом близком уровне вложенности. Например:

Module Modulel

Public  intA As  Integer

Sub Main()

Dim intA As  Integer

             intA =  5 '   Используется переменная из  Sub Main

End Sub

End Module

Присвоение значения переменной

Прежде чем использовать переменную в программе, ей нужно присвоить значение. Самый простой способ присвоения состоит в использовании оператора присвоения (=), который имеет следующий синтаксис:

переменная = выражение

Аргумент переменная задает имя переменной, которой будет присвоено значение выражения, стоящего справа от знака равенства. Например:

ir.gFirst = 10 strLastname = "Иванов"

Справа от знака равенства может стоять не только константа, но и более сложное выражение. Например:

sngResult = sngFirst + 255

strName = "Иванов" & ": " s strTeam

Нулевое значение переменной

Иногда при работе с переменной возникает ситуация, когда необходимо, чтобы у нее отсутствовало определенное значение. Например, при работе с полем базы данных оно может являться необязательным для заполнения и будет принимать либо определенное значение, либо значение будет отсутствовать.

Для работы с такими переменными используется структура Nullabie. Следующая строка позволяет определить переменную типа Boolean, которая может принимать нулевое значение:

Dim bHasChildren As Nullabie(Of Boolean)

Наиболее важными свойствами структуры Nullabie являются Hasvalue и value. Чтобы определить, содержит ли переменная определенное значение или нет, используется свойство Hasvalue. Если это свойство принимает значение True, то получить значение переменной можно с помощью свойства value. По умолчанию при объявлении переменной типа Nullabie свойство Hasvalue принимает значение False.

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

If bHasChildren.HasValue Then

MsgBox("Есть дети")

Else

MsgBox("Нет никакой информации о детях")

End If

Присвоение значения переменной типа Nullabie осуществляется стандартным образом. Если переменной необходимо присвоить неопределенное значение, следует воспользоваться константой Nothing:

bHasChildren = Nothing

Константы

Константой называют элемент выражения, значение которого не изменяется в процессе выполнения программ. Приведем несколько примеров:

7 5.07 числовая константа

2 . 7Е+6 числовая константа (равна 2 700 000)

"Ошибка  доступа  к базе  данных"       символьная константа

#8/12/2004# константа типа "дата"

False логическая константа

Объявление констант

Объявление констант во многом аналогично объявлению переменных. Константы можно объявлять на уровне модуля или процедуры. Область их действия при этом определяется теми же правилами, что и для переменных.

Для объявления константы на уровне процедуры используется оператор const, имеющий следующий синтаксис:

Const имяКонстанты  [As  типДанных]   = выражение Например:

Const  strDBErrorMessage As  String =  "Ошибка доступа к базе данных"

При объявлении константы на уровне модуля дополнительно можно указать область ее действия. В этом случае оператор const имеет следующий синтаксис:

[Public | Private] Const имяКонстанты  [As типДанных]   = выражение

В приведенном далее примере константа strDBErrorMessage объявлена глобальной:

Public Const strDBErrorMessage As String = "Ошибка доступа к базе данных"




1. а; полезность основа стти недв; пригодностьизнос; огранич харр предлия кот способ.html
2. Курсовая работа- Полномочия органов местного самоуправления.html
3. Тема 5 Ответственность за нарушение законодательства о коммерческой тайне 5
4. Цикличность 2
5. Тема А 1 Осуществление гражданских прав
6. Обозначим через граф процессов
7. Лабораторная работа 1 по дисциплине Моделирование Принципы построения имитационных моделей
8. цель работы разработка методических рекомендаций по оценке инвестиционных проектов в условиях переходной
9. тематического моделирования и информационной безопасности Согласовано Пр
10. тема страны состоит из федеральных судов и судов штатов