Програмування С, С++теорія та практика (частина 1)
1.3.3 Перетворення типу
Згадаємо, що компілятор Паскаля виконує автоматичне перетворення типів даних, особливо в математичних виразах, коли найчастіше цілочисельний тип перетворюється у тип з плаваючою комою. Цей стиль підтримує і Сі, причому значення типу скаг та іпі в арифметичних виразах змішуються: кожний з таких символів
автоматично перетворюється в ціле. Взагалі, якщо операнди мають
різні типи, перед тим, як виконати операцію, молодший тип “підтягується” до старшого. Результат - старшого типу. Отже,
• скаг та зкогі перетворюються в іпі;
• /Іоаі перетворюється в йоиЬІе;
• якщо один з операндів Іопд йоиЬІе, то і другий перетворюється в
Іопд йоиЬІе;
• якщо один з операндів Іопд, тоді другий перетворюється відповідно до того ж типу, і результат буде Іопд;
• якщо один з операндів ипзідпей, тоді другий перетворюється відповідно до того ж типу, і результат буде ипзідпей.
Приклад:
йоиЬІе зй;
ипзідпей. сЬаг сЬ;
ипзідпей Іопд іп;
іп£ і ;
/* ... */
зй = £^*(і+сЬ/іп);
При виконанні оператора присвоювання в даному прикладі правила перетворення типів будуть використані наступним чином. Операнд ск перетворюється до ипзідпей іпі. Після цього він перетворюється до типу ипзідпей Іопд. За цим же принципом і перетворюється до ипзідпей Іопд і результат операції, що розміщена в круглих дужках буде мати тип ипзідпей Іопд. Потім він перетворюється до типу йоиЬІе і результат всього виразу буде мати тип йоиЬІе.
Взагалі, тип результату кожної арифметичної операції виразу є тип того операнду, який має у відповідності більш високий тип приведення.
Але, окрім цього в Сі, з’являється можливість і примусового перетворення типу, щоб дозволити явно конвертувати (перетворювати) значення одного типу даних в інший. Загальний синтаксис перетворення типу має два варіанти :
1) . (новий_тип) вираз ;
2) . новий_тип (вираз) ;
Обидва варіанти перетворення виглядають так:
сЬаг Іе'Ь'Ьег = 'а' ;
іп£ пазс = іп£ (Іе'Ь'Ьег) ;
Іопд іазс = (Іопд) Іе'Ь'Ьег;
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
Схожі підручники
- Голубая звезда (онлайн)
- ТЕОРЕТИКО-МЕТОДИЧНІ ОСНОВИ ІНВЕСТУВАННЯ
- Реферат на тему « Особливості та недоліки оподаткування операцій з недержавного пенсійного забезпечення в Україні »
- Загальні питання з курсу Соціологія (частина 1)
- Українська мова за професійним спрямуванням. Навчальний посібник (частина 4)
- Бонківська Система задачі
