Форум программистов, компьютерный форум CyberForum.ru

Постфиксный и префиксный декремент - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Системы счисления, погрешность http://www.cyberforum.ru/cpp-beginners/thread912734.html
Всем привет. Может кто помочь с написанием программы, которая будет : 1. Переводить число с дробной частью из десятичной в двоичную 2. Переводить из двоичной в десятичную 3. Считать погрешность между этими числами
C++ Структуры данных. Написать программу, позволяющую определить, есть ли в школе в каких-либо классах однофамильцы Написать программу, позволяющую определить, есть ли в школе в каких-либо классах однофамильцы. Данные об ученике идут в следующем порядке: имя, фамилия, год обучения, буква. Данные о раз¬ных учениках идут в некоторой очередности, о которой заранее ничего не известно. http://www.cyberforum.ru/cpp-beginners/thread912727.html
C++ 3d моделирование
Доброго времени суток! помогите разобраться в коде.. программа выполняет вращение, перемещение и увеличение/уменьшение 3d фигур. Не могу понять только как и в каком месте программы закрашиваются невидимые линии #include <iostream> #include <stdlib.h> #include <allegro.h> #include <math.h> #define w 1024 #define h 768 #define kybe 1 #define treygl 2
C++ Программа выводит числа a,b и c не более 25, для которых верно равенство теоремы пифагора т.е a2+b2=c2
Программа выводит числа a,b и c не более 25, для которых верно равенство теоремы пифагора т.е a2+b2=c2 Помогите пож никак не получается решить
C++ помогите написать подпрограмму считающую сумму нечётных чисел, содержащих цифру 5 от N до N^2 http://www.cyberforum.ru/cpp-beginners/thread912682.html
помогите написать подпрограмму считающую сумму нечётных чисел, содержащих цифру 5 от N до N^2. Я мало в этом шарю а надо сделать именно так помогите кто знает :\ Отблагадарю
C++ Описать структуру с именем NOTE Помогите пожалуйста с программой в C++ Вот задание: Описать структуру с именем NOTE, содержащую следующие поля: — фамилия, имя; — номер телефона; — день рождения (массив из трех чисел). Написать программу, выполняющую следующие действия: • ввод с клавиатуры данных в массив , состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по трем первым цифрам номера телефона; •... подробнее

Показать сообщение отдельно
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
26.06.2013, 22:44     Постфиксный и префиксный декремент
Цитата Сообщение от Toshkarik Посмотреть сообщение
Это undefined behaviour. Результат может быть каким угодно.
Никак не могу согласиться. В чём тут проявляется UB?
C++
1
cout << (--a)--
UB возникает при определённых обстоятельствах. А именно (если я правильно понял статью http://alenacpp.blogspot.ru/2005/11/...ce-points.html) это происходит при обращении к значению изменённой переменной до прохождения точки следования.

В данном же случае поведение строго определено скобками и свойствами операторов предекремента/постдекремента.

Ответ:
-Сначала выполнится выражение в скобках.
-Переменная а будет уменьшена на 1 и возвращёно значение а после уменьшения, т.к. ПРЕдекремент.
-Затем значение а будет ещё раз уменьшено вторым оператором --, но на вывод будет возвращено значение а бывшее ДО декремента, т.к. ПОСТдекремент.
-Например, следующая программа выведет "-1 -2"
C++
1
2
3
int a=0;
cout << (--a)-- <<endl;
cout << a         <<endl;
Очевидно, что иногда люди, услышав где-то про классическое
- вопрос: какой результат у выражения i=i++ + i++;?
- ответ: UB
начинают распространять этот ответ на любые подобные(и не совсем подобные) выражения, не задумываясь о настоящих причинах UB или не UB. Так, что вот.
 
Текущее время: 03:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru