mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-07 02:10:29 +02:00
+ Added Break and Continue
This commit is contained in:
parent
aaef13ac01
commit
8442c247b1
56
docs/ref.tex
56
docs/ref.tex
@ -2759,6 +2759,11 @@ For I := 100 downto 1 do
|
||||
For I := 1 to 7*dwarfs do KissDwarf(i);
|
||||
\end{verbatim}
|
||||
|
||||
If the statement is a compound statement, then the \seep{Break} and
|
||||
\seep{Continue} reserved words can be used to jump to the end or just
|
||||
after the end of the \var{For} statement.
|
||||
|
||||
|
||||
\subsection{The \var{Repeat..until} statement}
|
||||
The \var{repeat} statement is used to execute a statement until a certain
|
||||
condition is reached. The statement will be executed at least once.
|
||||
@ -2781,6 +2786,9 @@ repeat
|
||||
X := X/2
|
||||
until x<10e-3
|
||||
\end{verbatim}
|
||||
The \seep{Break} and \seep{Continue} reserved words can be used to jump to
|
||||
the end or just after the end of the \var{repeat .. until } statement.
|
||||
|
||||
\subsection{The \var{While..do} statement}
|
||||
A \var{while} statement is used to execute a statement as long as a certain
|
||||
condition holds. This may imply that the statement is never executed.
|
||||
@ -2806,6 +2814,11 @@ while x>=10e-3 do
|
||||
X := X/2;
|
||||
\end{verbatim}
|
||||
They correspond to the example loops for the \var{repeat} statements.
|
||||
|
||||
If the statement is a compound statement, then the \seep{Break} and
|
||||
\seep{Continue} reserved words can be used to jump to the end or just
|
||||
after the end of the \var{While} statement.
|
||||
|
||||
\subsection{The \var{With} statement}
|
||||
\label{se:With}
|
||||
The \var{with} statement serves to access the elements of a record\footnote{
|
||||
@ -4109,6 +4122,27 @@ written to disk.
|
||||
|
||||
For the example, see \seep{Blockread}.
|
||||
|
||||
\begin{procedure}{Break}
|
||||
\Declaration
|
||||
Procedure Break;
|
||||
\Description
|
||||
\var{Break} jumps to the statement following the end of the current
|
||||
repetitive statement. The code between the \var{Break} call and
|
||||
the end of the repetitive statement is skipped.
|
||||
The condition of the repetitive statement is NOT evaluated.
|
||||
|
||||
This can be used with \var{For}, var{repeat} and \var{While} statements.
|
||||
|
||||
Note that while this is a procedure, \var{Break} is a reserved word
|
||||
and hence cannot be redefined.
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seep{Continue}, \seep{Exit}
|
||||
\end{procedure}
|
||||
|
||||
\FPCexample{ex87}
|
||||
|
||||
\begin{procedure}{Chdir}
|
||||
\Declaration
|
||||
Procedure Chdir (const S : string);
|
||||
@ -4169,6 +4203,28 @@ None.
|
||||
|
||||
\FPCexample{ex10}
|
||||
|
||||
\begin{procedure}{Continue}
|
||||
\Declaration
|
||||
Procedure Continue;
|
||||
\Description
|
||||
\var{Continue} jumps to the end of the current repetitive statement.
|
||||
The code between the \var{Continue} call and the end of the repetitive
|
||||
statement is skipped. The condition of the repetitive statement is then
|
||||
checked again.
|
||||
|
||||
This can be used with \var{For}, var{repeat} and \var{While} statements.
|
||||
|
||||
Note that while this is a procedure, \var{Continue} is a reserved word
|
||||
and hence cannot be redefined.
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seep{Break}, \seep{Exit}
|
||||
\end{procedure}
|
||||
|
||||
\FPCexample{ex86}
|
||||
|
||||
|
||||
\begin{function}{Copy}
|
||||
\Declaration
|
||||
Function Copy (Const S : String;Index : Integer;Count : Byte) : String;
|
||||
|
@ -38,7 +38,7 @@ OBJECTS=ex1 ex2 ex3 ex4 ex5 ex6 ex7 ex8 ex9 ex10 ex11 ex12 ex13 ex14 \
|
||||
ex41 ex42 ex43 ex44 ex45 ex46 ex47 ex48 ex49 ex50 ex51 ex52 ex53 \
|
||||
ex54 ex55 ex56 ex57 ex58 ex59 ex60 ex61 ex62 ex63 ex64 ex65 ex66 \
|
||||
ex67 ex68 ex69 ex70 ex71 ex72 ex73 ex74 ex75 ex76 ex77 ex78 ex79 \
|
||||
ex80 ex81 ex82 ex83 ex84 ex85
|
||||
ex80 ex81 ex82 ex83 ex84 ex85 ex86 ex87
|
||||
|
||||
TEXOBJECTS=$(addsuffix .tex, $(OBJECTS))
|
||||
|
||||
|
@ -86,4 +86,7 @@ ex80.pp contains an example of the High/Low functions.
|
||||
ex81.pp contains an example of the HexStr function.
|
||||
ex82.pp contains an example of the BinStr function.
|
||||
ex83.pp contains an example of the Assigned function.
|
||||
ex84.pp contains an example of the Library keyword.ex85.pp contains an example of the SetLength function.
|
||||
ex84.pp contains an example of the Library keyword.
|
||||
ex85.pp contains an example of the SetLength function.
|
||||
ex86.pp contains an example of the Continue function.
|
||||
ex87.pp contains an example of the Break function.
|
||||
|
29
docs/refex/ex86.pp
Normal file
29
docs/refex/ex86.pp
Normal file
@ -0,0 +1,29 @@
|
||||
Program Example86;
|
||||
|
||||
{ Program to demonstrate the Continue function. }
|
||||
|
||||
Var I : longint;
|
||||
|
||||
begin
|
||||
I:=0;
|
||||
While I<10 Do
|
||||
begin
|
||||
Inc(I);
|
||||
If I<5 Then
|
||||
Continue;
|
||||
Writeln (i);
|
||||
end;
|
||||
I:=0;
|
||||
Repeat
|
||||
Inc(I);
|
||||
If I<5 Then
|
||||
Continue;
|
||||
Writeln (i);
|
||||
Until I>=10;
|
||||
For I:=1 to 10 do
|
||||
begin
|
||||
If I<5 Then
|
||||
Continue;
|
||||
Writeln (i);
|
||||
end;
|
||||
end.
|
29
docs/refex/ex87.pp
Normal file
29
docs/refex/ex87.pp
Normal file
@ -0,0 +1,29 @@
|
||||
Program Example87;
|
||||
|
||||
{ Program to demonstrate the Break function. }
|
||||
|
||||
Var I : longint;
|
||||
|
||||
begin
|
||||
I:=0;
|
||||
While I<10 Do
|
||||
begin
|
||||
Inc(I);
|
||||
If I>5 Then
|
||||
Break;
|
||||
Writeln (i);
|
||||
end;
|
||||
I:=0;
|
||||
Repeat
|
||||
Inc(I);
|
||||
If I>5 Then
|
||||
Break;
|
||||
Writeln (i);
|
||||
Until I>=10;
|
||||
For I:=1 to 10 do
|
||||
begin
|
||||
If I>5 Then
|
||||
Break;
|
||||
Writeln (i);
|
||||
end;
|
||||
end.
|
Loading…
Reference in New Issue
Block a user