Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архив WinRAR / 2_Посібник_С_002.doc
Скачиваний:
39
Добавлен:
17.05.2015
Размер:
2.7 Mб
Скачать

3.5 Класифікація типів даних

Типи даних мови С відіграють важливу роль в обробці даних. Під типом данихрозуміють множину припустимих значень цих даних і множину дозволених операцій над ними. Водночас тип даних визначає і розмір пам'яті, що займають змінні і літерали даного типу. Кожен тип даних має ім'я. Пам'ять не виділяється для типу даних, а виділяється для розміщення змінної або літерала.

У мові С виділяють наступні категорії типів:

- прості типи даних;

- похідні типи даних.

Прості типи мають імена, які є ключовими словами мови.

До простих типів належать: скалярні типи і порожній тип – void.

Тип voidне має значення і введений для опису функцій, які не повертають значень, та для деяких інших цілей.

Скалярні типи поділяються на цілочисельнітадійсні типи.

Cимвольні і цілі типи даних є цілочисельним типом, для якого визначені всі операції з цілими числами.

Похідні типи визначаються на основі простих типів. Похідні типи поділяються на скалярні і структурні (агрегатні).

До скалярних похідних типів належать:

- перерахування (enum) – множина поіменованих цілих значень;

- покажчики (ім'я_типу *);

- посилання (ім'я_типу &).

І’мя типу у покажчиках та посиланнях це один з простих типів.

Структурні похідні типи:

- масиви (тип_елементу ім'я_масиву [число_елементів]);

- структури ( struct );

- об'єднання ( union ).

Ім’ям структурних похідних типів є ідентифікатор визначений користувачем.

На рис. 3.1 зображена класифікація типів даних мови С.

Рисунок 3.1 – Класифікація типів даних

3.6 Літерали

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

У мові С розділяють чотири типи літералів: цілі, дійсні, символьні та стрічкові літерали.

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

Десятковий літерал складається з однієї чи декількох десяткових цифр, причому перша цифра не повинна бути нулем (у противному випадку число буде сприйнято як вісімкове).

Першим символом вісімкового літералає нуль, наступними символами є вісімкові цифри (0, 1, 2, 3, 4, 5, 6, 7, 8).

Шістнадцятковий літералпочинається з обов'язкової послідовності 0х чи 0Х, наступними символами є шістнадцяткові цифри (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F).

Приклади цілих літералів наведені у табл. 3.2.

Таблиця 3.2 . Цілі літерали

Десяткові літерали

Вісімкові літерали

Шістнадцяткові літерали

16

020

0x10

63

077

0x3F

171

0253

0xAB

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

Для того щоб цілий літерал визначити типом long, досить наприкінці літерала поставити букву "l" чи "L".

Приклад 2.Цілі літерали типу long.

5l, 6l, 128L, 0105L, OX2A11L.

Дійснийлітерал– десяткове число, представлене у вигляді дійсної величини з десятковою точкою чи експонентою, має наступний формат:

[ціла частина ].[дробова частина ] [ Е|е [+|-] експонента ] .

Дійсне число, складається з цілої і дробові частини і (чи) експоненти. Дійсні літерали, представляють додатні величини подвоєної точності (мають тип double).

Приклад 3. Дійсні літерали типуdouble.

115.75, 1.5Е-2, -0.025, .075, -0.85Е2

Для того щоб дійсний літерал визначити типом float, досить наприкінці літералу поставити букву "f" чи "F".

Приклад 4. Дійсні літерали типу float

115.75f, 1.5Е-2f, -0.025F, .075F, -0.85Е2f

Символьний літерал– представляє собою символ заключений у одинарні кавички (‘’). Керуюча послідовність розглядається як одиночний символ,тому вона є символьним літералом. Значенням символьного літералу є числовий код символу.

Приклад 5. Символьні літерали.

‘ ’ - пробіл,

‘Q’- буква Q,

‘\n’ - символ нового рядка,

‘\’ - зворотна дробова риса,

‘\t’ – горизонтальна табуляція.

Символьні літерали мають тип int і при перетворенні типів доповнюються знаком.

Стрічковий літерал- послідовність символів (включаючи малі та великі букви російського і латинського алфавітів а також цифри) заключені в подвійні лапки (“”) .

Приклад 6. Стрічкові літерали.

“Бамбарабия Кергуду”, “місто Вінниця”, “Hello world! ”.

У кінець кожного стрічкового літерала компілятором додається нульовий символ, що відповідає керуючій послідовності \0.

Стрічковий літерал має тип char[]. Це означає, що рядок розглядається як масив символів. Відзначимо важливу особливість, число елементів масиву дорівнює числу символів у рядку плюс 1, тому що нульовий символ (символ кінця рядка) також є елементом масиву.

Соседние файлы в папке Архив WinRAR