В чем разница между "ключевым словом" и "зарезервированным словом"?
в чем разница между ключевое слово и зарезервированное слово?
например,предложение концепций в C++ можно прочитать следующее заявление:
это предложение вводит пять новых ключевых слов: концепция, концептуальная карта, где, аксиома и поздняя проверка. Все эти ключевые слова будут зарезервированные слова.
10 ответов
ключевые слова имеют особое значение в языке и являются частью синтаксиса.
зарезервированные слова - это слова, которые нельзя использовать в качестве идентификаторов (переменных, функций и т. д.), потому что они зарезервированы языком.
на практике большинство ключевых слов являются зарезервированными словами и наоборот. Но ведь это две разные вещи, может случиться так, что ключевое слово не является зарезервированным словом (например, слово имеет смысл только в определенном контексте, и поэтому может использоваться как идентификатор), или зарезервированное слово не является ключевым словом (например, потому что оно зарезервировано для будущего использования).
Update: некоторые примеры, приведенные другими, которые иллюстрируют различие:
- В Java,
goto
- Это зарезервированное слово, но не ключевое слово (как следствие, вы не можете использовать его на всех) - Фортран имеет нет зарезервированные слова, все ключевые слова (if, then и т. д.) может быть использован в качестве идентификаторы
просто чтобы показать, что различие очень значимо:
Не во всех языках все ключевые слова зарезервированы. В Fortran можно сделать следующее:
if if then then else else
в этом случае ключевые слова не зарезервированы, но в зависимости от контекста могут интерпретироваться компилятором как переменные.
хорошим примером этого различия является "goto" в Java. Это не ключевое слово языка (т. е. это недопустимая Java), но это is зарезервированное слово.
кажется, что дизайнеры java говорят нам: "мы не будем использовать"goto", и Вы тоже".
Wiki говорит следующее: "ключевое слово-это слово, которое является особенным только в определенных контекстах, но зарезервированное слово-это специальное слово, которое не может использоваться как пользовательское имя."
http://en.wikipedia.org/wiki/Reserved_word#Reserved_word_vs._keyword
Я думаю, ключевое слово-это слово, используемое как "ключевое слово" (например, if, for, switch и т. д...) в то время как зарезервированное слово-это то, что вы не можете использовать в качестве имени переменной, потому что оно может стать ключевым словом в будущей версии языка.
- Ключевое слово: оно имеет некоторое значение и мы можем использовать в программе.
- зарезервированное слово: мы не можем использовать в программе. Они могут быть использованы в будущем.
Пример:
goto
действительно, это будет зависеть от контекста. Например, стандарт ISO C++ говорит, что такие вещи, как "if", "while", "int" и т. д. are ключевые слова, и фактически не использует термин зарезервированное слово, за исключением одного раза, в сноске, где, вероятно, подразумевалось что-то еще: -)
стандартное doe указывает зарезервированные имена - например, все имена, начинающиеся с подчеркивания и заглавной буквы зарезервированы имена.
Keywords: Keywords имеет некоторые специальные функции для компилятора. Так что ключевые слова не могут использоваться в качестве идентификаторов в программировании. Зарезервированные слова: зарезервированные слова-это слова, которые зарезервированы для будущего использования. В java const и goto-это зарезервированные слова, которые не используются в настоящее время и могут быть возвращены на java в будущем. Если мы проверим здесь ключевые слова языка Java (https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html), он говорит, что java (последнее, я думаю) имеет 50 ключевых слов, включая goto и const. Таким образом, goto и const-это ключевые слова, которые зарезервированы.
зарезервированные слова и ключевые слова в основном одинаковы, и они имеют заранее определенные значения в GW-BASIC
...они имеют заранее определенные виды использования и не могут быть использованы или повторно определены для каких-либо других целей в Basic. Ключевые слова нельзя использовать в качестве имени переменной. Некоторые из ключевых слов Basic...IF
, THEN
, WHILE
etc..
ключевое слово, - слово со специальным значением в конкретном контекст. Это семантический определение.
зарезервированное слово - это слово, которое нельзя использовать как идентификатор - например, имя переменной и функции. Это синтаксические определение.
Е. Г. В Java, все ключевые слова являются зарезервированными словами. Возможно, не наоборот. goto является зарезервированным словом, но не используется и не имеет функция.
в более старых языках, таких как FORTRAN, были ключевые слова, но не зарезервированные слова.
однако ключевое слово и зарезервированное слово используются взаимозаменяемо.