Неявное преобразование и явное преобразование в c - PullRequest
2 голосов
/ 15 мая 2019

Выполнение явного преобразования приводит к неявному преобразованию операндов в выражении в c?

Пример:

 int x =10, y=20;
 float C =( float) x/y;

Здесь x явно преобразуется в float. приводит ли это преобразование к неявному преобразованию y?

1 Ответ

2 голосов
/ 15 мая 2019

В данном конкретном случае это так.

После приведения у вас есть int и float в качестве операндов оператора /.В этот момент применяются обычные арифметические преобразования , и значение y преобразуется в тип с плавающей запятой, поэтому оба операнда имеют общий тип.

Не было бы неявного преобразования, если, например,тип y был плавающим, так как оба операнда / имели бы одинаковый тип.

...