Arduino - Операторы
Оператор - это символ, который указывает компилятору выполнять определенные математические или логические функции. Язык C богат встроенными операторами и предоставляет следующие типы операторов:
- Арифметические операторы
- Операторы сравнения
- Булевы операторы
- Побитовые операторы
- Составные операторы
Арифметические операторы
Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда -
Показать пример
Имя оператора | Оператор простой | Описание | пример |
---|---|---|---|
оператор присваивания | знак равно | Сохраняет значение справа от знака равенства в переменной слева от знака равенства. | А = В |
дополнение | + | Добавляет два операнда | A + B даст 30 |
вычитание | - | Вычитает второй операнд из первого | A - B даст -10 |
умножение | * | Умножьте оба операнда | A * B даст 200 |
деление | / | Разделите числитель на знаменатель | Б / А даст 2 |
по модулю | % | Оператор модуля и остаток после целочисленного деления | B% A даст 0 |
Операторы сравнения
Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда -
Показать пример
Имя оператора | Оператор простой | Описание | пример |
---|---|---|---|
равно | == | Проверяет, равны ли значения двух операндов или нет, если да, то условие становится истинным. | (A == B) неверно |
не равно | знак равно | Проверяет, равны ли значения двух операндов или нет, если значения не равны, условие становится истинным. | (A! = B) верно |
меньше, чем | < | Проверяет, меньше ли значение левого операнда, чем значение правого операнда, если да, то условие становится истинным. | (A <B) верно |
больше чем | > | Проверяет, больше ли значение левого операнда, чем значение правого операнда, если да, то условие становится истинным. | (A> B) неверно |
меньше или равно | <= | Проверяет, меньше ли значение левого операнда или равно значению правого операнда, если да, то условие становится истинным. | (A <= B) верно |
больше или равно | > = | Проверяет, больше ли значение левого операнда или равно значению правого операнда, если да, то условие становится истинным. | (A> = B) неверно |
Булевы операторы
Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда -
Показать пример
Имя оператора | Оператор простой | Описание | пример |
---|---|---|---|
а также | && | Вызывается логическим оператором И. Если оба операнда не равны нулю, тогда условие становится истинным. | (A && B) верно |
или | || | Вызывается логическим оператором ИЛИ. Если любой из двух операндов не равен нулю, тогда условие становится истинным. | (A || B) верно |
не | ! | Вызывается оператором логического НЕ. Используется для изменения логического состояния операнда на обратное. Если условие истинно, то оператор логического НЕ сделает ложным. | ! (A && B) ложно |
Побитовые операторы
Предположим, что переменная A содержит 60, а переменная B содержит 13, тогда -
Показать пример
Имя оператора | Оператор простой | Описание | пример |
---|---|---|---|
а также | & | Двоичный оператор И копирует бит в результат, если он существует в обоих операндах. | (A и B) даст 12, что составляет 0000 1100 |
или | | | Оператор двоичного ИЛИ копирует бит, если он существует в любом из операндов | (A | B) даст 61, что составляет 0011 1101 |
xor | ^ | Двоичный оператор XOR копирует бит, если он установлен в одном операнде, но не в обоих. | (A ^ B) даст 49, что составляет 0011 0001 |
не | ~ | Оператор дополнения двоичных единиц является унарным и имеет эффект «переворачивания» битов. | (~ A) даст -60, что составляет 1100 0011 |
сдвиг влево | << | Оператор двоичного левого сдвига. Значение левого операнда перемещается влево на количество битов, указанное правым операндом. | << 2 даст 240, что составляет 1111 0000 |
сдвиг вправо | >> | Оператор двоичного сдвига вправо. Значение левого операнда перемещается вправо на количество битов, указанное правым операндом. | A >> 2 даст 15, что равно 0000 1111 |
Составные операторы
Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда -
Показать пример
Имя оператора | Оператор простой | Описание | пример |
---|---|---|---|
приращение | ++ | Оператор увеличения, увеличивает целое значение на единицу | A ++ даст 11 |
декремент | - | Оператор декремента, уменьшает целочисленное значение на единицу | A - даст 9 |
сложное добавление | + = | Добавить оператор присваивания И. Он добавляет правый операнд к левому операнду и присваивает результат левому операнду | B + = A эквивалентно B = B + A |
сложное вычитание | знак равно | Оператор вычитания И присваивания. Он вычитает правый операнд из левого операнда и присваивает результат левому операнду | B - = A эквивалентно B = B - A |
сложное умножение | знак равно | Оператор умножения И присваивания. Он умножает правый операнд на левый операнд и присваивает результат левому операнду | B * = A эквивалентно B = B * A |
сложное деление | знак равно | Оператор деления И присваивания. Он делит левый операнд на правый операнд и присваивает результат левому операнду | B / = A эквивалентно B = B / A |
составной модуль | знак равно | Оператор модуля И присваивания. Он принимает модуль с использованием двух операндов и присваивает результат левому операнду | B% = A эквивалентно B = B% A |
составное побитовое или | | = | побитовое включающее ИЛИ и оператор присваивания | A | = 2 совпадает с A = A | 2 |
составное побитовое и | знак равно | Побитовый оператор присваивания И | A & = 2 совпадает с A = A & 2 |