Ідентифікатори, зарезервовані слова, літерали, управляючі послідовності
- 1. Що таке ідентифікатор в C++? Які існують правила побудови ідентифікатора?
- 2. Які елементи мови C++ забороняється використовувати в якості ідентифікатора?
- 3. Що таке літерали в мові C++?
- 4. Яким чином компілятор розпізнає цілочисельні літерали?
- 5. Яким чином компілятор розпізнає літерали з плаваючою комою?
- 6. Яким чином в C++ записуються шістнадцяткові та вісімкові літерали?
- 7. Що таке управляючі послідовності символів?
- Зв’язані теми
Пошук на інших ресурсах:
1. Що таке ідентифікатор в C++? Які існують правила побудови ідентифікатора?
Ідентифікатор представляє собою ім’я, яке присвоюється змінній, константі, функції, власному типу чи іншому елементу, що визначається користувачем. Ідентифікатори можуть складатися з одного чи декількох символів. Імена змінних повинні починатися з букви або символу підкреслення.
В мові C++ рядкові та прописні символи розглядаються як різні символи (на відміну від мови Паскаль).
Приклади ідентифікаторів:
x max Delta my_method w23x5
⇑
2. Які елементи мови C++ забороняється використовувати в якості ідентифікатора?
У мові C++ не можна використовувати в якості ідентифікаторів ключові слова.
Приклади ключових слів мови C++:
asm auto bool break case catch char class const const_class continue default delete do double dinamic_cast else enum explicit export extern false float for friend goto if inline int long mutable namespace new operator private protected public register reinterpret_cast return short signed sizeof static static_cast struct switch template this throw true try typedef typeid typename union unsigned using virtual void volatile wchar_t while
⇑
3. Що таке літерали в мові C++?
Літерали – це фіксовані значення (константи), які не можуть бути змінені програмою. Літерали (константи) можуть мати будь-який базовий тип даних. Спосіб представлення кожної константи залежить від її типу.
Приклади літералів:
23 -8.45 's' L'A' 12.345F 4.3e-8 4.3E-8 1300L
⇑
4. Яким чином компілятор розпізнає цілочисельні літерали?
Компілятор C++ пробує визначити тип літерала самостійно на основі його значення.
Наприклад, для 16-розрядного середовища:
- число 23 зв’язується з типом int;
- число 300929 зв’язується з типом long int.
Якщо потрібно примусово встановити значення long int, тоді до літералу потрібно додати суфікс ‘L‘ або ‘l‘. Наприклад:
20L -300l
Якщо потрібно встановити значення літералу як беззнакового (з префіксом unsigned), тоді до літералу додається суфікс ‘U‘ або ‘u‘.
Наприклад:
1500uL // тип unsigned long int 1500U // unsigned int 1500u // unsigned int 1500ul // unsigned long int 1500UL // unsigned long int
⇑
5. Яким чином компілятор розпізнає літерали з плаваючою комою?
За замовчуванням, усі константи з плаваючою комою мають тип double. Якщо потрібно встановити тип float, тоді до константи потрібно додати суфікс ‘f‘ або ‘F‘. Якщо потрібно встановити тип long double, тоді до константи додається суфікс ‘l‘ або ‘L‘.
Наприклад:
9000.0009f // float 8888.777F // float 111.222 // double 0.33L // long double -56785757574.33l // long double
⇑
6. Яким чином в C++ записуються шістнадцяткові та вісімкові літерали?
Часто в програмах доцільним є використання шістнадцяткової або вісімкової систем числення замість десяткової. Запис літералів у шістнадцятковій або вісімковій системах числення використовується тільки для цілочисельних типів.
У вісімковій системі числення використовуються цифри від ‘0‘ до ‘7‘.
У шістнадцятковій системі числення використовуються цифри від ‘0‘ до ‘9‘ та літери від ‘A‘ до ‘F‘.
Вісімкові літерали починаються з префіксу ‘0‘.
Шістнадцяткові літерали починаються з префіксу ‘0x‘ або ‘0X‘.
Наприклад:
010 // Число 10 у вісімковій системі числення 055 // вісімкова система числення 0x10 // шістнадцяткова система числення 0XAFD // шістнадцяткова система числення
⇑
7. Що таке управляючі послідовності символів?
У мовах програмування існує ряд констант, які неможливо ввести у вихідний текст програми безпосередньо з клавіатури. Наприклад, символ повернення каретки.
Крім того, деякі символи, такі як одинарні або подвійні лапки, в C++ мають спеціальне призначення. Тому, їх інколи, неможливо ввести напряму.
Для уникнення такої проблеми, в мові C++ (та й в інших мовах) введені так звані управляючі послідовності символів. Ці послідовності замінюють символи, що мають спеціальне призначення або символи, що неможливо ввести з клавіатури напряму.
Управляючі символьні послідовності мови C++:
\b - повернення на одну позицію \f - перехід до початку наступної сторінки \n - новий рядок \r - повернення каретки \t - горизонтальна табуляція \" - подвійна лапка \' - одинарна лапка \\ - зворотна дробова риска \v - вертикальна табуляція \a - звуковий сигнал \? - знак питання \N - вісімкова константа (де N - сама вісімкова константа) \xN - шіснадцяткова константа (де N - сама шіснадцяткова константа)
Приклад опису змінної, в яку заноситься символ управляючої послідовності.
char c1, c2; c1 = '\\'; // зворотна дробова риска c2 = '\"'; // подвійна лапка c1 = '\23'; // 23 у вісімковій системі числення c2 = '\x5F'; // 5F у шіснадцятковій системі числення
⇑
Зв’язані теми
- Основні (базові) типи даних Visual C++
- Поняття змінної. Оголошення змінної. Виділення пам’яті для змінної. Константи
- Поняття виразу. Операція присвоєння. Перетворення та приведення типів