Арифметические операторы
Название | Пример | Результат |
Отрицание | -a | Значение с противоположным знаком |
Сложение | a + b | Сумма двух операндов |
Вычитание | a - b | Разность двух операндов |
Умножение | a * b | Произведение двух чисел |
Деление | a / b | Частное двух чисел |
Деление по модулю | a % b | Остаток от целочисленного деления |
Операторы присвоения
Оперция | Сокращенный вариант | Полная запись |
('+=') | a += 2 | a = a + 2 |
('-=') | a -= 2 | a = a - 2 |
('*=') | a *= 2 | a = a * 2 |
('/=') | a /= 2 | a = a / 2 |
('%=') | a %= 2 | a = a % 2 |
Операторы сравнения
Название | Пример | Результат |
Равено | a == b | TRUE если a равно b |
Не равно | a!= b | TRUE если a не равно b |
Меньше | a < b | TRUE если a меньше b |
Больше | a > b | TRUE если a больше b |
Меньше или равно | a <= b | TRUE если a меньше или равно b |
Больше или равно | a >= b | TRUE если a больше или равно b |
Операторы инкремента и декремента
Операторы инкремента "++" и декремента "--" применяются для изменения значения переменной на "1".
Название | Пример | Результат |
Пре-инкремент | ++a | значение сначала увеличивается на "1", потом используется в выражении |
Пост-инкремент | a++ | значение сначала используется в выражении, а потом увеличивается на "1" |
Пре-декремент | --a | значение сначала уменьшается на "1", потом используется в выражении |
Пост-декремент | a-- | значение сначала используется в выражении, а потом уменьшается на "1" |
Логические операторы
Название | Пример | Результат |
AND (И) | a && b или a and b | TRUE если оба операнда TRUE |
OR (ИЛИ) | a || b или a or b | TRUE, если хотя бы один оператор TRUE |
NOT (Отрицание) | !a | TRUE, когда операнд FALSE |
Битовые операторы
Битовые операции предназначены для изменения значений отдельных битов переменных. Эти операторы работают по тем же принципам, что и обычные логические операторы, только результат - значение бита (0 или 1), а не TRUE или FALSE.
|
Название | Пример | Результат |
AND (И) | a & b | Устанавливаются в "1" только биты, одновременно установленные в "1" в обоих операндах |
OR (ИЛИ) | a | b | Устанавливаются в "1" биты, установленные в "1" хотя бы в одном операнде |
XOR (ИЛИ-НЕ) | a ^ b | Устанавливаются в "1" биты, установленные в "1" в одном операнде, но не обоих сразу |
NOT (Отрицание) | ~ a | Устанавливаются в "1" биты, ранее имевшие значение "0" и наоборот. |
Сдвиг влево | a << b | Биты сдвигаются влево на b бит, "освобождённые" биты заполняются нулями |
Сдвиг вправо | a >> b | Биты сдвигаются вправо на b бит, "освобождённые" биты заполняются нулями |
Пустой оператор –;
Пустой оператор – это оператор, состоящий только из точки с запятой. Он может появиться в любом месте программы, где по синтаксису требуется оператор. Выполнение пустого оператора не меняет состояния программы.
Составной оператор – {...}
Действие составного оператора состоит в последовательном выполнении содержащихся в нем операторов, за исключением тех случаев, когда какой-либо оператор явно передает управление в другое место программы.
Математические функции в С++
Функция | Описание | Пример |
abs(a) | модуль или абсолютное значение от а | abs(-3.0)= 3.0 abs(5.0)= 5.0 |
sqrt(a) | корень квадратный из а,причём ане отрицательно | sqrt(9.0)=3.0 |
pow(a, b) | возведение ав степень b | pow(2,3)=8 |
ceil(a) | округление а до наименьшего целого, но не меньше чем а | ceil(2.3)=3.0 ceil(-2.3)=-2.0 |
floor(a) | округление а до наибольшего целого, но не больше чем а | floor(12.4)=12 floor(-2.9)=-3 |
round(x) | Округление x до ближайшего целого (метод симметричного округления) | |
trunc(x) | Округление x до ближайшего целого (метод отбрасывания дробной части) | |
fmod(a, b) | вычисление остатка от a/b | fmod(4.4, 7.5) = 4.4 fmod(7.5, 4.4) = 3.1 |
exp(a) | вычисление экспоненты еа | exp(0)=1 |
tan() | вычисление тангенса | a задаётся в радианах |
cos() | вычисление косинуса | |
sin() | вычисление синуса | |
acos() | вычисление арккосинуса | |
asin() | вычисление арксинуса где -1.0 < а < 1.0 | asin(1)=1.5708 |
atan() | вычисление арктангенса | |
log(a) | натуральный логарифм a(основанием является экспонента) | log(1.0)=0.0 |
log10(a) | десятичный логарифм а | Log10(10)=1 |
floor | ceil | round | trunc | |
3.1 | ||||
3.6 | ||||
-1.1 | -2 | -1 | -1 | -1 |
-1.6 | -2 | -1 | -2 | -1 |
CTYPE.H/ CСTYPE (Обработка символов)
|
Прототип | Описание |
int isalnum (int с); | Возвращает true, если с — число или буква. |
int isalpha (int с); | Возвращает true, если с — буква. |
int isblank (int с); | Возвращает true, если с – пробел или горизонтальная табуляция (С99) |
int iscntrl (int c); | Возвращает true, если с – управляющий символ, такой как <Ctrl+B> |
int isdigit (int c); | Возвращает true, если с – десятичная цифра. |
int isgraph (int c); | Возвращает true, если с – печатаемый символ, отличный от пробела |
int islower (int c); | Возвращает true, если с — символ нижнего регистра. |
int isprint (int c); | Возвращает true, если с – печатаемый символ. |
int ispunct (int c); | Возвращает true, если с – знак препинания (любой печатаемый символ, отличный от пробела, букв и цифр). |
int isspace (int c); | Возвращает true, если с — пробельный символ: пробел, символ новой строки, перевода страницы, возврата каретки, вертикальной табуляции, горизонтальной табуляции или, возможно, другой определяемый реализацией символ. |
int isupper (int c); | Возвращает true, если с — символ верхнего регистра. |
int isxdigit (int c); | Возвращает true, если с — шестнадцатеричная цифра. |
int tolower (int c); | Если аргумент — символ верхнего регистра, возвращает его версию в нижнем регистре; иначе просто возвращает исходный аргумент. |
int toupper (int c); | Если аргумент — символ нижнего регистра, возвращает его версию в верхнем регистре; иначе просто возвращает исходный аргумент. |
|
Приоритет операций в С++ | |||
Приоритет | Операция | Ассоциативность | Описание |
:: | слева направо | унарная операция разрешения области действия | |
[ ] | операция индексирования | ||
() | круглые скобки | ||
. | обращение к члену структуры или класса | ||
-> | обращение к члену структуры или класса через указатель | ||
++ | слева направо | постфиксный инкремент | |
— | постфиксный декремент | ||
++ | справа налево | префиксный инкремент | |
— | префиксный декремент | ||
* | слева направо | умножение | |
/ | деление | ||
% | остаток от деления | ||
+ | слева направо | сложение | |
— | вычитание | ||
>> | слева направо | сдвиг вправо | |
<< | сдвиг влево | ||
< | слева направо | меньше | |
<= | меньше либо равно | ||
> | больше | ||
>= | больше либо равно | ||
== | слева направо | равно | |
!= | не равно | ||
&& | слева направо | логическое И | |
|| | слева направо | логическое ИЛИ | |
?: | справа налево | условная операция (тернарная операция) | |
= | справа налево | присваивание | |
*= | умножение с присваиванием | ||
/= | деление с присваиванием | ||
%= | остаток от деления с присваиванием | ||
+= | сложение с присваиванием | ||
-= | вычитание с присваиванием | ||
, | слева направо | запятая |
Приоритет операций — очерёдность выполнения операций в выражении, при условии, что в выражении нет явного указания порядка следования выполнения операций (с помощью круглых скобок).
Если операции имеют одинаковый приоритет, то очерёдность выполнения таких операций определяется согласно свойству ассоциативности.
Ассоциативность — направление выполнения операций в случае, если операции имеют одинаковый приоритет.