什么是“关键字”和“保留字”之间的区别?(What is the difference betwee

2019-06-24 21:20发布

什么是关键字保留字的区别?

例如,在C语言为概念的提案++一个可以仔细阅读以下声明:

该提案中提出了五个新的关键字:概念,概念图,其中,公理,和延迟退房。 所有这些关键字也将保留字。

Answer 1:

关键词有语言有特殊的含义,并且是语法的一部分。

保留字都不能用作标识符(变量,函数,等等)的话,因为它们是由语言保留。

在实践中,大多数的关键字是保留字,反之亦然。 但是因为他们是两个不同的东西,可能会发生一个关键字是不是保留字(如关键字才有意义在一个特殊的背景下,因此可以用作标识符),或保留字是不是一个关键字(例如,因为它被留作将来使用)。

更新:由其他人说明的区别给出了一些例子:

  • 在Java中, goto是保留字,但不是关键字(作为一个结果,你不能用它在所有)
  • 的Fortran 没有保留字,所有关键字(如果,然后,等)可被用作标识符


Answer 2:

只是为了显示区别是非常有意义的:

并非所有语言都保留字的关键字。 在Fortran中,可以这样做:

if if then then else else

在这种情况下,关键字不保留,但根据上下文可以由编译器作为变量来解释。



Answer 3:

这种区别的一个很好的例子是在Java中“转到”。 这是不是一种语言的关键字(即它不是有效的Java),但它一个保留字。

看来,Java的设计者都在告诉我们:“我们不打算使用‘转到’,也不是你。”



Answer 4:

维基说,这个“关键字是特殊的只在某些情况下,但保留字是一个特殊的词,不能用作用户自定义名称的词。”

http://en.wikipedia.org/wiki/Reserved_word#Reserved_word_vs._keyword



Answer 5:

我猜关键字是作为“关键词”(例如,如果,因为,开关等),同时保留字是你不能作为变量名使用,因为它可能会在语言的未来版本成为关键字的词语。



Answer 6:

  • 关键字:它有一定的意义,我们可以在程序中使用。
  • 保留字:我们不能在程序中使用。 他们可能会在未来被使用。 例如: goto


Answer 7:

实际上它取决于上下文不少。 例如,ISO C ++标准说,像“如果”,“虽然”,“诠释”等是关键词 ,而实际上并没有使用期限的保留字 ,只有一次,在一个脚注,其中有些东西可能:-)意思

该标准规定母鹿保留名称 -例如,以一个下划线和一个大写字母开头的名称均保留名称。



Answer 8:

关键词:关键词有一些特殊功能的编译器。 所以关键字不能在编码作为标识符。 保留字:保留字是被留作将来使用的话。 在Java中,常量和GOTO是未当前使用和将来可能被带回的java的保留字。 如果我们在这里检查Java语言关键字( https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html ),它说,爪哇(最新我猜)有50个关键字,包括GOTO和常量。 所以,GOTO和常量是被保留的关键字。



Answer 9:

保留字和关键字大多是相同的,他们在预先定义的含义GW-BASIC ......这些已经预先定义的用途,不能用于或用于基本任何其他目的重新定义。 关键字不能用作变量名。 一些基本的关键词是... IFTHENWHILE等。



Answer 10:

关键字 -在特定情况下的特殊含义的词。 它的语义定义。

保留字是不能被用作标识符一个字-例如,变量和函数名。 这句法定义。

EgIn Java中,所有关键字都是保留字。 也许不是相反。 转到保留字,但不使用,没有任何功能。

在旧的语言,如FORTRAN有关键字但无保留字。

但是,关键字和保留字可以互换使用。



文章来源: What is the difference between “keyword” and “reserved word”?