语句和关键字有什么区别?

时间:2014-04-12 17:56:51

标签: programming-languages terminology keyword

calling return a statement之后,评论中提到了我:

  

return不是声明,它是启动return语句的关键字。

声明启动声明的关键字之间有什么区别?

3 个答案:

答案 0 :(得分:2)

句子与开始一个句子的名词有什么区别? ; - )

return是一个关键字,这意味着它是该语言的一些基本术语(令牌)之一。它们具有特权,每个都保留用于特殊目的并具有特殊含义(将其与工厂标识符/名称的运行进行比较)。

语句(广义上 - 语言之间的具体差异)是语言的更高级别单位,类似于自然语言中的(特定类型)句子。声明包括return 1+1;foo(bar);,但通常不包括1+1foo(bar)等字词。

关键字通常构成语句的一部分(例如return引入了一个返回语句),但它们从不自己制作完整的语句 - 即使return;仍然需要语句终止符。

答案 1 :(得分:1)

关键字(有时称为保留字)是一种在编程语言中具有特殊含义的单词。例如,在C,C ++和Java中,intvoidbreak是关键字,而在Python def中是关键字。

在命令式编程语言中,语句是程序应该执行的命令。例如,声明

x = y * 137;

表示"评估表达式x = y * 137,"而声明

while (true) {
    x++;
}

表示"永远继续增加x。"

某些关键字可用于语句。例如,声明

break;

表示"突破当前循环,"而声明

return true;

(由returntrue关键字组成)表示"退出当前的函数/方法,产生结果true。"这些被称为" break语句"和"返回陈述,"分别使用这种方式并不正确。但是,breakreturn本身并不是陈述。请注意语法是

break;

用分号和

return [opt-value];

带有可选值和分号。我认为拨打returnbreak语句是不正确的,因为虽然在技术上不正确,但每个人都会这样做知道你的意思。

请注意,某些语句可能包含关键字,但并非所有关键字都是语句。例如,你不能写

public;

volatile;

我所知道的任何编程语言。

希望这有帮助!

答案 2 :(得分:1)

我的语言律师指出C标准n1570说如下。

S6.4.1关键词包括:

  

返回

S6.8说:

  

语句指定要执行的操作。

S6.8.6。 return语句定义为包含分号。

  

返回表达式(opt);

回答这个问题,如果不像其他一些答案那样有趣。