Основы программирования на C++, PASCAL
4.2. Элементы языка Си++
Алфавит. В алфавит языка Си++ входят:
• латинские буквы: от а до z (строчные) и от A до Z (прописные);
• десятичные цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9;
• специальные символы: " { } , I [ ] ( ) + - / % \ ; ' : ? < = > _ ! & # ~ ^ . *
К специальным символам относится также пробел. В комментариях, строках и символьных константах могут использоваться и другие знаки (например, русские буквы).
Комбинации некоторых символов, не разделенных пробелами, интерпретируются как один значимый символ. К ним относятся:
++ — == && || «»>=<=+=-=*=/=?: /**///
В Си++ в качестве ограничителей комментариев могут использоваться как пары символов /* и */, принятые в языке Си, так и символы //, используемые только в Си++. Признаком конца такого комментария является невидимый символ перехода на новую строку. Примеры:
/* Это комментарий, допустимый в Си и Си++ */
// Это строчный комментарий, используемый только в Си++
Из символов алфавита формируются лексемы — единицы текста программы, которые при компиляции воспринимаются как единое целое и не могут быть разделены на более мелкие элементы. К лексемам относятся идентификаторы, служебные слова, константы, знаки операций, разделители.
Идентификаторы. Последовательность латинских букв, цифр, символов подчеркивания (_), начинающаяся с буквы или символа подчеркивания, является идентификатором. Например:
В12 rus hard_RAM_disk MAX ris_32
В отличие от Паскаля в Си/Си++ различаются прописные и строчные буквы. Это значит, что, например, flag, FLAG, Flag, FlAg — разные идентификаторы.
Ограничения на длину идентификатора могут различаться в разных реализациях языка. Компиляторы фирмы Borland позволяют использовать до 32 первых символов имени. В некоторых других реализациях допускаются идентификаторы длиной не более 8 символов.
Служебные (ключевые) слова. Как и в Паскале, служебные слова в Си — это идентификаторы, назначение которых однозначно определено в языке. Они не могут быть использованы как свободно выбираемые имена. Полный список служебных слов зависит от реализации языка, т. е. различается для разных компиляторов. Однако существует неизменное ядро, которое определено стандартом Си++. Вот его список:
Дополнительные к этому списку служебные слова приведены в описаниях конкретных реализаций Си++. Некоторые из них начинаются с символа подчеркивания, например: ^export, _ds, _AH и др. Существуют служебные слова, начинающиеся с двойного подчеркивания. В связи с этим программисту не рекомендуется использовать в своей программе идентификаторы, начинающиеся с одного или двух подчеркиваний, во избежание совпадения со служебными словами.