-Из интересного в этой программе лишь неявное преобразование типа, которое происходит, когда мы вызываем функцию `sqrt`. Допустим, мы запустили программу и ввели `3` и `4`. В переменную `c2` (типа `int`) будет записано значение `3*3 + 4*4 = 25`. Когда мы пишем вызов функции `sqrt(c2)`, то вместо `c2`, как мы уже знаем, подставляется значение, которое в ней хранится, т.е. `25`, получаем: `sqrt(25)`. Но как нам уже известно, функция `sqrt` ждёт от нас значения типа `double`, а мы ей передали значение типа `int`. Поэтому компилятор сначала выполнит неявное приведение типа: преобразует целое значение `3` в вещественное значение `3.0`.
0 commit comments