Операция явного преобразования типа
(Тип приемника) операнд
преобразование к типу приемника
int a;
double b;
a=(int)3.5; //a=3
b=(int)3.5+5.5; //b=3+5.5=8.5
Операция явного преобразования типа
bool a, b, c;
a= 10>5; // true
b= ’B’>’A’; // true
c= 65==’A’; // true
Логические операции
bool a;
a= !(10>5 && 3==8); //true
Операции сдвига
Для знаковых типов – арифметический сдвиг, для беззнаковых – логический.
ushort a=0x8005, b;
b=(ushort)(a>>1);
01000 0000 0000 010 1
short a=-0x1005, b;
b=(short)(a>>1);
11110 1111 1111 110 1
пишем знак числа на освободившееся место
Битовые операции
byte a=0x1F, b=0x3A, d;
d=(byte)(~(a^b));
Операции выполняются поразрядно:
0001 1111
0011 1010
0010 0101 a^b
1101 1010 ~(a^b)
Тернарная операция
Предназначена для реализации простейшего варианта ветвления.
Операнд1? Операнд2:Операнд3
Выполнение операции иллюстрируется приведенной ниже схемой, а применение операции для вычисления минимального из трех целых чисел – фрагментом программы.
:
int a, b, c, min;
…
a=10; b=5; c=8;
min = a;
min = b < min ? b :mn;
min = c < min ? c :mn;
ОПЕРАТОРЫ УПРАВЛЕНИЯ
В языке С# реализован полный набор управляющих конструкций структурного программирования: следование, ветвление, цикл. Кроме того, имеются дополнительные операторы управления.
Следование
Операторы по умолчанию выполняются последовательно в порядке записи. Операторы, заключенные в фигурные скобки {} образуют блок операторов. Блок операторов рассматривается транслятором как один составной оператор.
{оператор … оператор} блок операторов
В качестве оператора могут быть:
· объявление
· выражение, заканчивающееся символом точи с запятой
· управление
· блок операторов
Поскольку блок операторов может содержать объявление переменных, то возникает проблема области видимости локальной переменной. Проблема решается следующим образом: переменная, объявленная в блоке, видна в этом блоке и во вложенных блоках, но не видна в охватывающем блоке.
Ветвление
Дата добавления: 2019-02-08; просмотров: 608;