Энциклопедия багов
Незнание про `ParseUint` для беззнаковых чиселЛогические и тихие ошибки/ Логическая ошибка
Смешивание `%d` и `%f` при чтении через `fmt.Sscanf`Логические и тихие ошибки/ Логическая ошибка
Ожидание, что `ParseFloat` поймёт запятую как разделитель дробиerror-значения/ По происхождению (домену)/ Парсинг/сериализация
Игнорирование того, что `ParseInt` возвращает `int64`, а не `int`Ошибки сборки/ Компиляция/ Семантическая
Путаница между `Atoi` и `ParseInt` для не-десятичных системЛогические и тихие ошибки/ Логическая ошибка
Забывают очистить строку от пробельных символовЛогические и тихие ошибки/ Логическая ошибка
Игнорирование возвращаемой ошибкиЛогические и тихие ошибки/ Логическая ошибка
Надежда, что `string(3.14)` превратит число в текстОшибки сборки/ Компиляция/ Семантическая
Перепутан порядок аргументов в `strconv.FormatFloat`Ошибки сборки/ Компиляция/ Семантическая
Неожиданное округление в `fmt.Sprintf("%.Nf", x)`Логические и тихие ошибки/ Логическая ошибка
Ожидание, что `fmt.Sprint(0.1+0.2)` даст "0.3"Логические и тихие ошибки/ Логическая ошибка
Потеря точности при `float64` → `float32`Логические и тихие ошибки/ Логическая ошибка
Прямое приведение `float` → `uint` для отрицательных чиселЛогические и тихие ошибки/ Логическая ошибка
Надежда на математическое округление при `float` → `int`Логические и тихие ошибки/ Логическая ошибка
Константы и переменные ведут себя по-разномуЛогические и тихие ошибки/ Логическая ошибка
Потеря точности при преобразовании `int` → `float32` → `int`Логические и тихие ошибки/ Логическая ошибка
Неправильное форматирование с ведущими нулямиЛогические и тихие ошибки/ Логическая ошибка
Путают `fmt.Sprint` и `strconv.Itoa` по производительностиЛогические и тихие ошибки/ Логическая ошибка
Не приводят к `int64` для `FormatInt` | `FormatUint`Ошибки сборки/ Компиляция/ Семантическая
Забывают про основание системы счисленияЛогические и тихие ошибки/ Логическая ошибка