23 прочтения · 6 месяцев назад
Инкремент и декремент в C++
Операторы инкремента и декремента в языке программирования C++ - это важные инструменты, которые позволяют увеличивать или уменьшать значения переменных на единицу. Их применение распространено и широко используется в различных алгоритмах и задачах программирования. В этой статье мы рассмотрим операторы инкремента (++) и декремента (--) в контексте языка C++, а также предоставим примеры их использования. Операторы инкремента и декремента Инкремент (++) Оператор инкремента (++) используется для увеличения значения переменной на единицу...
5 месяцев назад
"Префиксный или постфиксный инкремент и декремент в C++ " Про то, как очень просто отличить префиксный инкремент (увеличение значения на единичку) и декремент (уменьшение на единичку) от постфиксного. Это же справедливо, для языков C# и C насколько я знаю. Итак. Я раньше думал что это очень трудно и запутано. А теперь, я считаю, что труднее не понять, чем понять. В общем. Инкремент это повышение значения на единичку, то есть оператор "++". Декремент, это уменьшение на единицу, то есть оператор "--". Префиксными их называют если они стоят перед перменной, то есть ++x и --x : префиксные инкремент и декрмент перменной x (икс). Постфиксными их зовут при выражениях, когда оперторы стоят после переменной. То есть x++ и x--: постфиксные инкремент и декремент. Теперь самое важное и интересное. Префиксные инкремент и декремент выполняются быстрее постфиксных. Дело в том, что задача префиксных: увеличить/уменьшить на единицу и отдать результат, а у постфиксных сначала вернуть результат перменной, а потом - увеличить на единицу. Рассмотрим этот код в C++ : int i =0; std::cout<<"++i =" <<++i <<"\n"; i =0; std::cout<<"i++ =" <<i++ <<"\n"; Вывод в терминале будет следующий: ++i =1 i++ =0 Или рассмотрим следующий код в C#: int i =0; Console.WriteLine("++i =" + ++i); i=0; Console.WriteLine("i++ =" + i++); Вывод в терминале следующий: ++i =1 i++ =0 Собственно как их отличить и запомнить? На самом деле, оказалось, что сложнее их "не отличить". То есть запутаться в них надо ещё умудриться. Очень простое правило: посимвольно слева на право. Всё. К примеру смотрим на выражение префиксного инкремента ++x что мы видим? Сначала стоят плюсики, а после - переменная. Значит сначала он выполняет сложение, а потом выдаёт результат. Хорошо. А постфиксный как? Смотрим: x++. Что в начале? Переменная. А потом? Плюсики. Значит выражение сначала отдаёт результат переменной, а после делает сложение. Вот и всё. Попробуйте теперь запутаться) У меня вряд ли получится, теперь забыть или не понять)