Зарезервированное слово
Зарезерви́рованное сло́во (или ключево́е сло́во) — в языках программирования слово, имеющее специальное значение. Идентификаторы с такими именами запрещены.
В лексическом анализе зарезервированное слово фигурирует как одна лексема особого типа.
Содержание
Примеры
Директива
read и write являются директивами, в отличие от идентификатора write в коде
Зарезервированные слова и языконезависимая спецификация
Зарезервированные слова представляют определённую проблему при переводе текста с языка на язык (а иногда даже с компилятора на компилятор) и при написании ПО, разные части которого написаны на разных языках — может случиться, что на языке А будет создан идентификатор, который является зарезервированным словом языка Б и поэтому он окажется недоступным. Обычно стараются избегать слов, которые в каком-либо из широко известных языков являются зарезервированными. Впрочем, бывает, что при расширении языка слово из разрешённого переходит в зарезервированные. Вот несколько способов решения этой проблемы.
См. также
![]() |
Полезное
Смотреть что такое «Зарезервированное слово» в других словарях:
зарезервированное слово — Ключевое слово, использование которого запрещено в иных целях, кроме указанной. [ГОСТ 28397 89] Тематики языки программирования EN reserved word … Справочник технического переводчика
Зарезервированное слово — 5. Зарезервированное слово Reserved word Ключевое слово, использование которого запрещено в иных целях, кроме указанной Источник: ГОСТ 28397 89: Языки программирования. Термины и определения оригинал документа … Словарь-справочник терминов нормативно-технической документации
зарезервированное слово — atsarginis žodis statusas T sritis automatika atitikmenys: angl. key word; reserves word vok. reserviertes Wort, n rus. зарезервированное слово, n pranc. mot réservé, m … Automatikos terminų žodynas
Ключевое слово — О термине из программирования см. Зарезервированное слово. Ключевое слово слово в тексте, способное в совокупности с другими ключевыми словами представлять текст (см. релевантность). В вебе используется главным образом для поиска. Набор… … Википедия
ГОСТ 28397-89: Языки программирования. Термины и определения — Терминология ГОСТ 28397 89: Языки программирования. Термины и определения оригинал документа: 38. Автоматическое распределение памяти Automatic storage allocation Выделение памяти при входе в программный блок для локальных переменных и ее… … Словарь-справочник терминов нормативно-технической документации
Ключевые слова — О термине из программирования см. Зарезервированное слово. Ключевое слово слово в тексте, способное в совокупности с другими ключевыми словами представлять текст (см. релевантность). В вебе используется главным образом для поиска. Набор ключевых … Википедия
Self — объектно ориентированный, прототипный язык программирования, который задумывался как развитие языка Smalltalk. Разрабатывался в лаборатории Xerox PARC, а потом в Стэндфордском университете. Это была экспериментальная разработка, целью которой… … Википедия
GOTO — (англ. go to «перейти к») в некоторых языках программирования оператор безусловного перехода (перехода к определённой точке программы, обозначенной номером строки либо меткой). В более широком смысле, под «GOTO»… … Википедия
Self (язык программирования) — Self объектно ориентированный, прототипный язык программирования, который задумывался как развитие языка Xerox PARC, а потом в Стэндфордском университете. Это была экспериментальная разработка, целью которой было выяснить, насколько далеко можно… … Википедия
Where (SQL) — WHERE оператор в SQL, указывающий, что оператор языка управления данными (DML) должен действовать только на записи, удовлетворяющие определенным критериям. Критерии должны быть описаны в форме предикатов. Раздел WHERE не обязательный… … Википедия
BestProg
Ключевые слова C#. Зарезервированные слова. Контекстные слова
Содержание
Поиск на других ресурсах:
1. Определение ключевого слова
В общем случае ключевое слово – это средство языка программирования, которое:
В языке программирования C# существует ряд ключевых слов, которые используются для построения программ.
2. Какие общие типы ключевых слов определены в языке C#?
В языке программирования C# определены два общих типа ключевых слов:
3. Зарезервированные ключевые слова. Список
В языке программирования C# используются следующие зарезервированные ключевые слова:
4. Контекстные слова. Перечень
Контекстные слова приобретают особое значение при определенных условиях (определенном контексте). В этих условиях (контексте) эти слова имеют значение зарезервированных слов. За пределами контекста эти слова могут использоваться в качестве имен других элементов программы (переменных, констант, классов и т.д.). Поэтому, считается, что контекстные слова являются формально зарезервированными. Однако, использование контекстных слов за пределами контекста может привести к путанице в программе.
Вывод: за пределами контекста рекомендуется выбирать имена элементам программы так, чтобы они не совпадали с контекстными словами.
В языке C# используются следующие контекстные слова:
5. В каких элементах языка программирования запрещено использовать ключевые слова в качестве имен? Пример
При написании программ, программист встречается с задачей выбора имени для той или иной переменной, метода, класса и т.д. Выбор имени зависит от назначения переменной, метода, класса и т.д. Однако, в C# (также и в других языках программирования) существуют ограничения на выбор имени. Разрешается выбирать имена переменных любые, кроме тех имен, которые являются ключевыми словами.
Ключевые слова запрещено использовать в именах:
Пример. Если в программе попробовать объявить перечисление с именем int
то компилятор выдаст ошибку
Это логично, поскольку имя int есть ключевым словом которое определяет целочисленный тип данных.
Reserved words/ru
Contents
Зарезервированные слова отдельных режимов компилятора объединены следующим образом:
Зарезервированные слова в Turbo Pascal
Следующие зарезервированные слова встречаются в режиме Turbo Pascal:
| ключевое слово | описание |
|---|---|
| and | логический оператор, требующий, чтобы оба операнда были равны true для того. чтобы результат был равен true |
| array | множество элементов с одинаковым именем |
| asm | начало кода, написанного на языке ассемблера |
| begin | начало блока кода |
| break | выход из условия case |
| case | выбирает определенный сегмент кода для выполнения в зависимости от значения |
| const | объявляет идентификатор с неизменяемым значением или переменную с инициализированным значением |
| constructor | процедура, используемая для создания объекта |
| continue | пропускает инструкции в цикле for и возобновляет выполнение с начала цикла |
| destructor | процедура, используемая для «уничтожения» объекта |
| div | оператор целочисленного деления |
| do | используется для указания начала цикла |
| downto | используется в цикле for для указания декремента (уменьшения) переменной-счетчика |
| else | используется в условной конструкции if для выполнения альтернативной ветви, когда ветвь if не выполняется |
| end | конец блока кода, записи или некоторых других конструкций |
| false | логическое значение, означающее что условие не выполняется; противоположно значению true |
| file | внешняя структура данных, обычно хранящаяся на диске |
| for | цикл с использованием увеличения или уменьшения управляющей переменной |
| function | объявляет начало процедуры, которая возвращает значение результата |
| goto | осуществляет выход из сегмента кода и переходит в другое место |
| if | проверяет условие и по результату сравнения выполняет набор инструкций |
| implementation | определяет внутренние процедуры в модуле |
| in | определяет элементы в коллекции |
| inline | непосредственно встраивает машинный код в процедуру |
| interface | глобальные объявления процедур в unit |
| label | определяет точку перехода для оператора goto |
| mod | оператор, возвращающий остаток целочисленного деления |
| nil | значение указателя, означающее, что указатель ни на что не ссылается |
| not | логический оператор, который инвертирует значение результата проверки |
| object | определяет конструкцию типа «объект» |
| of | определяет характеристики переменной |
| on | |
| operator | определяет процедуру, использующуюся для реализации оператора |
| or | логический оператор, который позволяет использовать любой из двух вариантов |
| packed | указывает, что элементы в массиве используют меньше памяти (данное ключевое слово необходимо, прежде всего, для совместимости с устаревшими программами, когда элементы массива упаковывались обычно автоматически) |
| procedure | определяет начало процедуры, которая не возвращает значение результата |
| program | определяет начало приложения. Данное ключевое слово обычно является необязательным |
| record | набор разнотипных переменных, объединенных под одним именем |
| repeat | цикл, представляющий секцию кода до условной инструкции until, выполняющийся до тех пор, пока результат сравнения равен true |
| set | набор значений |
| shl | оператор сдвига значения влево; эквивалентен умножению на степень 2 |
| shr | оператор сдвига значения вправо; эквивалентен делению на степень 2 |
| string | объявляет переменную, содержащую множество символов |
| then | указывает начало кода в условии сравнения if |
| to | используется в цикле for для указания инкремента (увеличения) переменной-счетчика |
| true | логическое значение, указывающее что сравнение выполняется; противоположно значению false |
| type | объявляет типы записей или новых классов переменных |
| unit | раздельно компилируемые модули |
| until | указывает окончание блока проверки в цикле repeat |
| uses | перечисление названий модулей в текущей программе или модулей, на которые есть ссылки |
| var | объявление переменных |
| while | проверяет значение и, если оно равно true, выполняет инструкции цикла |
| with | reference the internal variables within a record without having to refer to the record itself |
| xor | логический оператор, являющийся исключающим ИЛИ |
Зарезервированные слова в Object Pascal
Object Pascal extends the (Turbo) Pascal language with both support for dealing more easily with objects (object orientation) as well as other newer/more advanced concepts (threads, etc).
In addition to the reserved words in Turbo Pascal, the following reserved words are available in Delphi mode as well:
as
class
dispose
except
exit
exports
finalization
finally
inherited
initialization
is
library
new
on
out
property
raise
self
threadvar
try
Зарезервированные слова в Free Pascal
Зарезервированные слова в режиме Free Pascal включают:
Модификаторы (директивы)
Неподдерживаемые модификаторы Turbo Pascal
The reason why these modifiers are not supported is that these modifiers deal with 16 bit code for DOS. In other words, these modifiers have special meaning for 16 bit programming under DOS and Windows 3.x.
As Free Pascal does not support 16 bit code (only 32 and 64 bit), these modifiers are irrelevant in Free Pascal code.
Примечание: However, these modifiers are supported in the DOS crosscompiler present in the FPC development version
More functionality
Apart from the language features provided by the reserved words/keywords mentioned above, there is a lot of functionality available for the programmer in the various libraries:
Apart from the libraries provided by FPC and Lazarus, there are more libraries/components available:
JavaScript Зарезервированные слова
В JavaScript вы не можете использовать эти зарезервированные слова в качестве переменных, меток или имен функций:
| abstract | arguments | await* | boolean |
| break | byte | case | catch |
| char | class* | const | continue |
| debugger | default | delete | do |
| double | else | enum* | eval |
| export* | extends* | false | final |
| finally | float | for | function |
| goto | if | implements | import* |
| in | instanceof | int | interface |
| let* | long | native | new |
| null | package | private | protected |
| public | return | short | static |
| super* | switch | synchronized | this |
| throw | throws | transient | true |
| try | typeof | var | void |
| volatile | while | with | yield |
Слова, отмеченные*, являются новыми в ECMAScript 5 и 6.
Вы можете узнать больше о различных версиях JavaScript в главе JS Версии.
Удаленные зарезервированные слова
Следующие зарезервированные слова были удалены из стандарта ECMAScript 5/6:
| abstract | boolean | byte | char |
| double | final | float | goto |
| int | long | native | short |
| synchronized | throws | transient | volatile |
Не используйте эти слова как переменные. ECMAScript 5/6 не имеет полной поддержки во всех браузерах.
Объекты, свойства и методы JavaScript
Вам также следует избегать использования названий встроенных объектов, свойств и методов JavaScript:
| Array | Date | eval | function |
| hasOwnProperty | Infinity | isFinite | isNaN |
| isPrototypeOf | length | Math | NaN |
| name | Number | Object | prototype |
| String | toString | undefined | valueOf |
Зарезервированные слова Java
JavaScript часто используется вместе с Java.
Вам следует избегать использования некоторых объектов и свойств Java в качестве идентификаторов JavaScript:
Другие зарезервированные слова
JavaScript можно использовать как язык программирования во многих приложениях.
Вам также следует избегать использования имен объектов и свойств HTML и Window:
| alert | all | anchor | anchors |
| area | assign | blur | button |
| checkbox | clearInterval | clearTimeout | clientInformation |
| close | closed | confirm | constructor |
| crypto | decodeURI | decodeURIComponent | defaultStatus |
| document | element | elements | embed |
| embeds | encodeURI | encodeURIComponent | escape |
| event | fileUpload | focus | form |
| forms | frame | innerHeight | innerWidth |
| layer | layers | link | location |
| mimeTypes | navigate | navigator | frames |
| frameRate | hidden | history | image |
| images | offscreenBuffering | open | opener |
| option | outerHeight | outerWidth | packages |
| pageXOffset | pageYOffset | parent | parseFloat |
| parseInt | password | pkcs11 | plugin |
| prompt | propertyIsEnum | radio | reset |
| screenX | screenY | scroll | secure |
| select | self | setInterval | setTimeout |
| status | submit | taint | text |
| textarea | top | unescape | untaint |
| window |
Обработчики событий HTML
Кроме того, вам следует избегать использования имен всех обработчиков событий HTML.
Зарезервированное слово
В лексическом анализе зарезервированное слово фигурирует как одна лексема особого типа.
Связанные понятия
Из-за путаницы с терминологией словом «оператор» в программировании нередко обозначают операцию (англ. operator), см. Операция (программирование).Инстру́кция или опера́тор (англ. statement) — наименьшая автономная часть языка программирования; команда или набор команд. Программа обычно представляет собой последовательность инструкций.
Упоминания в литературе
Связанные понятия (продолжение)
В языках программирования объявле́ние (англ. declaration) включает в себя указание идентификатора, типа, а также других аспектов элементов языка, например, переменных и функций. Объявление используется, чтобы уведомить компилятор о существовании элемента; это весьма важно для многих языков (например, таких как Си), требующих объявления переменных перед их использованием.
По одной из классификаций, языки программирования неформально делятся на сильно и слабо типизированные (англ. strongly and weakly typed), то есть обладающие сильной или слабой системой типов. Эти термины не являются однозначно трактуемыми, и чаще всего используются для указания на достоинства и недостатки конкретного языка. Существуют более конкретные понятия, которые и приводят к называнию тех или иных систем типов «сильными» или «слабыми».
Побо́чные эффе́кты (англ. side effects) — любые действия работающей программы, изменяющие среду выполнения (англ. execution environment). Например, к побочным эффектам относятся.
Сопрограммы (англ. coroutines) — методика связи программных модулей друг с другом по принципу кооперативной многозадачности: модуль приостанавливается в определённой точке, сохраняя полное состояние (включая стек вызовов и счётчик команд), и передаёт управление другому. Тот, в свою очередь, выполняет задачу и передаёт управление обратно, сохраняя свои стек и счётчик.

