C: Приведение типов

Приведение типов является методом, позволяющим преобразовать переменную одного типа в переменную другого типа. Для приведения типа переменной перед ней записывается идентификатор целевого типа в круглых скобках.

int kelvin;
float celsius = 20.5;

kelvin = (int)celsius - 253;

Таким образом могут изменяться типы даже символьных переменных.

int value;
char letter = A;

value = (int)letter;

В большинстве случаев приведение типов осуществляется автоматически силами компилятора, однако при возникновении сомнений следует осуществлять приведение типов в явном виде для того, чтобы гарантированно получить результат нужного типа.

Типичным примером ситуации, в которой необходимо явное приведение типов, является деление двух целочисленных значений, в результате которого необходимо получить значение с плавающей точкой.

int a = 9;
int b = 2;
float answer;

answer = (float)a / (float)b;

Пример

В примере переменная с плавающей точкой преобразуется в целочисленную переменную. В результате дробная часть значения отбрасывается.

  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.     int intnumber;
  6.     float floatnumber = 9.75;
  7.    
  8.     intnumber = (int)floatnumber;
  9.     printf("%in", intnumber);
  10.    
  11.     return 0;
  12. }

Загрузить исходный код примера