Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_Ч1(программирование).doc
Скачиваний:
52
Добавлен:
01.03.2016
Размер:
1.83 Mб
Скачать

Переліки

Переліки – це типи, яким відповідають набори цілочислових констант, кожна з яких має унікальне ім’я.

Оголошення переліку має такий вигляд:

enum <імя переліку> {<список іменованих константз>};

Наприклад, якщо ми захочемо перефарбувати вікно консолі, або змінити колір тексту, що виводиться на консоль, нам потрібно буде оперувати з поняттям колір. Кожний колір для консолі кодується цілим числом. Нулю відповідає чорний, одиниці – синій і т.д. Але пам’ятати номери кольорів не дуже зручно. Зручніше користуватися іменами з такого переліку:

enum consoleColors{

BLACK, BLUE, GREN, CYAN, RED, MAGENTA, BROWN, LIGHTGRAY, DARKGRAY, LIGHTBLUE,

LIGHTGREN, LIGHTCYAN, LIGHTRED, LIGHTMAGENTA, YELLOW, WHITE

};

Стандартно перший елементу переліку має значення 0, а кожний наступний має значення на 1 більше, ніж попередній.

У разі потреби елементам можна присвоювати інші значення.

Цілочислові константи

Цілочислові константи можна записувати у трьох формах: десятковій, вісімковій та шістнадцятковій.

Десяткова константа являє собою послідовність десяткових цифр, перед якою може бути знак + або -. Наприклад, 123, -234, +456.

Вісімкова константа завжди починається з 0 і може мати у своєму складі тільки цифри від 0 до 7. Наприклад, 015, 0777. Зверніть увагу на те, що константи 125 і 0125 мають різне значення. Десяткове значення константи 0125 дорівнює 85 (1*64+2*8+5*1) .

Шістнадцяткові константи позначаються префіксом 0х. До їх складу, окрім десяткових цифр можуть також входити шістнадцяткові цифри (A, B, C, D, E, F). Наприклад, числу 0x12A відповідає десяткове число 298 (1*256+2*16+1*10).

Шістнадцяткові константи дуже зручно використовувати для представлення двійкових кодів, бо кожній шістнадцятковій цифрі відповідає 4 двійкових (тетрада). Так число 0x815F у двійковій формі буде виглядати так: 1000 0001 0101 1111.

Тип константи встановлюється компілятором за її значенням. Для не занадто великих констант встановлюється тип int, а якщо ця константа вісімкова або шістнадцяткова то тип unsignedint.Але є можливість і примусово встановити тип константи. Для цього до константи долучають кінцеві символи U(unsigned)таL(long).Наприклад, константа 1UL, незважаючи на те, що вона має маленьке значення отримає тип unsignedlong.

Символьні константи

Символьні константи поділяються на графічні символи , керуючі слеш-символи та ескейп-послідовності. У будь якому варіанті символьні константи розташовують між одинарними лапками. Наведемо приклади символьних констант: ‘a’ (літера а), ‘\a’ (звуковий сигнал), ‘\x0a’ (перехід на новий рядок).

Більш докладно із спеціальними керуючими символами ви можете ознайомитися у підручнику [4]на сторінках 12-16 та 34-35.

Константи дійсних типів

У пам’яті комп’ютера дані цього типу зберігаються у формі з плаваючою крапкою. При такому записі число представляється у вигляді мантиси і порядку. Стандартно мантиса у двійковому коді починається з 1, а десяткова має значення більше або рівне 1, але менше 10. Порядок може бути позитивним чи негативним і показує, на скільки порядків реальне число менше або більше мантиси. Перевага такої форми запису полягає в тому, що не доводиться писати незначущі нулі. Довжина запису залежить тільки від кількості значущих цифр і не залежить від значення числа. Наприклад, числа 123450000 і 0.0000000012345 будуть представлені як 1.2345е +8 і 1.2345е-9. Це зручно як для запису чисел на папері, так і для зберігання чисел в пам'яті комп'ютера. Та у програмах дотримуватися цього стандарту не обов’язково. Інколи зручніше записувати дійсні константи у звичайній формі, з фіксованою крапкою.

Дійсний тип даних дозволяє оперувати з дробовими десятковими числами в дуже широкому діапазоні і з високою точністю, тому дані цього типу найбільш часто використовуються для інженерних розрахунків. З граничними параметрами дійсних типів можна ознайомитися у підручнику[1] насторінці37.

За правилом замочування константи зберігаються у пам’яті як числа типу double.Але є можливість і примусово встановити тип константи. Для цього до константи долучають кінцеві символи F(float)абоL(longdouble).