Преобразования назначений
В операциях присваивания тип присваиваемого значения преобразуется в тип переменной, которой присваивается значение. C позволяет при присваивании выполнять преобразования между целочисленными типами и типами с плавающей запятой даже в случае потери данных при преобразовании. Используемый метод преобразования зависит от типов, участвующих в операции присваивания, как описано в разделе Обычные арифметические преобразования и в следующих разделах:
Квалификаторы типа не влияют на допустимость преобразования, хотя в левой части операции присваивания невозможно использовать L-значение const.