Programmieren - alles kontrollieren 4.937 Themen, 20.662 Beiträge

Delphi: was tut die funktion

PaoloP / 7 Antworten / Flachansicht Nickles

Hallo


ich stehe immer noch mit meinen bescheidenen C-Kentnissen vor einem Haufen Delphi-Code und bin dem scheinbar hilflos ausgeliefert irgendwie.
Was genau macht das exit ohne Semikolon da in Zeile 10 ? Die beiden if-prüfungen sorgen doch beide für das verlassen der funktion oder ? if-1 liefert true und if-2 liefert false denke ich ist das richtig? oder ist das exit als exit end zu lesen und bedeutet wieder was anderers? Verwirrung pur


1: function hatKeineTeiler:boolean;
2:        var j:integer;
3:begin
4:         result:=true; 
5:         for j:=1 to AnzahlDerPrimzahlenBisher do
6:         Begin
7:                 if groesstePZ<primzahlen[j]*primzahlen[j] then exit;


8:                 if groesstePZ=(GroesstePZ div primzahlen[j])*primzahlen[j] then
9:                 Begin
10:                   result:=false; exit
11:               End;
12:        End;
13:end;

Jedes mal wenn jemand "Cloud" sagt, verliert ein Engel seine Flügel.
bei Antwort benachrichtigen
Danke aber PaoloP
Andreas42 PaoloP „Danke aber“
Optionen

Hi!

Das ist nach Pascal-Syntax zulassig. Der letzte Befehl eines Blockes (und Begen/End bilden einen Block), muss nicht mit einem Semikolon abgeschlossen werden.

Das gilt auch für "Einbefehlblöcke" z.B. bei If abfragen (zu sehen bei proc1()):

(..)
if a=1 then
proc1()
else
proc2();
(..)

Das Semikolon schliesst die IF-Anweisung ab. Wäre das die letzte anweisung eines Blocken, dann könnte man darauf verzichten.

Bis denn
Andreas

Hier steht was ueber mein altes Hard- und Softwaregedoens.
bei Antwort benachrichtigen
Danke aber to andreas42 PaoloP
Danke aber Borlander