|
|
От: | watchmaker | |
| Дата: | 18.06.14 20:14 | ||
| Оценка: | |||
| тут | |
| i*1000000000 — переполнение int — UB. Так, например, в эксперименте с gcc и с INT_MAX == 231-1, компилятор вполне разумно считает, что без переполнения i не может быть больше 2. А раз 2 < 10, то и выход по условию (i < 10) невозможен, так что его и проверять не стоит. Впрочем другие компиляторы по другому чудят. | |