Базовые типы данных и операции над ними, страница 6

2.  Пустая строка обозначается парой кавычек без каких-либо символов между ними. Такая строка называется еще Null-строкой, или строкой нулевой длины.

3.  Строковая константа должна целиком помещаться в пределах одной строки текста программы – она не может содержать символов перевода строки или символов продолжения строки. Например, следующие константы являются не допустимыми:

"Эта константа в этом месте

содержит символ перевода строки"

"Эта константа содержит символ _

продолжения строки"

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

MsgBox "Это правильная ""строковая"" константа".

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

1.  цифры от 0 до 9,

2.  знаки «+» и «-» – для указания знака числа,

3.  десятичная точка «.» – для разделения целой и дробной части числа,

4.  латинские символы «e» или «E» – при использовании экспоненциальной (научной) формы записи чисел.

Например:

5     ' Константа целого типа Integer со значением 5

-5    ' Константа целого типа Integer со значением –5

5.1   ' Константа типа Double со значением 5.1

При записи положительных констант со знаком «+» редактор Visual Basic его автоматически убирает. Константы, которые при записи имеют нуль после десятичной точки, являются константами типа Double, например, 5.0, в отличие от константы 5, которая является константой типа Integer. Константы типа Double с нулем после десятичной точки редактором Visual Basic преобразовываются к представлению, которое заканчивается символом «#». Например, 5.0 будет преобразовано в 5#. Символом «#» является одним из символов определения типа и обозначает, соответственно, тип Double.

Если при записи числовой константы дробная часть не была указана, то по умолчанию она получает тип Integer, если же указана – тип Double. Для явного указания типа константы можно использовать символы определения типа, которые имеют те же значения, что и при неявном объявлении переменных. Символ определения типа записывается в конце константы, например:

5!     ' Константа типа Single

5@     ' Константа типа Currency

5&     ' Константа типа Long

5#     ' Константа типа Double

При указании символов определения типа в константах, которые по умолчанию и так имеют соответствующий тип, например 5% или 5.1#, для констант типа Integer и Double, соответственно, редактор Visual Basic уберет их как лишние, хотя они формально и не нарушают никаких правил синтаксиса языка.

При выводе на дисплей очень больших или, наоборот, очень маленьких числовых величин, а также при их записи в тексте программы в виде констант, используется компактная форма представления – так называемая экспоненциальная (или научная) форма записи. Она была введена потому, что при записи исходных текстов программ используется минимальное число элементов форматирования – для упрощения трансляторов, переводящих исходные тексты программ в машинные команды. Поэтому, в связи с тем, что при записи текстов программ верхние индексы для показателей степени чисел запрещены, используется экспоненциальная форма. Например, запись в экспоненциальной форме 2E+2 означает 2Í102 в обычной форме записи, т.е. число до буквы «E» умножается на 10 в степени, указанной после буквы «E».

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

1.  перед десятичной точкой всегда располагается только одна цифра,

2.  маленькая буква «e» заменяется на большую «E», и

3.  всегда выводится знак показателя степени – даже если при записи числа он не был указан.

Показатель степени после буквы «E» фактически означает сдвиг числа относительно десятичной точки. При этом, если он положительный, то число сдвигается влево, т.е. увеличивается, а если отрицательный – вправо и, соответственно, уменьшается. Вот несколько примеров записи чисел в экспоненциальной и, соответствующей ей, традиционной форме:

-12.34E+2

-1234

-12.34E-2

-0.1234

1.2E+10

12000000000

1.2E-10

0.00000000012

1.5E1

15

1.5E0

1.5

При записи констант в экспоненциальной форме можно использовать также символы определения типа, например, 1.2E+20! – константа типа Single. В некоторых случаях при записи констант в экспоненциальной форме редактор Visual Basic для упрощения восприятия отображает их в традиционной, нормальной форме.

VBA распознает несколько форматов констант типа Date. Все они обязательно заключаются в символы «#». Вот несколько примеров правильных констант типа Date:

#1 may 2002 10:00#

#5/1/2002 10:00#

#May 1, 2002 10:00#

#05-01-2002#

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

#5/1/2002 10:00:00 AM#

#5/1/2002#

Особенностью констант типа Date в языке программирования Visual Basic является то, что правильно воспринимается только английская нотация, т.е.:

1.  в числовой форме записи сначала идет месяц, а затем – день,

2.  в словесной – названия месяцев только по-английски.

Наиболее распространенной ошибкой при записи констант типа Date является то, что вместо символов «#» они заключаются в двойные кавычки «"», например, "1 may 2002". Хотя формально такая запись является константой типа String, в большинстве контекстов она правильно преобразуется в значение типа Date.

Логических констант только две – True и False. Они являются ключевыми словами языка программирования Visual Basic, и в текстах программ записываются так, как приведено здесь.