Урок 8: Преобразование типов и приведение (casting)
В C у каждого значения есть тип, и тип определяет, как ведут себя операции. Когда обе стороны деления — int, результатом будет целочисленное деление: 5 / 2 равно 2, а не 2.5! Когда вы смешиваете int с double, int автоматически повышается до double (неявное преобразование), но когда обе стороны целые
Целочисленное деление — это как разделить 5 печений между 2 детьми, не ломая ни одного печенья: каждому достаётся по 2, а оставшееся печенье просто исчезает. Приведение — это как принести нож: вдруг становятся возможны и половинки.
- целочисленное деление
- int, делённый на int, отбрасывает остаток: 5 / 2 равно 2, 7 / 4 равно 1.
- неявное преобразование (повышение)
- Когда int и double смешиваются в выражении, int автоматически повышается до double.
- явное приведение
- (double)a — преобразует значение a в double для выражения, не изменяя само a.
- char как число
- char хранит числовой код: 'A' — это 65, поэтому 'A' + 1 равно 66 — буква B.
- %c против %d
- Одно значение, два представления: %c печатает символ, %d печатает его числовой код.