Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Операторы инкримента и декримента

Статус
В этой теме нельзя размещать новые ответы.

KinG_95

Компетентный
Оператор инкримента он же ++ ставится перед переменной или после нее, увеличивает значение переменной на 1. Оператор декримента -- ставится тоже перед переменной или после нее. Вопрос заключается в том, что где же ставить этот оператор, после или перед переменной? Ответ на этот вопрос я и хочу вам рассказать
Все просто до безобразия!

Префиксный и постфиксный тип инкримента (декримента)
Что же это такое?! Префиксный и постфиксный тип инкримента (декримента)?!

Префиксный тип инкримента записывается так (++varable) и постфиксный тип инкримента записывается так (varable++). Так с названиями вроде разобрались, теперь я объясню в чем же разница. Рассмотрим это на примере:
PHP:
1.new a, b, c, d;
2.    
3.a = ++b;
4.c = d++;
5.    
6.printf("A = %d, C = %d", a, c);
7.printf("B = %d, D = %d", b, d);
Выведет:
PHP:
1.... 
2.A = 1, C = 0 
3.B = 1, D = 1 
4....
Почему же так?! Спросите вы, все очень просто.
Префиксный тип инкримента сначала увеличивает переменную на 1, а затем передает его по ссылке (т.е. присваивает переменной а). Постфиксный тип же сначала передает по ссылке значение переменной (т.е. присваивает значение переменной с), а только потом уже увеличивает значение переменной на 1 (переменные b и d равны 1 значит они увеличились).

Также они работают и в операторах (if, switch), циклах (while, for, do while) т.е. смысл один и тот же

Все! Если есть вопросы пишите в комментах

Автор: Romanius
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу