Label 的用法 [Pascal]
E.G.
Label a;
begin
{1}
end.
Label b;
begin
{2}
end.
如果我想由{1}跳到 Label b 應該點打.?
PS. 如果可以提供一些label 的用法或相關 procedure 或 function 更佳 (不為必須)
1 個解答
評分
- 1 十年前最愛解答
道先 Label 一定要在同一個 Function / Procedure 內,而且不可以跳入 Scope (e.g. For loop, whle loop) 內。 由於太耐沒用 Pascal 了,Syntax 可能不對,請諒。
procedure A
label lbl_A, lbl_B;
var
a, b, c : integer;
begin
for a := 1 to 10 do
begin
for b := 1 to 10 do
begin
if b = 5 then
{ OK, jump out the scope }
goto lbl_A;
end;
lbl_A:
writeln("After Lbl_A");
{ OK, same scope }
goto lbl_B;
writeln("Between Lbl_A and Lbl_B");
lbl_B:
writeln("Lbl_B");
end;
{ Error, cannot jump into scope }
goto lbl_A;
end;
還有問題嗎?立即提問即可得到解答。