Сегодня я заметил, что, когда я делаю двойной, который больше максимально возможного целого числа, к целому числу, я получаю -2147483648. Точно так же, когда я делаю двойной, который меньше минимально возможного целого числа, я также получаю -2147483648.
Является ли это поведение определенным для всех платформ?
Каков наилучший способ обнаружить это под/переполнение? Помещает ли инструкции if для min и max int перед отличным решением?