Есть ли лучший способ инвертировать целое число, чем этот?
Ну, в программировании что-то вроде лучший способ не имеет четкого определения. Другими словами, это может означать несколько вещей. Это может быть лучшая производительность, лучшее использование памяти и т.д.
Однако самое главное, что код не содержит ошибок.
Ваш код не свободен от ошибок во всех случаях.
Рассмотрим малоизвестную систему, где INT_MAX равно 41, а затем вызовем вашу функцию со значением 34.
Это не удастся.
Проблема в том, что ваша проверка переполнения игнорирует часть x%10
, которая добавляется после умножения на 10. Другими словами, INT_MAX может иметь значение, при котором out*10
не будет переполняться, но как только вы добавите x%10
, оно переполнится. .
person
4386427
schedule
06.01.2021
out
, неверно. - person Evg   schedule 06.01.2021