Инкремент ++
– это увеличение на единицу. Декремент --
– это уменьшение на единицу. Операции декремента и инкремента с лёгкостью заменяются арифметическими операциями или операциями присваивания. Но использовать операции инкремента и декремента намного удобнее.
//синтаксис операций инкремента и декремента ++/*имя переменной*/; // префиксный инкремент (преинкремент) /*имя переменной*/++; // постфиксный инкремент (постинкремент) --/*имя переменной*/; // префиксный декремент (предекремент) /*имя переменной*/--; // постфиксный декремент (постдекремент)
Синтаксис использования операций инкремента и декремента таков, что перед или после имени переменной ставится операция инкремента или декремента. Когда операция инкремента или декремента ставится перед именем переменной, то такая операция называется префиксным инкрементом (сокращённо — преинкрементом) или префиксным декрементом (сокращённо — предекрементом). А если операция инкремента или декремента ставится после имени переменной, то такая операция называется операцией постфиксного инкремента (сокращённо — постинкремент) или постфиксного декремента (сокращённо — постдекремент). При использовании операции преинкремента значение переменной, сначала, увеличивается на 1, а затем используется в выражении. При использовании операции постинкремента значение переменной сначала используется в выражении, а потом увеличивается на 1. При использовании операции предекремента, значение переменной, сначала, уменьшается на 1, а затем используется в выражении. При использовании операции постдекремента, значение переменной, сначала, используется в выражении, а потом уменьшается на 1. В таблице 1 показаны примеры выражений с использованием операций инкремента и декремента, а также приведена их краткая характеристика.
Операция | Обозначение | Пример | Краткое пояснение |
---|---|---|---|
преинкремент | ++ | cout << ++value; | Значение в переменной value увеличивается, после чего оператор cout печатает это значение |
предекремент | — | cout << —value; | Значение в переменной value уменьшается, после чего оператор cout печатает это значение |
постинкремент | ++ | cout << value++; | Оператор cout печатает значение переменной value , затем увеличивает это значение на 1 |
постдекремент | — | cout << value—; | Оператор cout печатает значение переменной value , затем уменьшает это значение на 1 |
В примерах используется оператор cout
, чтобы показать, например, в чём различие постфиксных и префиксных операций. Вместо оператора cout
можно использовать любой другой, в зависимости от того, какую необходимо выполнить задачу. Разработаем программу на основе выражений из таблицы, которая наглядно покажет, как себя будут вести операции инкремента и декремента.
// increment_decrement.cpp: определяет точку входа для консольного приложения. #include "stdafx.h" #include <iostream> using namespace std; int main(int argc, char* argv[]) { int value = 2011; cout << "value = " << value << endl; // начальное значение cout << "++value = " << ++value << endl; // операция преинкремента cout << "value++ = " << value++ << endl; // операция постинкремента cout << "value = " << value << endl; // конечное значение в переменной value после выполнения операции постинкремента cout << "--value = " << --value << endl; // операция предекремента cout << "value-- = " << value-- << endl; // операция постдекремента cout << "value = " << value << endl; // конечное значение в переменной value после выполнения операции постдекремента system("pause"); return 0; }
Код программы простой, поэтому пояснений к нему не будет, тем более, что в комментариях всё расписано. Результат работы программы (см. Рисунок 1).
value = 2011 ++value = 2012 value++ = 2012 value = 2013 --value = 2012 value-- = 2012 value = 2011 Для продолжения нажмите любую клавишу . . .
Рисунок 1 — Операции инкремента и декремента
Из рисунка 1 видно, что первым делом печатается значение переменной value
и оно равно 2011 . Далее выполняется операции преинкремента, которая, в свою очередь, увеличивает на 1 значение переменной value
, теперь в value
содержится значение 2012. В строке 12 выполняется операция постинкремента, таким образом, сначала печатается старое значение переменной value
– 2012, а потом значение в value
увеличивается на 1. Оператор cout
в строке 13, как раз, подтверждает изменение значения в переменной value
, оно равно 2013. В строке 14 выполняется операции предекремента, а значит, значение в переменной value
уменьшается на 1, и оператор cout
печатает это значение, теперь value
= 2012. В строке 15 выполняется операция постдекремента, но сначала оператор cout печатает значение value
, затем операция постдекремента уменьшает значение в переменной value
. Теперь value
= 2011, это подтверждает оператор cout
в строке 16.
Как было выше сказано, операции инкремента и декремента можно заменить эквивалентными операциями, например:
/*операция*/ ++value; /*эквивалентна операции*/ value += 1; /*операция*/ --value; /*эквивалентна операции*/ value -= 1; /*операция*/ ++value; /*эквивалентна операции*/ value = value +1; /*операция*/ --value; /*эквивалентна операции*/ value = value - 1;
Но зачем всё усложнять, если можно использовать операции инкремента и декремента, вместо операций присваивания. С точки зрения оформления программного кода, так даже будет правильнее.
Комментарии
Андрій Кучменда
blablabla
Здравствуйте.
Объясните разницу между преинкрементом и постинкрементом, а то не понятно чем они отличаются, и как машина их различает.
Damnt
Написано же, при использовании преинкремента ( в cout, например) сначала производится прибавление единицы, а потом вывод, при постинкременте сначала производится вывод, а потом значение переменной увеличивается на единицу. Или я не понял вопроса?
admin
PayL
Это тоже самое что в конце статьи написано, с заменой прединкремента. А я спросил во втором вопросе как без замены на другую операцию это сделать инкрементом, возможно ли это, или инкремент подразумевает только не больше +1?
И есть ли ответ на первый вопрос? Или нельзя заменить постинкремент эквивалентной операцией, не выполняющейся до завершения команды?
admin
Инкремент — это только +1, если вы хотите сделать +n, то это уже не инкремент.
VornKVold
Dear user, our online cinema cares about its customers, thereby providing quality and convenient viewing of video content on the Internet site.
Can be sure to watch/f Beauty and the Beast you will be completely free of charge and without registration, we have no restrictions on online.
If you view in 720p hd as everything is fine — looking x/f and enjoy.
To turn on the player on the phone, tablets, wearable devices that support the Android operating system (Android) without registration, multiple players, easy to play HTML5 and FLASH.
##########################################################
#############################################################
### >> [url=https://vk.com/away.php?to=http%3A%2F%2Fbitly.com%2F2ilc5wY]WATCH Beauty and the Beast (2017) [/url]
###
### >> [url=https://vk.com/away.php?to=http%3A%2F%2Fbitly.com%2F2ilc5wY]DOWNLOAD Beauty and the Beast (2017) [/url]
#############################################################
##########################################################
.
.
.
Beauty… and… the… Beast… No… Buffering
Beauty… and… the… Beast… Watch… Season… on
Watch…Beauty…and…the…Beast…Online…Download
Beauty. and. the. Beast. Online. Dailymotion
Die magische Welt von Belle und dem Biest. Hier findest Du KostГјmkleider, Figuren, Puppen, Spielzeug, Becher und Teller mit tollen Motiven und vieles mehr. Die SchГ¶ne und das Biest: Die Disney-Realverfilmung — Jolie Beauty… and… the… Beast… Full… Movie,… 2016… live… steam:… Watch… online
Full,Movie,Beauty,and,the,Beast,-,Putlocker,Streaming
Watch… Beauty… and… the… Beast… Online… Megashare
Watch… Beauty… and… the… Beast… Online… Full… Movie
Beauty.and.the.Beast.Full.Movie.2016.live.steam:.Watch.online
Download…Beauty…and…the…Beast…Putlocker
Die SchГ¶ne und das Biest — Berlin Remake des bereits mehrfach verfilmten MГ¤rchenklassikers mit Vincent Cassel als Biest und LГ©a Seydoux als die SchГ¶ne an seiner Seite. Note Beauty.and.the.Beast.Watch.Online.Full.Free
DIE SCHГ–NE UND DAS BIEST — Die Webseite zum Film. loading Impressum | Website: broy new media LikeFree!!…Beauty…and…the…Beast…Online…Free
Musik von Martin Doepke Songtexte von Elke Schlimbach und Grant Stevens Dialoge von Christian Bieniek Idee/Konzept von Andrea Friedrichs, Hans Holzbecher Die SchГ¶ne und das Biest im TV — Sendung — TV SPIELFILM Willkommen auf der Гњbersichtsseite von Disney Die SchГ¶ne und das Biest bei eventim. Falls es keine aktuellen Events geben sollte, kГ¶nnen Sie sich online…Beauty…and…the…Beast…Full…Movie
Beauty…and…the…Beast…HD…English…Full…Movie…Download
Die SchГ¶ne und das Biest. Belle, eine wunderschГ¶ne und kluge junge Frau, gelangt auf der Suche nach ihrem vermissten Vater in das Schloss eines Download… Beauty… and… the… Beast… Subtitle… English
Die SchГ¶ne und das Biest stream online anschauen — 1810: Ein HГ¤ndler (AndrГ© Dussollier) steht nach dem Untergang seiner Schiffe vor dem «Die SchГ¶ne und das Biest» 2017: Erste Bilder von Emma Watch,TV,Series,online,Beauty,and,the,Beast
Beauty.and.the.Beast.English.Full.Movie.Online
Die Schöne und das Biest, Ein Film von Christophe Gans mit Vincent Cassel, Léa Seydoux. Übersicht und Filmkritik. 1810: Ein Händler (André Dussollier Beauty… and… the… Beast… Online… Hindi… HBO… 2016… Mojo… Watch… Online
Die SchГ¶ne und das Biest bei fernsehserien Die SchГ¶ne und das Biest — Musical — Musicals fГјr GroГџ Beauty, and, the, Beast, Watch, Online, Full, Free, 2016
Beauty, and, the, Beast, Full, Movie, Online, Free
Die SchГ¶ne und das Biest (1991) Stream online anschauen Die SchГ¶ne und das Biest — Jetzt online Stream anschauen Herzlich Willkommen! SchГ¶n, dass Sie hier sind! Auf dieser Seite stellen wir unser Musicalprojekt «Die SchГ¶ne und das Biest!» vor, das im November 2012 Die SchГ¶ne und das Biest – Wikipedia Beauty.and.the.Beast.virus-free.access
Die SchГ¶ne und das Biest — ZDFmediathek Kaufen Sie Ihre Tickets fГјr die aktuelle Disney Die SchГ¶ne und das Biest Tour ganz bequem online bei Ticket Online. Bis 30.07.17 tourt Disney Die SchГ¶ne Die SchГ¶ne und das Biest | Mit Geschichten groГџ werden Beauty, and, the, Beast, tv, Hindi, HBO, 2016r
watch… Beauty… and… the… Beast… Online
Watch, Beauty, and, the, Beast, Online, HBO, 2016, Online, Streaming, Free
Beauty… and… the… Beast… tv… Hindi… Film… Free… Watch… Online
Beauty…and…the…Beast…trailer:…civil
Disney Die Schöne und das Biest Tickets – Ticket Online Beauty…and…the…Beast…Full…Movie…Watch…Online
Watch… Beauty… and… the… Beast
Hugo, der Vater der schönen Elsa, steht kurz vor dem Ruin. Doch das Schicksal scheint sich zu wenden, als Elsa von Ritter Bertolt umworben wird. Auf dem R Beauty. and. the. Beast. Full. Movie. to
Beauty… and… the… Beast… English… Film… Free… Watch… Online… … …
Watch. Beauty. and. the. Beast. Online. Torrent
Beauty.and.the.Beast.live.online:.Will.Meera.save.HDan
Die Schöne und das Biest (2017): Trailer, Kinostart, Cast Beauty,and,the,Beast,English,Full,Movie
Die SchГ¶ne und das Biest — Disney Store Beauty,and,the,Beast,Online,Hindi,HBO,2016,Online,Free,Download
Download.Beauty.and.the.Beast.Subtitle
die schöne und das biest 2012, die schöne und das biest musical, die schöne und das biest disney, die schöne und das biest der ganze film, die schöne und das biest disney film, die schöne und das biest kinostart, die schöne und das biest das versteckspiel, die schöne und das biest verarchen, die schöne und das biest verarche sychro outtakes 5, die schöne und das biest 2014, die schöne und das biest 2017, die schöne und das biest torrent, die schöne und das biest buch, die schöne und das biest verarche sychro, die schöne und das biest märchen operdonesto
[URL=http://telegra.ph/Hoe-Sing-2016-Kijken-downloaden-torrent-HD-HD-1080p-01-11]http://telegra.ph/Hoe-Sing-2016-Kijken-downloaden-torrent-HD-HD-1080p-01-11[/URL]
[URL=http://telegra.ph/Quel-Genre-Hairspray-2007-ac3-yify-torrents-En-hindi-01-11]http://telegra.ph/Quel-Genre-Hairspray-2007-ac3-yify-torrents-En-hindi-01-11[/URL]
[URL=http://telegra.ph/De-DГіnde-Pet-I-2016-Descargar-Torrent-iphone-br-rip-gratuitas-android-01-11]http://telegra.ph/De-DГіnde-Pet-I-2016-Descargar-Torrent-iphone-br-rip-gratuitas-android-01-11[/URL]
PayL
Как заменить эквивалентными операциями постинкремент и постдекремент?
Как без замены эквивалентной операцией задать пред- и пост- инкремент и декремент, но чтобы, к примеру, прибавлялось или отнималось не +1 , а +3 за одну операцию?