absolute | end | inline | procedure | type |
and | external | interface | program | unit |
array | file | interrupt | record | until |
begin | for | label | repeat | uses |
case | forward | mod | set | var |
const | function | nil | shl | while |
div | goto | not | shr | with |
do | if | of | string | xor |
downto | implementation | or | then | |
else | in | packed | to |
Последние версии языка содержат еще ряд служебных слов, относящихся к работе с объектами и встроенным ассемблером.
2.2. Идентификаторы
Идентификатором называется символическое имя определенного программного объекта. Такими объектами являются имена констант, переменных, типов данных, процедур и функций, программ. С помощью синтаксической диаграммы идентификатор можно определить, как показано на рис.1.
Рис.1
Расшифровать это можно так: идентификатор – это любая последовательность букв и цифр, начинающаяся с буквы. В Турбо Паскале к буквам приравнивается также знак подчеркивания. Строчные и прописные буквы в идентификаторах и служебных словах не различаются. Например: max, MAX, MaX и mAx – одно и то же имя.
Длина идентификатора может быть произвольной, но значащими являются только первые 63 символа.
2.3. Комментарии
Следующие конструкции представляют собой комментарии и поэтому игнорируются компилятором:
{любой текст, не содержащий символ «}»}
(*любой текст, не содержащий символы «*)»*)
Буквы русского алфавита употребляются только в комментариях, в литерных и текстовых константах.
Строка, начинающаяся с символов {$ или (*$, является директивой компилятора. За этими символами следует мнемоника команды компилятора.
3. ЛЕКСИКА ЯЗЫКА ПРОГРАММИРОВАНИЯ СИ
Множество символов Си включает большие и малые буквы латинского алфавита и 10 десятичных арабских цифр:
- большие заглавные буквы:
- малые строчные буквы:
- десятичные цифры:
0123456789
буквы и цифры используются при формировании констант, идентификаторов и ключевых слов. Компилятор Си рассматривает одну и ту же малую и большую буквы как различные символы.
Пробельные символы. Пробел, табуляция, перевод строки, возврат каретки, новая страница, вертикальная табуляция и новая строка – это символы, называемые пробельными, поскольку они имеют то же самое назначение, что и пробелы между словами и строками на печатной странице. Эти символы разделяют объекты программы.
Знаки пунктуации и специальные символы из множества символов Си используются для различных целей, от организации текста программы до определения заданий, которые будут выполнены компилятором или откомпилированной программой (табл. 3.1).
Таблица 3.1. Знаки пунктуации и специальные символы
Символ | Наименование | Символ | Наименование |
, | Запятая | ! | Восклицательный знак |
. | Точка | | | Вертикальная черта |
; | Точка с запятой | / | Наклонная черта вправо |
: | Двоеточие | \ | Наклонная черта влево |
? | Знак вопроса | ~ | Тильда |
` | Одиночная кавычка | _ | Подчеркивание |
( | Левая круглая скобка | # | Знак номера |
Символ | Наименование | Символ | Наименование |
) | Правая круглая скобка | % | Знак процента |
{ | Левая фигурная скобка | & | Амперсанд |
} | Правая фигурная скобка | ^ | «Крышка», Caret |
< | Левая угловая скобка | - | Знак минус |
> | Правая угловая скобка | = | Знак равно |
[ | Левая квадратная скобка | + | Знак плюс |
] | Правая квадратная скобка |
ESC-последовательности (эскейп-последовательности) – это специальные символьные комбинации, которые представляют пробельные и неграфические символы в строках и символьных константах. Их типичное использование связано со спецификацией таких действий, как возврат каретки и табуляция, а также для задания символьных представлений некоторых кодов. ESC-последовательность состоит из наклонной черты влево, за которой следует буква, знаки пунктуации или комбинация цифр.
В табл. 3.2 приведен список ESC-последовательностей языка Си.
Таблица 3.2. ESC-последовательности
ESC-последовательность | Наименование |
\n | Новая строка |
\t | Горизонтальная табуляция |
\v | Вертикальная табуляция |
\b | Пробел |
\r | Возврат каретки |
\f | Новая страница |
\a | Звонок (сигнал) |
\ | Одиночная кавычка |
\” | Двойная кавычка |
\ | Наклонная черта влево |
\ddd | ASCII символ с восьмеричным представлением |
\xdd | ASCII символ в шестнадцатеричном представлении |
Если наклонная черта влево предшествует символу, не включенному в этот список, то наклонная черта влево игнорируется. Например, изображение \c представляет символ «с» в символьной строке или констант-символе.
Последовательности \ddd и \xdd позволяют задать любой символ в ASCII как последовательность от одной до трех восьмеричных цифр или от одной до двух шестнадцатеричных цифр. Например, символ пробела может быть задан как \010, \10, \x08 или \x8. Код ASCII «нуль» может быть задан как \0 или \x0.
Операции. Операции – это специальные комбинации символов, задающие действия по преобразованию различных величин.
В табл. 3.3 представлен список операций. Операции должны использоваться точно так, как они представлены в таблице: без пробельных символов между символами в тех операциях, которые представлены несколькими символами.
Таблица 3.3. Операции
Операция | Наименование | Операция | Наименование |
! | Логическое НЕ | | | Логическое ИЛИ |
~ | Побитовое дополнение | && | Логическое И |
+ | Сложение | ?: | Операция условного выражения |
- | Вычитание, арифметическое отрицание | ++ | Инкремент |
* | Умножение | -- | Декремент |
/ | Деление | = | Простое присваивание |
% | Остаток | += | Сложение с присваиванием |
<< | Сдвиг влево | -= | Вычитание с присваиванием |
>> | Сдвиг вправо | *= | Умножение с присваиванием |
< | Меньше | /= | Деление с присваиванием |
<= | Меньше или равно | %= | Остаток с присваиванием |
> | Больше | >>= | Сдвиг вправо с присваиванием |
>= | Больше или равно | <<= | Сдвиг влево с присваиванием |
Операция | Наименование | Операция | Наименование | ||
== | Равно | &= | Побитовое И с присваиванием | ||
!= | Не равно | |= | Побитовое включающее ИЛИ с присваиванием | ||
& | Побитовое И, адрес от | ^= | Побитовое исключающее ИЛИ с присваиванием | ||
| | Побитовое включающее ИЛИ | , | Последовательное выполнение (запятая) | ||
^ | Побитовое исключающее ИЛИ |
Ключевые слова. Ключевые (зарезервированные) слова – это предопределенные последовательности символов, которые имеют специальное значение для компилятора Си. Их можно использовать только так, как они определены. Имена объектов программы не могут совпадать с названиями ключевых слов.