- •1).Net Framework: общая характеристика, основные компоненты.
- •2).Net Framework: виртуальная машина и управляемый код
- •3) Алфавит языка c#. Лексемы: идентификаторы, ключевые слова, неименованные компоненты.
- •4) Типы данных языка с#: концепция, основные типы.
- •5) Переменные: правила описания, инициализация.
- •Область видимости переменных
- •6) Операции языка c#. Правила вычисления выражений.
- •1) Операция присваивания
- •2) Арифметические операции
- •3) Поразрядные операции
- •4) Операции отношения:
- •5) Логические операции:
- •6) Операция «приведение к типу»:
- •7) Строковые преобразования. Класс Convert:
- •8) Понятие исключения:
- •7) Операторы языка c#. Составной оператор. Блок. Метки
- •1) Оператор присваивания:
- •2) Вызов метода:
- •3) Блок или составной оператор:
- •4) Операторы ветвления:
- •5) Операторы цикла:
- •5.1. Оператор for:
- •5.2. Оператор while:
- •5.3. Оператор foreach:
- •6) Операторы перехода:
- •6.1. Оператор goto:
- •6.2. Операторы break и continue:
- •6.3. Оператор return:
- •9) Операторы цикла.
- •5.1. Оператор for:
- •5.2. Оператор while:
- •5.3. Оператор foreach:
- •10) Операторы передачи управления.
- •11) Логические и поразрядные операции языка с#.
- •12) Классы. Основные понятия, спецификаторы доступа.
6) Операции языка c#. Правила вычисления выражений.
1) Операция присваивания
Операция, обозначаемая знаком =, называется операцией присваивания. Данная операция является бинарной, имеет два операнда. Например, X=Y. Операнд слева от знака может быть только переменной, объектом. Операнд справа может быть выражением, т.е. записью в которой используются знаки других операций. Как правило, операция = является главной операцией, образующей оператор присваивания.
Имеется интересная особенность этой операции. Она допускает цепочку присваиваний. Например, X=Y=Z=10;
2) Арифметические операции
Различают 5 операций, выполняющих арифметические действия над числами.
Выполнение первых трёх операций очевидно и не требует пояснения. А вот операция деления зависит от типа данных. Если тип данных, участвующих в операции, вещественный, то результат получится по правилам деления с целой и дробной частью. Если тип целый, то результатом деления также является целое число.
Деление по модулю возможно только для целых чисел. Оно обеспечивает получение остатка от деления двух целых чисел. Например, в результате операции 15 % 4 получится число 3. Таким образом, пара операций / и % обеспечивает для целых чисел специфическую возможность: можно получить и целую часть, и остаток от деления.
Арифметические операции можно объединять вместе с операцией присваивания, записывая две операции в виде одной. Это так называемая сокращённая форма записи.
Например: обычная запись: a = a + Stoim; сокращённая форма: a+=Stoim;
К арифметическим операциям относятся две специфические операции – инкремент и декремент. Эти операции позволяют изменять значения переменных на 1. Инкремент – увеличивает, обозначается знаком ++. Декремент – уменьшает, обозначается знаком --. По сути дела, эти операции являются сокращённой формой записи для выражений типа i = i +1 и i = i – 1. Например, вместо a = a + 1; можно записать: a++; (постфиксный вариант) или ++a; (префиксный вариант). Аналогично: --Prim; Prim--;
Между двумя последними формами нет никакой разницы, если эти операции являются единственными в записи выражения, т.е. используются самостоятельно. Если же речь идёт об использовании в сложном выражении, то приходится учитывать, когда на самом деле выполняются эти операции. Суть в том, что при постфиксном варианте записи значение переменной сначала используется, а потом изменяется на 1. При префиксном, наоборот, сначала изменяется, а потом используется.
Например: t = 5; // t = 5 n = 4 * t++; // n = 20, t = 6 k = ++n / 3; // n = 21, k = 7 b = --k / t; // k = 6, b = 1
3) Поразрядные операции
В C# имеются операции, пригодные для обработки отдельных разрядов памяти (например, в видеопамяти графического дисплея). Такие операции называются поразрядными (операции с битами). Они позволяют изменять, считывать и сдвигать разряды в переменных. При этом переменная рассматривается не как число, а как комбинация двоичных разрядов, т.е. как логический код. Операция выполняется отдельно над каждым разрядом. Перечень поразрядных операций приведён в следующей таблице.
Существует краткая форма поразрядных операций присваивания. Например:
x &= y вместо x = x & y
Поразрядные операции можно использовать только с целочисленными типами данных, к вещественным числам их применять нельзя!!!
Пример 1: int k = 26; k & 15 // 10 k | 15 // 31 k ^ 15; // 21 k << 2 // 104 k >> 2 // 6
Пример 2: Выделить пятый бит в байте B, а остальные обнулить. В = (B & 4);