Выбрать главу

Шестнадцатеричные литералы

Вам, вероятно, известно, что в программировании иногда оказывается проще пользоваться системой счисления по основанию 16, чем по основанию 10. Система счисления по основанию 16 называется шестнадцатеричной. В ней используются числа от 0 до 9, а также буквы от А до F, которыми обозначаются десятичные числа 10,11,12,13, 14 и 15. Например, десятичному числу 16 соответствует шестнадцатеричное число 10. Вследствие того что шестнадцатеричные числа применяются в программировании довольно часто, в C# разрешается указывать целочисленные литералы в шестнадцатеричном формате. Шестнадцатеричные литералы должны начинаться с символов Ох, т.е. нуля и последующей латинской буквы "икс". Ниже приведены некоторые примеры шестнадцатеричных литералов.

count = OxFF; // 255 в десятичной системе incr = 0x1а;    //    26 в десятичной системе

Управляющие последовательности символов

Большинство печатаемых символов достаточно заключить в одинарные кавычки, но набор в текстовом редакторе некоторых символов, например возврата каретки, вызывает особые трудности. Кроме того, ряд других символов, в том числе одинарные и двойные кавычки, имеют специальное назначение в С#, поэтому их нельзя использовать непосредственно. По этим причинам в C# предусмотрены специальные управляющие последовательности символов, иногда еще называемые константами с обратной косой чертой (табл. 3.2). Такие последовательности применяются вместо тех символов, которых они представляют.'

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

Управляющая последовательность

Описание

\a

Звуковой сигнал (звонок)

\b

Возврат на одну позицию

\f

Перевод страницы (переход на новую страницу)

\n

Новая строка (перевод строки)

\r

Возврат каретки

\t

Горизонтальная табуляция

\v

Вертикальная табуляция

\0

Пустой символ

V

Одинарная кавычка

\"

Двойная кавычка

w

Обратная косая черта

Например, в следующей строке кода переменной ch присваивается символ табуляции.

ch = 1\t1;

А в приведенном ниже примере кода переменной ch присваивается символ одинарной кавычки.

ch = 1 \ ' ';

Строковые литералы

В C# поддерживается еще один тип литералов — строковый. Строковый литерал представляет собой набор символов, заключенных в двойные кавычки. Например следующий фрагмент кода:

"это тест"

представляет собой текстовую строку. Образцы подобных строк не раз встречались в приведенных выше примерах программ.

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

// Продемонстрировать применение управляющих // последовательностей символов в строковых литералах.

.using System;

class StrDemo {

static void Main() {

Console.WriteLine("Первая строка\пВторая строка\пТретья строка");

Console.WriteLine("OflHH\tflBa\tTpn");

Console.WriteLine("Четыре^Пять\Шесть" ) ;

// Вставить кавычки.

Console.WriteLine("\"3ачем?\", спросил он.");

}

}

Результат выполнения этой программы приведен ниже.

Первая строка Вторая строка Третья строка Один    Два    Три

Четыре Пять    Шесть

"Зачем?", спросил он.

В приведенном выше примере программы обратите внимание на то, что для перехода на новую строку используется управляющая последовательность \п. Для вывода нескольких строк совсем не обязательно вызывать метод WriteLine () несколько раз — достаточно вставить управляющую последовательность \п в тех местах удлиненной текстовой строки (или строкового литерала), где должен происходить переход на новую строку. Обратите также внимание на то, как в текстовой строке формируется знак кавычек.

Помимо описанной выше формы строкового литерала, можно также указать буквальный строковый литерал. Такой литерал начинается с символа @, после которого следует строка в кавычках. Содержимое строки в кавычках воспринимается без изменений и может быть расширено до двух и более строк. Это означает, что в буквальный строковый литерал можно включить символы новой строки, табуляции и прочие, не прибегая к управляющим последовательностям. Единственное исключение составляют двойные кавычки ("), для указания которых необходимо использовать две двойные кавычки подряд (" "). В приведенном ниже примере программы демонстрируется применение буквальных строковых литералов.