Решите пожалуйста и растолкуйте почему точно.... C C++ a++-++a чему одинаково?
Решите пожалуйста и растолкуйте почему точно.... C C++
a++-++a чему равно? Ноль ответ не совсем верный..
Евгения
пасиб... от души
2 ответа
Геннадий Польшин
Пусть a = 5 для определённости.
В данном выражении у нас есть оператор инкремента(увеличение на 1).
Посмотрим, что же получится в результате. В первом случае(a++) оператор инкремента постфиксный. Это означает, что если он заходит в состав трудного выражения, то сначала производятся иная операция, а ++ производится в заключительную очередь. Если же оператор инкремента префиксный, то для начала выполнится именно он. То есть, смотрите:
1)Сначала не обращаем внимания на символ ++, в качестве уменьшаемого пойдёт само значение а.(глядим вышеизложенное).
2)Сейчас определим значение вычитаемого. Ну во-первых. Конкретно на данный момент производится a++ в его подлинном виде, то есть, значение a становится равно 6.
Дальше, у нас есть оператор ещё ++a. То есть, до этого чем вычитать, значение а текущее возрастает на 1. То есть, значение а равно 6 + 1 = 7
Ну и теперь исполняем вычитание, 5 - 7 = -2
То есть, нуля тут не получится никак, это ОЧЕНЬ ЧАСТАЯ ОШИБКА. Выходит, что второй операнд на 2 больше первого, потому 0 не выйдет.
В данном выражении у нас есть оператор инкремента(увеличение на 1).
Посмотрим, что же получится в результате. В первом случае(a++) оператор инкремента постфиксный. Это означает, что если он заходит в состав трудного выражения, то сначала производятся иная операция, а ++ производится в заключительную очередь. Если же оператор инкремента префиксный, то для начала выполнится именно он. То есть, смотрите:
1)Сначала не обращаем внимания на символ ++, в качестве уменьшаемого пойдёт само значение а.(глядим вышеизложенное).
2)Сейчас определим значение вычитаемого. Ну во-первых. Конкретно на данный момент производится a++ в его подлинном виде, то есть, значение a становится равно 6.
Дальше, у нас есть оператор ещё ++a. То есть, до этого чем вычитать, значение а текущее возрастает на 1. То есть, значение а равно 6 + 1 = 7
Ну и теперь исполняем вычитание, 5 - 7 = -2
То есть, нуля тут не получится никак, это ОЧЕНЬ ЧАСТАЯ ОШИБКА. Выходит, что второй операнд на 2 больше первого, потому 0 не выйдет.
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов