Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Странный подсчет выражения в VS 2008

66K
27 мая 2011 года
Antosh
18 / / 25.05.2011
Как-то уж очень странно считает результат следующего выражения:
 
Код:
year = 2011;
month = 9;
day = 12;
int date = year*100+month*100+day;

в результате date = 202012
если поставить скобки так:
 
Код:
year = 2011;
month = 9;
day = 12;
int date = (year*100+month)*100+day;

то получается то, что нужно date = 20110912
В чем подвох?
278
27 мая 2011 года
Alexander92
1.1K / / 04.08.2008
Очевидно, подвох в арифметике. :) Считаем:
2011*100 + 9*100 + 12 = 201100 + 900 + 12 = 20212

Упс... Кажись, студия права... М? :)

А чтобы получить правильный результат (мне тут кэп подсказал только что), нужно написать
 
Код:
int date = year * 10000 + month * 100 + day;
, что совпадает как раз с вашим вторым вариантом.
66K
27 мая 2011 года
Antosh
18 / / 25.05.2011
Цитата: Alexander92

Упс... Кажись, студия права... М? :)


Упс )) кажись и правда права)
p.s. закройте тему

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог