Шаг 20.
Преобразование типов

    На этом шаге мы перечислим правила, которые используются при преобразовании типов.

    Если в выражениях встречаются операнды разных типов, то они преобразуются к общему типу в соответствии в определенными правилами:

    Неявные преобразования типов, которые мы обсуждали до сих пор, выполнялись автоматически. Кроме того, существует возможность явно указывать тип данных, к которому необходимо привести некоторую величину. Этот способ называется преобразованием (приведением) типов и используется следующим образом: перед данным выражением в круглых скобках записывается имя требуемого типа:

   (Спецификация_типа) Выражение
Например: z = (int)x + (int)y;.

    Скобки и имя типа (вместе) образуют операцию, называемую приведение типов.

    Пример.

   #include <iostream.h>
   main ()
   {
      float f=32.57;
      int i;
      /* ------------------------------------------------ */
      i = (int) f;   
      cout<<"f="<<f<<", i="<<i<<endl;
      i = 4;     f = (float) i; 
      cout<<"f="<<f<<", i="<<i<<endl;
      f = i/3; cout<<"f="<<f<<endl;
      f = (float)i/3; cout<<"f="<<f<<endl;
   }
Текст этой программы можно взять здесь.

Вообще говоря, вы не должны смешивать типы; вот почему в некоторых языках программирования это запрещено. Но бывают ситуации, когда это оказывается полезным. Философия языка C++ заключается в том, чтобы не устанавливать барьеров на вашем пути, но при этом возложить на вас всю ответственность за злоупотребление предоставленной свободой.

    Следующий шаг посвящен операции "запятая".


Предыдущий шаг Содержание Следующий шаг