Преобразования типов (C)
Преобразования типов зависят от указанного оператора и типа операнда или операторов. Преобразования типов выполняются в следующих случаях:
Когда значение одного типа присваивается переменной другого типа или оператор преобразует тип своего операнда или операндов до выполнения операции
Когда значение одного типа явно приводится к другому типу
Когда значение передается в качестве аргумента в функцию или когда тип возвращается из функции
Символ, короткое целое число или целое битовое поле, со знаком или без, а также объект типа перечисления можно использовать в выражении везде, где можно использовать целое число. Если int может представлять все значения исходного типа, значение преобразуется в int; в противном случае оно преобразуется в unsigned int. Этот процесс называется "восходящим приведением целого типа". Восходящее приведение целого типа сохраняет значение. То есть гарантируется, что значение после приведения будет таким же, как до него. Дополнительные сведения см. в разделе Обычные арифметические преобразования.