Арифметические преобразования типов

Преобразования типов выполняются, если операнды, входящие в выражения, имеют различные типы. Ниже приведена последовательность преобразований.

· Любые операнды типа char, unsigned char или short преобразуются к типу int по правилам:

ü char расширяется нулем или знаком в зависимости от умолчания для char;

ü unsigned char расширяется нулем;

ü signed char расширяется знаком;

ü short, unsigned short и enum при преобразовании не изменяются.

ü Затем любые два операнда становятся либо int, либо float, double или long double.

· Если один из операндов имеет тип long double, то другой преобразуется к типу long double.

· Если один из операндов имеет тип double, то другой преобразуется к типу double.

· Если один из операндов имеет тип float, то другой преобразуется к типу float.

· Иначе, если один из операндов имеет тип unsigned long, то другой преобразуется к типу unsigned long.

· Иначе, если один из операндов имеет тип long, то другой преобразуется к типу long.

ü □ Иначе, если один из операндов имеет тип unsigned, то другой преобразуется к типу unsigned.

ü □ Иначе оба операнда должны иметь тип int.

Тип результата тот же, что и тип участвующих в выражении операндов.


 

Лекция № 4. Структура программы. Операции. Выражения








Дата добавления: 2015-10-09; просмотров: 1145;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.