Суффикс Значение

Длинное целое (long)

Беззнаковое целое (unsigned)

Вещественное с одинарной точностью (float)

Вещественное с двойной точностью (double)

Финансовое десятичного типа (decimal)

Допустимые диапазоны значений целых и вещественных констант в зависимо­сти от префикса мы рассмотрим немного позже в этой главе. Символьная константа представляет собой любой символ в кодировке Unicode. Символьные константы записываются в одной из четырех форм, представлен­ных в табл. 2.2:

□ «обычный» символ, имеющий графическое представление (кроме апострофа
и символа перевода строки), — 'А', 'ю', '*';

□ управляющая последовательность — '\0', '\n';

□ символ в виде шестнадцатеричного кода — ' \xF', ' \х74';

символ в виде escape-последовательности Unicode — '\uA81B'.

Управляющей последовательностью, или простой escape-последовательностью, называют определенный символ, предваряемый обратной косой чертой. Управ­ляющая последовательность интерпретируется как одиночный символ и исполь­зуется для представления:

□ кодов, не имеющих графического изображения (например, \п — переход в на­
чало следующей строки);

□ символов, имеющих специальное значение в строковых и символьных лите­
ралах, например, апострофа '.

В табл. 2.4 приведены допустимые значения последовательностей. Если непосред­ственно за обратной косой чертой следует символ, не предусмотренный таблицей, возникает ошибка компиляции.

Таблица 2.4. Управляющие последовательности в С#

Вид Наименование
Звуковой сигнал
\b Возврат на шаг
\f Перевод страницы (формата)
\n Перевод строки
Возврат каретки
\t Горизонтальная табуляция
\v Вертикальная табуляция
\\ Обратная косая черта
\' Апостроф
\" Кавычка
\0 Нуль-символ

Символ, представленный в виде шестнадцатеричного кода, начинается с пре­фикса \0х, за которым следует код символа. Числовое значение должно нахо­диться в диапазоне от 0 до 216 - 1, иначе возникает ошибка компиляции.

Escape-последовательности Unicode служат для представления символа в ко­дировке Unicode с помощью его кода в шестнадцатеричном виде с префиксом \и или \U, например, \u00F2, \U00010011. Коды в диапазоне от \U10000 до \U10FFFF представляются в виде двух последовательных символов; коды, превышающие \U10FFFF, не поддерживаются.

Управляющие последовательности обоих видов могут использоваться и в стро­ковых константах, называемых иначе строковыми литералами. Например, если требуется вывести несколько строк, можно объединить их в один литерал, отде­лив одну строку от другой символами \n:

"Никто не доволен своей \nвнешностью, но каждый доволен \nсвоим умом"

Этот литерал при выводе будет выглядеть так:

Никто не доволен своей

внешностью, но каждый доволен

своим умом

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

Как видите, строковые литералы с управляющими символами несколько теряют в читабельности, поэтому в С# введен второй вид литералов — дословные лите­ралы (verbatim strings). Эти литералы предваряются символом @, который отклю­чает обработку управляющих последовательностей и позволяет получать строки в том виде, в котором они записаны. Например, два приведенных выше литерала в дословном виде выглядят так:

@"Никто не доволен своей

внешностью, но каждый доволен

своим умом"

@"Издательский дом "Питер""

Чаще всего дословные литералы применяются в регулярных выражениях и при задании полного пути файла, поскольку в нем присутствуют символы обратной косой черты, которые в обычном литерале пришлось бы представлять с помо­щью управляющей последовательности. Сравните два варианта записи одного и того же пути:

"C:\\app\\bin\\debug\\a.exe" @"С:\app\bin\debug\a.ехе"

Строка может быть пустой (записывается парой смежных двойных кавычек ""), пустая символьная константа недопустима.

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


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



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