- •Алфавит языка Идентификаторы Ключевые слова
- •Типы данных
- •Переменные, константы
- •Переменные
- •Типы переменных
- •Объявление переменных
- •Инициализация переменных
- •Константы
- •Неименованные константы
- •Именованные константы
- •Выражения и операции
- •Арифметические операции
- •Операция присваивания
- •Операции сравнения (отношения)
- •Логические операции
- •Побитовые (поразрядные) операции
- •Операции инкремента и декремента
- •Условная операция (?)
- •Операция запятая
- •Операция sizeof
- •Приоритеты операций
- •Приведение (преобразование) типа
Именованные константы
В языке С++ могут быть определены и так называемые именованные константы. Значение, находящееся в именованной константе, заносится в неё только однажды, во время объявления, и не может быть изменено в ходе выполнения программы. Именованные константы используются в тех случаях, когда программе запрещено изменять значение какой-либо переменной.
Объявляются именованные константы, как и переменные, только перед типом следует указать ключевое слово const. В объявлении можно указать несколько констант, разделив их запятыми:
const int MAX = 10, MIN = 0;
const double PI = 3.14159;
const E = 2.718282;
В последнем объявлении тип константы явно не указан и по умолчанию ей приписывается тип double.
В качестве имен констант используются идентификаторы, не совпадающие с ключевыми словами и именами переменных. Принято выбирать для имен констант идентификаторы, состоящие из заглавных букв латинского алфавита и символа подчеркивания. Использование именованных констант позволяет сделать программу более наглядной.
Возможность вводить именованные константы обеспечивает и препроцессорная директива #define. Например:
#define PI 3.14159
Внешнее отличие заключается в отсутствии явного определения типа и точки с запятой в конце директивы. Более глубокие отличия связаны со спецификой работы компилятора.
Выражения и операции
Выражение в программировании служит для определения действий, которые в математике обычно описываются формулами.
Выражение – это последовательность операндов, знаков операций и круглых скобок, которая задаёт вычислительный процесс получения результата определённого типа.
Операндами выражения могут быть переменные, константы, вызовы функций и выражения, к которым применяются операции. Можно считать, что при выполнении программы результат вычисления выражения заменяет само выражение. Например, выражение 10 - (x + y) заменится значением 7, если x равно 1, а y равно 2.
Вызов функции представляет собой указание имени вызываемой функции, за которым в круглых скобках указывается список аргументов (возможно пустой):
a * sin(x + k) + exp(y).
Знаки операций – это один или более символов, определяющих действие над операндами. Операции могут проводиться с одним, двумя и тремя операндами. Соответственно различают унарные, бинарные и тернарные операции. Операции, используемые в выражениях языка С++, можно разделить на следующие основные группы:
арифметические операции;
операция присваивания;
операции сравнения (отношения);
логические операции;
поразрядные (побитовые) операции.
Арифметические операции
+, -, *, / – знаки бинарных операций сложения, вычитания, умножения и деления соответственно. Если в операции деления оба операнда целые числа, то результат операции тоже целое число. Следовательно, имеется две разновидности операции деления – целочисленное деление (деление с остатком) и деление без остатка (результат – вещественное число). Например: 5 / 2 = 2, 5.0 / 2 = 2.5.
Для целых чисел определена операция % – деление по модулю (нахождение остатка от деления), например:
5 % 2 = 1, 2 % 5 = 2.
Примером унарной операции являются операции изменения знака числа:
-x, +a, -5.61.
Как видим, смысл знака операции зависит от контекста, т.е. тех условий, в которых используется операция.
Компилятор по знаку операции и типам операндов определяет возможность её выполнения и необходимые для этого действия.