Форум программистов, компьютерный форум, киберфорум
Наши страницы

Инкрементация (не могу понять почему так?) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как можно организовать цикл? http://www.cyberforum.ru/cpp-beginners/thread229624.html
помогите пожалуйста, как можно организовать цикл, вот например в этом:#include<iostream.h> void main() { float a, b, c; cout<<"A="; cin>>a; cout<<"B="; cin>>b;
C++ составить программу для представления введённого действительного числа прописью составить программу для представления введённого действительного числа прописью. Максимальное количество разрядов –6, Максимальное количество знаков после запятой – 6. Например: число 34652,54124... http://www.cyberforum.ru/cpp-beginners/thread229612.html
сумма C++
составить программу выводящую на экран все суммы двух целых чисел для получения введённого с клавиатуры целого числа. Например: 6=5+1, 6=4+2, 6=3+3.
C++ Функции
Доброго времени суток :) Подскажите пожалуйста, не могу разобраться: у меня есть следующий код: //--------------- BEGINNING ---------------------------------------------------- double...
C++ лабораторная http://www.cyberforum.ru/cpp-beginners/thread229586.html
Проверьте, пожалуйста, правильность написания программы. Циклические программы. Вычисления по рекуррентным формулам Рабочий набор n х 11 0,8 Текст программы на языке С++
C++ Тест! Помогите пожалуйста с тестом. Есть тест состоит из трех текстовых файлов 1: Вопросы 2: Ответы 3: Результат. Нужно что бы он был без классов. Как сделать его таковым. Вот сам код: main.cpp#include... подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
3051 / 1696 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
16.01.2011, 19:29
Ежели сформулировать ответ простыми словами, то в C++ порядок вычисления операндов выражения не определен (кроме операторов “&&”, “||”, “?:”, и “.”), поэтому не следует писать программы, полагаясь на какой-либо определенный порядок вычисления операндов.
В приведенном же примере автор надеется, что операнды будут вычисляться слева направо, но компилятор свободен в этом вопросе как муха в полете.

Добавлено через 9 минут
Цитата Сообщение от no0ker Посмотреть сообщение
в статье криса касперски есть вот такой момент

"Для поддержки функций с переменным количеством аргументов в языке Си был принят обратный порядок заталкивания параметров в стек, т.е. самый левый аргумент заносится в последнюю очередь и оказывается на верхушке стека."

означает ли это, что в коде топикастера инкременты выполняются не слева - направо, а справа-налево? соответственно при снятии со стека получается не возрастающая, а убывающая последовательность.

или это чистое UB? (исходя из определения, как попытка изменения переменной между точками следования)
Заталкивание здесь ни при чем, так как точка последовательности находится после вычисления всех аргументов функции, но перед ее вызовом, а порядок вычисления в выражении НЕ ОПРЕДЕЛЕН, это надо четко усвоить и не пытаться писать код, основываясь на своих предположениях на этот счет.
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.