陳述 (程式)
维基百科,自由的百科全书
| 本条目没有列出任何参考或来源。(2010年3月20日) |
在電腦科學裡面一個陳述(statement)可以被想成是指令式程式語言裡面最小的獨立元素。一個程式是由一系列包含一或多個陳述所構成的。單一個陳述本身也會有一些內部結構(例如說,表示式(expression))。
許多語言(例如說,C語言)將陳述句與定義句(definition)分隔的很明確,因為陳述只會有運算符號以及一些宣告標識符號(identifier)的定義。我們也可以找出簡單陳述與複合陳述之間的差異;後者會一次包含了許多陳述。
目录 |
陳述的種類 [编辑]
以下是主要通用的陳述種類,加上典型的指令式語言的範例:
簡單陳述(simple statement) [编辑]
複合陳述(compound statement) [编辑]
- block:
begin integer NUMBER; WRITE('Number? '); READLN(NUMBER); A:= A*NUMBER end - if语句:
if A > 3 then WRITELN(A) else WRITELN("NOT YET"); end - Switch陳述:
switch (c) { case 'a':alert(); break; case 'q':quit(); break; } - While迴圈:
while NOT EOF DO begin READLN end - Do-while迴圈:
do { computation(&i); } while (i < 10); - For迴圈:
for A:=1 to 10 do WRITELN(A) end
表示式 [编辑]
在多數語言裡,陳述與表示式不同於,陳述不回傳結果而且僅僅運作於它們的副作用上面,而表示式則都會回傳一個結果並且一般說來沒有任何副作用。在指令式程式語言內,Algol 68是陳述可以有回傳值的少數幾個語言。在某些混合指令式與函數式樣式的語言,例如像Lisp家族,其表示式與陳述之間的分野並不存在:即使是僅運作於副作用而且回傳值不被使用的文句也可以被視為「表示式」。在purely functional(purely functional)程式設計裡面,不存在任何陳述;所有東西都是表示式。
程式語言 [编辑]
陳述的語意(sematic)以及句法(syntax)是依據每個程式語言的定義來規定的。
許多的程式語言不允許自我修改程式碼(self-modifying code)。或者說,多數程式語言不允許在執行時間創造新的陳述(Snobol 4則是一個允許這樣作的例子)或者修改現有的陳述(Lisp則是一個反例)。