Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Непонятная арифметика, по разному интерпретируется унарный плюс 
:(
    Опции темы
Proximo_RZN
Дата 11.5.2007, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 16.3.2004
Где: Рязань

Репутация: нет
Всего: нет



Господа, всем здравствуйте.

Сегодня абсолютно случайно обнаружили прикол или багу или фичу, даже и не знаю что сказать.

Вот такой код:
int i = 5;
i = ++i + ++i;

Visual C++ 2003 и Visual C++ 6.0 говорят что в итоге i = 14
а Visual C#.NET 2003 говорит, что 13

Если считать в уме, то я склоняюсь к 13.

Какие ваши комментарии? Я недоумеваю...

Добавлено через 1 минуту и 4 секунды
Такое впечатление что приоритет в C++ и в C# у унарных операций разный
PM MAIL ICQ   Вверх
zkv
Дата 11.5.2007, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 26
Всего: 92



мда, посмотрите тут
PM MAIL   Вверх
mr.Anderson
Дата 11.5.2007, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: нет
Всего: 128



Вроде, только что разбирали где-то такую тему?

1. Инкремент I, туда помещается 6.
2. Инкремент I, туда помещается 7.
3. 7 + 7 = 14.

А насчет разной реакции компилеров - а зачем такой оператор писать? smile Куда такие навороты?


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
W4FhLF
Дата 11.5.2007, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 20
Всего: 121



Люди о особенностях стандарта через БОР узнают smile


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Proximo_RZN
  Дата 11.5.2007, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 16.3.2004
Где: Рязань

Репутация: нет
Всего: нет



Спасибо. извините за повтор

mr.Anderson, да нет, такой оператор не нужен. Просто прислали по аське и спросили - сколько будет, а я ответил 13. Потом забыл в VS6, оказалось 14, офигел. вот и все...

Еще раз сорри  и спасибо

Это сообщение отредактировал(а) Proximo_RZN - 11.5.2007, 16:40
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1049 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.