Полное руководство. С# 4.0 - Шилдт Герберт Страница 14

Тут можно читать бесплатно Полное руководство. С# 4.0 - Шилдт Герберт. Жанр: Компьютеры и Интернет / Программирование. Так же Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте «WorldBooks (МирКниг)» или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Полное руководство. С# 4.0 - Шилдт Герберт

Полное руководство. С# 4.0 - Шилдт Герберт краткое содержание

Прочтите описание перед тем, как прочитать онлайн книгу «Полное руководство. С# 4.0 - Шилдт Герберт» бесплатно полную версию:

Полное руководство. С# 4.0 - Шилдт Герберт читать онлайн бесплатно

Полное руководство. С# 4.0 - Шилдт Герберт - читать книгу онлайн бесплатно, автор Шилдт Герберт

Вот как теперь выглядит результат выполнения этой программы.Цена со скидкой: 16,96 грн.Литералы

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

В С# литералы могут быть любого простого типа. Представление каждого литералазависит от конкретного типа. Как пояснялось ранее, символьные литералы заключаются в одинарные кавычки. Например, 'а' и '%' являются символьными литералами.Целочисленные литералы указываются в виде чисел без дробной части. Например,10 и -100 — это целочисленные литералы. Для обозначения литералов с плавающейточкой требуется указывать десятичную точку и дробную часть числа. Например,11.123 — это литерал с плавающей точкой. Для вещественных чисел с плавающейточкой в C# допускается также использовать экспоненциальное представление.У литералов должен быть также конкретный тип, поскольку C# является строго типизированным языком. В этой связи возникает естественный вопрос: к какому типуследует отнести числовой литерал, например 2,123987 или 0.23? К счастью, для ответа на этот вопрос в C# установлен ряд простых для соблюдения правил.Во-первых, у целочисленных литералов должен быть самый мелкий целочисленный тип, которым они могут быть представлены, начиная с типа int. Таким образом,у целочисленных литералов может быть один из следующих типов: int, uint, longили ulong в зависимости от значения литерала. И во-вторых, литералы с плавающейточкой относятся к типу double.

Если вас не устраивает используемый по умолчанию тип литерала, вы можете явноуказать другой его тип с помощью суффикса. Так, для указания типа long к литералуприсоединяется суффикс l или L. Например, 12 — это литерал типа int, a 12L — литерал типа long. Для указания целочисленного типа без знака к литералу присоединяется суффикс u или U. Следовательно, 100 — это литерал типа int, a 100U — литералтипа uint. А для указания длинного целочисленного типа без знака к литералу присоединяется суффикс ul или UL. Например, 984375UL — это литерал типа ulong.Кроме того, для указания типа float к литералу присоединяется суффикс F или f.Например, 10.19F — это литерал типа float. Можете даже указать тип double, присоединив к литералу суффикс d или D, хотя это излишне. Ведь, как упоминалось выше,по умолчанию литералы с плавающей точкой относятся к типу double.

И наконец, для указания типа decimal к литералу присоединяется суффикс m илиМ. Например, 9.95М — это десятичный литерал типа decimal.

Несмотря на то что целочисленные литералы образуют по умолчанию значениятипа int, uint, long или ulong, их можно присваивать переменным типа byte,sbyte, short или ushort, при условии, что присваиваемое значение может бытьпредставлено целевым типом.Шестнадцатеричные литералы

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

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

Таблица 3.2. Управляющие последовательности символовУправляющая последовательностьОписание\aЗвуковой сигнал (звонок)\bВозврат на одну позицию\fПеревод страницы (переход на новую страницу)\nНовая строка (перевод строки)\rВозврат каретки\tГоризонтальная табуляция\vВертикальная табуляция\0Пустой символ\'Одинарная кавычка\"Двойная кавычка\Обратная косая черта

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

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

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

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

Помимо обычных символов, строковый литерал может содержать одну или несколько управляющих последовательностей символов, о которых речь шла выше. Рассмотрим для примера программу, в которой используются управляющие последовательности \n и \t.// Продемонстрировать применение управляющих// последовательностей символов в строковых литералах.using System;class StrDemo { static void Main() { Console.WriteLine("Первая строка\nВторая строка\nТретья строка"); Console.WriteLine("Один\tДва\tТри"); Console.WriteLine("Четыре\tПять\tШесть"); // Вставить кавычки. Console.WriteLine("\"3ачем?\", спросил он."); }}

Результат выполнения этой программы приведен ниже.Первая строкаВторая строкаТретья строкаОдин Два ТриЧетыре Пять Шесть"Зачем?", спросил он.

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

Помимо описанной выше формы строкового литерала, можно также указать буквальный строковый литерал. Такой литерал начинается с символа @, после которогоследует строка в кавычках. Содержимое строки в кавычках воспринимается без изменений и может быть расширено до двух и более строк. Это означает, что в буквальныйстроковый литерал можно включить символы новой строки, табуляции и прочие, неприбегая к управляющим последовательностям. Единственное исключение составляют двойные кавычки ("), для указания которых необходимо использовать две двойные кавычки подряд (""). В приведенном ниже примере программы демонстрируетсяприменение буквальных строковых литералов.// Продемонстрировать применение буквальных строковых литералов.using System;class Verbatim { static void Main() { Console.WriteLine(@"Это буквальный строковый литерал, занимающий несколько строк. "); Console.WriteLine(@"А это вывод с табуляцией: 1 2 3 4 5 6 7 8 "); Console.WriteLine(@"Отзыв программиста: ""Мне нравится С#."""); }}

Результат выполнения этой программы приведен ниже.Это буквальныйстроковый литерал,занимающий несколько строк.А это вывод с табуляцией:1 2 3 45 6 7 8Отзыв программиста: "Мне нравится С#."

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

Перейти на страницу:
Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.
Комментарии / Отзывы
    Ничего не найдено.