Views: 344
Оператор увеличения (++) и оператор уменьшения (–) увеличить или уменьшить на единицу значение, хранящееся в переменной. Они эквивалентны += 1 и -=1, соответственно. Таким образом:
c++; c+=1; c=c+1;
все эквивалентны в своей функциональности: три из них увеличить на единицу значение c.
Особенностью этого оператора является, что она может использоваться в качестве префикса и суффикса. Это означает, что оно может быть написано либо до идентификатора переменной (++) или после него (++). Хотя в простых выражениях как а++ или ++а оба имеют одно и тоже значение, в другие выражения, в которых результат операции увеличение или уменьшение оценивается как значение внешнем выражении и они могут оказывать важное различие в их смысле.
В случае, если оператор увеличения используется как префикса (++а) значение увеличивается до того, как вычисляется результат выражения и поэтому увеличение значения рассматривается внешнее выражение; в случае, если оно используется в качестве суффикса (а++) значение, хранящееся в переменной увеличивается после операции. Обратите внимание на разницу:
| Пример 1 | Пример 2 |
| B = 3; A = ++B; //A содержит 4, B содержит 4 |
B = 3; A = B++; //A содержит 3, B содержит 4 |
В примере 1, B увеличивается до того, как его значение копируется A. В примере 2, A копируется значение b и затем b увеличивается.
Это может быть интересно
LED драйвер TM1639Views: 2486 TМ1639 позволяет работать на матрицу 8*8 или 8 семисегметных индикаторов. Может работать как на индикаторы с общим катодом, но и есть возможность подключать общим анодом. Для управления драйвером …
Temperature measurement with NTC thermistor.Views: 754 Проекты в которых присутствовало измерение температуры начинал с цифровых датчиков, т.к. в них все просто и не надо ничего преобразовывать и вычислять. При использовании цифровых датчиков ты получаешь …
AD9833 – Programmable Waveform GeneratorViews: 3087 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я использовал советский Г3-112, но он себя давно изжил. Все думал купить …
Система AT команд версии V2.0 для ESP8266 и ESP32Views: 13829 Появление нового модуля на базе ESP32 заставило систематизировать систему AT команд, а так же систему обновления и для модулей на базе ESP8266. Начиная с версии v2.0 в ESP8266 …
Униполярный шаговый двигательViews: 2483 В приводах различных устройств часто применяются шаговые двигатели, Шаговый двигатели различают двух типов униполярные – когда обмотки коммутируются током текущим только в одну сторону, например при …
Цифровой спидометр для автомобиляViews: 10322 Универсальность печатной платы ch-c0030pcb позволяет создавать на её основе разнообразные устройства. Одним из таких устройств является электронный спидометр для автомобиля, в котором можно задать два компаратора скорости, например, для …
TDA7294 part 1Views: 509 TDA7294 має унікальні дані для створення підсилювачів звукової частоти HI-FI класу. Варіант застосування є конфігурація BRIDGE (мостова схема включення), де використовуються два TDA7294, як показано на схематичній діаграмі …
Проект с использованием MCC часть 06Views: 1516 Изменим схему следующим образом добавим две тактовые кнопки BT1 и BT2. Теперь переключимся на конфигурацию выводов, для этого сделаем двойной клик в окне Ресурсы проекта на Pin Module. …
Altium Designer first projectViews: 552 Эта статья подразумевает, что у вас установлен и настроен Altium Designer как описано в статье Altium Designer my setup system and project structure. Обратите внимание! Библиотека постоянно обновляется, …
PIC18 – System ArbitrationViews: 750 Системный арбитр. Разрешает доступ к памяти между выборами уровнями системы (т.е. Main, Interrupt Service Routine) и выбором периферийных устройств (т.е. DMA и Scanner) на основе назначенных пользователем приоритетов. Каждый …