Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Операции и выражения




ЗАМЕЧАНИЕ

Именованные константы

ВНИМАНИЕ

Переменные создаются при входе в их область действия (блок) и уничтожаются при выходе. Это означает, что после выхода из блока значение переменной не сохра­няется. При повторном входе в этот же блок переменная создается заново.

Можно запретить изменять значение переменной, задав при ее описании ключевое слово const, например:

 

const int b=1;

const float x=0.1, у=0.1f; // const распространяется на обе переменные

 

Такие величины называют именованными константами, или просто констан­тами. Они применяются для того, чтобы вместо значений констант можно было использовать в программе их имена. Это делает программу более понятной и об­легчает внесение в нее изменений, поскольку изменить значение достаточно только в одном месте программы.

Улучшение читабельности происходит только при осмысленном выборе имен кон­стант. В хорошо написанной программе вообще не должно встречаться иных чисел, кроме 0 и 1, все остальные числа должны задаваться именованными константами с именами, отражающими их назначение.

Именованные константы должны обязательно инициализироваться при описа­нии. При инициализации можно использовать не только константу, но и выра­жение — главное, чтобы оно было вычисляемым на этапе компиляции, например:

 

const int b=1; а=100;

const int x=b*a+25;

Выражение — это правило вычисления значения. В выражении участвуют операнды, объединенные знаками операций. Операндами простейшего выражения могут быть константы, переменные и вызовы функций.

Например, а+2 — это выражение, в котором + является знаком операции, а а и 2 — операндами. Пробелы внутри знака операции, состоящей из нескольких сим­волов, не допускаются. По количеству участвующих в одной операции опе­рандов операции делятся на унарные, бинарные и тернарную. Операции С# при­ведены в табл. 3.11. В этой таблице символ х призван показать расположение операнда, и не является частью знака операции.

Таблица 3.1. Операции С#

Категория Знак операции Название Описание
Первичные . Доступ к элементу С. 105
х() Вызов метода или делегата С, 108, 221
х[] Доступ к элементу С. 127
x++ Постфиксный инкремент С. 47
x-- Постфиксный декремент С. 47
new Выделение памяти С. 48
typeof Получение типа С. 280
checked Проверяемый код С. 46
unchecked Непроверяемый код С. 46
Унарные + Унарный плюс  
- Унарный минус (арифметическое отрицание) С, 48
! Логическое отрицание С, 48
~ Поразрядное отрицание С. 48
++x Префиксный инкремент С, 47
--x Префиксный декремент С. 47
(тип)х Преобразование типа С. 49
Мультипликативные (типа умножения) * Умножение С. 50
/ Деление С, 50
% Остаток от деления С. 50
Аддитивные (типа сложения) + Сложение С.
- Вычитание С. 53
Сдвига и проверки типа << Сдвиг влево С. 54
>> Сдвиг вправо С. 54
< Меньше С. 54
> Больше С, 54
<= Меньше или равно С. 54
>= Больше или равно С. 54
is Проверка принадлежности типу С, 194
as Приведение типа С, 194
Проверки на равенство = = Равно С. 54
! = Не равно С. 54
Поразрядные логические & Поразрядная конъюнкция (И) С. 55
^ Поразрядное исключающее ИЛИ С. 55
| Поразрядная дизъюнкция (ИЛИ) С. 55
Условные логические && Логическое И С. 56
|| Логическое ИЛИ С. 56
Условная ?: Условная операция С, 56
Присваивания = Присваивание С. 56
*= Умножение с присваиванием  
/= Деление с присваиванием  
%= Остаток отделения с присваиванием  
+= Сложение с присваиванием  
-= Вычитание с присваиванием  
<<= Сдвиг влево с присваиванием  
>>= Сдвиг вправо с присваиванием  
&= Поразрядное И с присваиванием  
^= Поразрядное исключающее ИЛИ с присваиванием  
|= Поразрядное ИЛИ с присваиванием  

Операции в выражении выполняются в определенном порядке в соответствии с приоритетами, как и в математике. В табл. 3.1 операции расположены по убы­ванию приоритетов, уровни приоритетов разделены в таблице горизонтальными линиями.

Результат вычисления выражения характеризуется значением и типом. Например, пусть а и b — переменные целого типа и описаны так:

 

int а=2, b=5;

 

Тогда выражение а+b имеет значение 7 и тип int, а выражение а=b имеет значе­ние, равное помещенному в переменную b (в данному случае — 5), и тип, совпа­дающий с типом этой переменной.

Если в одном выражении соседствуют несколько операций одинакового при­оритета, операции присваивания и условная операция выполняются справа налево, остальные — слева направо. Для изменения порядка выполнения опе­раций используются круглые скобки, уровень их вложенности практически не ограничен.

Например, а+b+с означает (а+b)+с, а а=b=с означает а=(b=c). То есть сначала вычисляется выражение b = с, а затем его результат становится правым операндом для операции присваивания переменной а.




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 323; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.