条件语句
if <条件表达式> then
<语句1>
else
<语句2>
选择语句
Case 选择表达式 of
常量1:语句1;
...
常量n:语句n;
Else
...
End;
循环语句
While
While 条件表达式 do
循环语句;
例:
while i < n do
begin
sum := sum+i;
i := i+1;
end;
Repeat
repeat 循环体
until 条件表达式
例:
repeat
i := i+1;
sum := sum+i;
until i = n;
for语句
for 计数器 := 初值 to/downto 终值 do
循环体
例:
for i := 1 to/downto n do
writeln('hello delphi');
for...in
for v in set do
循环体
例:
var
myset :set of AnsiChar;
ch : AnsiChar;
begin
myset := ['1','2'];
for ch in myset do
writeln(ch);
end.
for in还可以遍历数组、字符串、类、接口、记录
跳出语句
break,continue,abort,exit,halt,runerror
break 强制退出最近的一层循环(注意:只能放在循环里;而且是只能跳出最近的一层循环),用于从for、while、repeat语句中强制退出
continue 用于从for、while、repeat语句中结束循环内的本次处理,继续从循环体的开始位置继续执行
exit 用于从当前代码块中退出。若该代码是主程序,则终止该程序。如果是函数或过程,则立即终止该函数或过程
abort 终止程序需的运行,产生不报错的异常信息。跳出祖先模块。
procedure f1;
begin
f2;
f3;
end;
procedure f2;
begin
abort; //或者exit;
end;
procedure f3;
begin
//进行一些操作
end;
在执行f1的时候,如果f2里面用abort,则执行不到f3
如果使用exit,就能够执行到f3,因为exit只能控制终止它所在的函数或过程,不能终止调用它所在函数的那个代码块。
如果用exit终止它所在的那个函数之后,会跳回调用这个函数的代码块,继续执行之后的代码
halt 用于强行终止应用程序的执行,返回操作系统(非正常退出方式)。
runerror 终止程序的执行,并产生运行错误(返回错误代码)。