Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
+ООП_Навч_посібник.doc
Скачиваний:
8
Добавлен:
01.07.2025
Размер:
6.58 Mб
Скачать

3.3. Поняття про літерали

Літерали (ще називаються константами) – це фіксовані значення, які не можуть бути змінені програмою.

Вище було використано літерали в усіх попередніх прикладах програм. А зараз настав час вивчити їх детальніше.

Константи можуть мати будь-який базовий тип даних. Спосіб представлення кожної константи залежить від її типу. Символьні константи поміщають в одинарні лапки. Наприклад 'а' і '%' є символьними літералами. Якщо необхідно присвоїти символ змінної типу char, використовується настанова, подібна до такої:

ch = 'z';

Щоб використовувати двобайтовий символьний літерал (тобто константу типу wchar_t), необхідно, щоби потрібному символу передувала буква L. Наприклад, так:

wchar_t wс;

wc = L'A';

У цьому записі змінній wс присвоюється двобайтова символьна константа, еквівалентна букві А.

Цілочисельні константи задають як числа без дробової частини. Наприклад, 10 і -100 – цілочисельні літерали. Дійсні літерали повинні містити десяткову крапку, за якою знаходиться дробова частина числа, наприклад 11.123. Для дійсних констант можна також використовувати експоненціальне представлення чисел.

Існує два основні дійсні типи: float і double. Окрім того, існує декілька модифікацій базових типів, які утворюються за допомогою модифікаторів типів. Цікаво, а як же компілятор визначає тип літерала? Наприклад, число 123.23 має тип float або double? Відповідь на це запитання складається з двох частин. По-перше, С++-компілятор автоматично робить певні припущення щодо літералів. По-друге, при бажанні програміст може безпосередньо вказати тип літерала.

За замовчуванням компілятор пов'язує цілочисельний літерал з сумісним і одночасно найменшим за займаною пам'яттю тип даних, починаючи з типу int. Отже, для 16-розрядних середовищ число 10 буде пов'язано з типом int, а 103 000 – з типом long int.

Єдиним винятком з правила "найменшого типу" є дійсні (з плинною крапкою) константи, яким за замовчуванням присвоюється тип double. У багатьох випадках такі стандарти роботи компілятора цілком прийнятні. Проте у програміста є можливість точно визначити потрібний тип.

Щоб задати точний тип числової константи, використовується відповідний суфікс. Для дійсних типів діють такі суфікси: якщо дійсне число завершити буквою F, воно оброблятиметься з використанням типу float, а якщо буквою L – типу long double. Для цілочисельних типів суфікс U означає використання модифікатора типу unsigned, а суфікс L – long. Для задавання модифікатора unsigned long треба вказати обидва суфікси U і L. Нижче наведено деякі приклади використання модифікаторів.

Табл. 3.4. Приклади використання модифікаторів для цілих і дійсних типів

Тип даних

Приклади|зразки| констант

int

1,123, 21000, -234

long int

35000L, -34L

unsigned int

10000U, 987U, 40000U

unsigned long

12323UL, 900000UL

float

123.23F, 4.34e-3F

double

23.23, 123123.33, –0.9876324

long double

1001.2L