У меня есть код, который работает по-разному между GCC и Atmel Studio:
uint32_t tc = 107900;
int8_t m = 59;
tc = tc - (m*1800);
В GCC результат в tc
равен 1700, как и предполагалось.
С AtmelStudio результат в tc
равен 132772, что неверно.
Проблема заключается в том, что термин m*1800
вычисляется с ограниченной точностью m с помощью AtmelStudio.
Мой вопрос в том, компилятор делает это правильно?
Спасибо.