Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Константи



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

1. Цілі константи можуть бути десятковими, вісімковими або шістнадцятковими.

Десяткова константа - послідовність десяткових цифр (від 0 до 9), яка починається не з нуля якщо це число не нуль. Приклади десяткових констант: 10, 132, 1024.

Вісімкові константи починаються з символу 0, після якого розміщуються вісімкові цифри (від 0 до 7). Наприклад: 023. Запис константи вигляду 08 буде сприйматися компілятором як помилка, так як 8 не є вісімковою цифрою.

Шістнадцяткові константи починаються з символів 0х або 0Х, після яких розміщуються шістнадцяткові цифри (від 0 до F, можна записувати їх у верхньому чи нижньому регістрах). Наприклад: 0ХF123.

2. Дійсні константи складаються з цілої частини, десяткової крапки, дробової частини, символу експоненти (e чи E) та показника степеня. Дійсні константи мають наступний формат представлення:

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

У записі константи можуть бути опущені ціла чи дробова частини (але не обидві разом), десяткова крапка з дробовою частиною чи символ E (e) з показником степеня (але не разом). Приклади дійсних констант: 2.2, 220е-2, 22.Е-1,.22Е1.

Якщо потрібно сформувати від'ємну цілу або дійсну константу, то перед константою необхідно поставити знак унарного мінуса.

3. Символьні константи. Символьна константа - це один або декілька символів, які заключені в апострофи. Якщо константа складається з одного символу, вона займає в пам'яті 1 байт (тип char). Двосимвольні константи займають в пам'яті відповідно 2 байти (тип int).

Послідовності символів, які починаються з символу \ (обернений слеш) називаються керуючими або escape-послідовностями (таблиця 1.1).

Таблиця 1.1. Escape-послідовності
Спеціальний символ Шістнадцятковий код Значення
\a   звуковий сигнал
\b   повернення на 1 символ
\f 0C переведення сторінки
\n 0A перехід на наступний рядок
\r 0D повернення каретки
\t   горизонтальна табуляція
\v 0B вертикальна табуляція
\\ 5C символ \
\'   символ '
\"   символ "
\? 3F символ?
\0   нульовий символ
\0ddd - вісімковий код символу
\0xddd ddd шістнадцятковий код символу

4. Рядкові константи записуються як послідовності символів, заключених в подвійні лапки.

"Це рядковий літерал!\n"

Для формування рядкових констант, які займають декілька рядків тексту програми використовується символ \ (обернений слеш):

"Довгі рядки можна розбивати на \

частини"

Загальна форма визначення іменованої константи має вигляд:

const тип ім'я = значення;

Модифікатор const попереджує будь-які присвоювання даному об'єкту, а також інші дії, що можуть вплинути на зміну значення. Наприклад:

const float pi = 3.14l5926;

const maxint = 32767;

char *const str="Hello,P...!"; /* покажчик-константа */

char const *str2= "Hello!"; /* покажчик на константу */

Використання одного лише модифікатору const еквівалентно const int.

1.2.4 Коментарі

Текст на Сі, що міститься у дужках /* та */ ігноруватиметься компілятором, тобто вважатиметься коментарем до програми. Такі коментарі можуть розміщуватися в будь-якому місці програми.

Коментарі здебільшого використовуються для "документування програм" та під час їх відлагодження. В програму бажано вміщувати текст, що хоч якось пояснює її роботу та призначення. Проте не слід надто зловживати коментарями, а використовувати більш розумні форми найменування змінних, констант, функцій тощо. Якщо, наприклад, функція матиме назву add_matrix, очевидно не зовсім раціональним буде включення у програму після її заголовної частини коментар про те, що:

/*функція обчислює cуму матриць */

У цьому випадку ім'я функції пояснює її призначення. У більш сучасних версіях Сі широко застосовується так званий угорський запис імен, коли ім'я змінної містить в собі інформацію про її призначення і тип.

1.2.5 Ключові слова

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

Наводимо перелік ключових слів мови Сі:

auto continue float interrupt short unsigned
asm default for long signed void
break do far near sizeof volatile
case double goto pascal static while
cdecl else huge switch struct  
char enum if register typedef  
const extern int return union  

1.3 Структура програми. Базові типи даних

1.3.1 Функція main(): з цього все починається

Усі програми, написані на мові Сі, повинні містити в собі хоча б одну функцію. Функція main() - вхідна точка будь-якої програмної системи, причому немає різниці, де її розміщувати. Але потрібно пам'ятати наступне: якщо вона буде відсутня, завантажувач не зможе зібрати програму, про що буде виведене відповідне попередження. Перший оператор програми повинен розміщуватися саме в цій функції.

Мінімальна програма на мові Сі має вигляд:

main()

{

return 0;

}

Функція починається з імені. В даному прикладі вона не має параметрів, тому за її ім'ям розташовуються порожні круглі дужки (). Далі обидві фігурні дужки {...} позначають блок або складений оператор, з яким ми працюватимемо, як з єдиним цілим. У Паскалі аналогічний зміст мають операторні дужки begin... end.

Мінімальна програма має лише один оператор - оператор повернення значення return. Він завершує виконання програми та повертає в нашому випадку деяке ціле значення (ненульове значення свідчить про помилки в програмі, нульове про успішне її завершення). Виконання навіть цієї найпростішої програми, як і решти багатьох, проходить у декілька етапів (рис 1.1.).

код запуску функція main() код завершення

Рис. 1.1. Етапи виконання програми на мові Сі

1.3.2 Базові типи даних

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

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

Арифметичні типи даних об'єднують цілі та дійсні, цілі у свою чергу - декілька різновидів цілих та символьних типів даних. Скалярні типи включають в себе арифметичні типи, покажчики та перелічувані типи. Агрегатні або структуровані типи містять в собі масиви, структури та файли. Нарешті функції представляють дещо особливий клас, який слід розглядати окремо.

Базові типи даних Сі можна перерахувати у наступній послідовності:





Дата публикования: 2015-01-23; Прочитано: 345 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...