- •Лекция 2
- •Базовые элементы языка программирования
- •Категории лексем
- •Идентификаторы
- •Ключевые слова
- •Зарезервированные идентификаторы
- •Стандартные идентификаторы
- •Идентификатор пользователя
- •Литералы
- •Целые константы
- •Вещественные константы
- •Константы
- •Булевские (логические) константы
- •Символьные константы
- •Строковые константы
- •Именованные типизированные константы
- •Перечислимые константы
- •Препроцессорные константы
- •Знаки операций
- •Знаки пунктуации
- •Разделители
- •Пробельные разделители
- •В результате изучения материала лекции необходимо знать
Зарезервированные идентификаторы
Стандарт языка определил ряд идентификаторов, которые могут использоваться для альтернативного представления некоторых операций (проверить в среде разработки) и для которых запрещено другое использование (Таблица 2.2).
Таблица 2.2.Зарезервированные идентификаторы С++
-
and &&
or ||
not !
xor ^
and_eq &=
or_eq |=
not_eq !=
xor_eq ^=
bitand &
bitor |
compl ~
Стандартные идентификаторы
Стандартные идентификаторы – используемые в программе предопределенные имена стандартных информационных объектов (например, обозначения стандартных функций и директив препроцессора), могут использоваться и в качестве идентификаторов пользователя (sin, cos, printf, …).
Идентификаторы, начинающиеся с одного (_) или двух символов подчеркивания (__), резервируются для системных целей и не рекомендуются к использованию в качестве имен, выбираемых пользователем.
Идентификатор пользователя
– используемая программистом для обозначения информационных объектов программы последовательность:
прописных или строчных букв латинского алфавита (в последних версиях компиляторов допускаются и символы кириллицы); хороший стиль предполагает запись идентификаторов переменных строчными буквами;
цифр и символов подчеркивания;
начинающаяся с буквы или символа подчеркивания (хотя не рекомендуется начинать идентификаторы с символа подчеркивания, так как они используются в системных программах и библиотеках);
зависящая от регистра клавиатуры (различаются прописные и строчные буквы, поэтому имена Summa и summa – разные);
имеющая произвольную длину; C++ не налагает ограничений на число символов в имени, но некоторые части реализации находятся вне ведения автора компилятора (в частности, загрузчик), и они, к сожалению, такие ограничения налагают (большинство компиляторов различает идентификаторы по первым 32 символам; для большинства препроцессоров уникальны обозначения, различающиеся в первых 6 символах); использование длинных имен идентификаторов для некоторых компиляторов может вызвать проблемы переносимости, поэтому локальные и внешние имена, а также имена для препроцессора необходимо выбирать максимально короткими;
представляющая собой мнемоническое (смысловое) имя (идентификаторы, не имеющие смысловой нагрузки, затрудняют чтение и понимание программы);
для обозначения информационных объектов программы (или как первые символы их идентификаторов) желательно использовать:
буквы i, j, k, l, m, n – для целых значений;
буквы f, d – для вещественных значений;
букву s – для строк;
букву р – для указателей.
в многословных идентификаторах для наглядности отдельные слова отделяют друг от друга символом подчеркивания (например, my_var);
в качестве идентификаторов пользователя нельзя использовать ключевые слова и зарезервированные идентификаторы и можно (! но лучше этого не делать) использовать стандартные идентификаторы.
