числовой тип.

Целочисленные типы различаются между собой диапазоном значений. Тем

не менее тип int имеет некоторое идеологическое преимущество, которое

зиждется в первую очередь на правилах автоматического преобразования

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

ритет остается за типом double: во-первых, диапазон допустимых значений

у этого типа шире, а во-вторых, по умолчанию числа с плавающей точкой

интерпретируются как double-значения.

ПРИМЕЧАНИЕ Есть еще тип decimal, под который отводится аж 128 бит. В известном

смысле это экзотика. Тип предназначен для выполнения расчетов, в которых критичны ошибки округления. Обычно это финансовые

расчеты.

Данные типа char — это буквы (или управляющие символы). Другими

словами, значением переменной типа char может быть буква. В отличие от

текста (объект класса string), который заключается в двойные кавычки, отдельный символ заключается в одинарные кавычки.

Если отдельный символ заключить в двойные кавычки, это уже будет

текст, состоящий из одного символа. Например, 'A' — это символьное

значение (тип char), а «A» — текстовое значение (тип string).

Кроме непосредственно букв, есть еще управляющие символы (или

последовательности  символов).  С  двумя  мы  уже  знакомы:  это  ин-

струкция  перехода  к  новой  строке  \n  и  табуляция  \t.  Каждая  из

этих  инструкций  считается  одним  символом  —  во  всяком  случае, соответствующее значение можно записать в переменную типа char.

Есть и другие интересные инструкции. Например, инструкция \a по-

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

гие используются для выделения литералов (значений символьного

и текстового типов соответственно), то кавычки как символ вводятся

с помощью косой черты: \' для одинарной и \" для двойной. Инструк-

ция  \\  позволяет  определить  символ  косой  черты.  Очень  полезна

инструкция \b, с помощью которой курсор вывода переводится на

одну позицию назад.

Базовые типы данных и основные операторы            101

Переменные логического типа (тип bool) могут принимать всего два зна-

чения: true (истина) и false (ложь). Обычно значения логического типа

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

Специфика логического типа в C# такова, что там, где должно быть

логическое значение, следует указывать именно логическое значение.

У новичков в программировании, скорее всего, желание поместить

в условном операторе нечто неположенное вряд ли появится. А вот

те,  кто  знаком  с  языком  программирования  C++,  могут  поддаться

соблазну. Ведь в С++ в качестве логического значения можно ис-

пользовать числа. В C# такой номер не пройдет.

Что касается основных операторов языка C#, то их традиционно делят на

четыре группы:

 арифметические операторы, используемые в основном для выполнения

операций с числовыми данными;

 операторы сравнения, которые позволяют сравнивать значения пере-

менных;

 логические операторы, предназначенные, как ни странно, для выполне-

ния логических операций;

 побитовые, или поразрядные, операторы — группа операторов, которые

позволяют выполнять преобразования на уровне побитового представ-

ления чисел.

Кроме этого, имеются такие уникальные и достаточно специфические опе-

раторы, как оператор присваивания и тернарный оператор (такая себе ком-

пактная версия условного оператора). Причем если без тернарного опера-

тора еще как-то можно обойтись, то без оператора присваивания процесс

программирования просто теряет свой сакраментальный смысл.

Арифметические операторы представлены в табл. 3.2.

Таблица 3.2.  Арифметические операторы C#

Оператор

Описание

+

Сложение: бинарный оператор. В результате вычисления выражения вида

A+B в качестве результата возвращается сумма значений числовых пере-

менных A и B. Если переменные текстовые, результатом является строка, полученная объединением текстовых значений переменных

­

Вычитание: бинарный оператор. В результате вычисления выражения вида

A-B в качестве результата возвращается разность значений числовых пере-

менных A и B. Оператор может также использоваться как унарный (перед

переменной, например -A) для противоположного (умноженного на -1) числа, по отношению к тому, что записано в переменную

продолжение

102

Глава 3. Основы синтаксиса языка C#

Таблица 3.2 (продолжение)

Оператор

Описание

*

Умножение: бинарный оператор. В результате вычисления выражения вида

A*B в качестве результата возвращается произведение значений числовых

переменных A и B

/

Деление: бинарный оператор. В результате вычисления выражения вида

A/B в качестве результата возвращается частное значений числовых пере-

менных A и B. Если операнды (переменные A и B) целочисленные, деление

выполняется нацело. Для вычисления результата на множестве действи-

тельных чисел (при целочисленных операндах) можно использовать коман-

ду вида (double)A/B

%

Перейти на страницу:

Похожие книги