# Bemerkungen zu Funktionen

Viele Funktionen haben optionale Parameter, die beim Funktionsaufruf nicht angegeben werden müssen. Wenn du einen optionalen Parameter verwenden möchtest, muss jeder vorangehende Parameter angegeben sein. Du kannst also nur den vorletzten Parameter weg lassen, wenn der letzte auch weg gelassen wird usw.
Betrachen wir z.B. die Run-Funktion:
Run ( "filename", ["workingdir" [, flag]] ).
Wenn du den flag-Parameter angeben öchtest, dann musst du auch ein workingdir angeben.
Viele Win___ -Funktionen haben einen optionalen Parameter namens text. Dieser Parameter soll helfen, zwischen verschiedenen Fenstern mit gleichem Fenstertitel zu differenzieren.
Manche Funktionen geben den Erfolg oder Misserfolg bei ihrer Ausführung als "return"-Wert an, andere setzen das @error-Flag. Manche tun auch beides...
@error = 0 ;bedeutet stets Erfolg
Return = variiert, aber es ist typischerweise nicht-Null, wennn die Ausführung erfolgreich war, damit es einfach zu handhaben ist.
If someUserFunc() then ;...Funktion hat funktioniert
If Not someUserFunc() then ;...Funktion hat nicht funktioniert
$x = FileReadLine("C:\Datei.txt")
If @error = -1 Then ;Dateiende (eof) wurde erreicht
Wenn eine Funktion das @error-Flag seten kann, dann solltest du es immer überprüfen, befor du den "return"-Wert benutzt. Wenn @error nämlich einen Fehler zeigt, dann ist der "return"-Wert generell undefiniert...