Herunterladen Inhalt Inhalt Diese Seite drucken

Standardwerte Von Funktionsargumenten - Microtronics rapidM2M C32-Serie Benutzerhandbuch

Inhaltsverzeichnis

Werbung

Das folgende Codebeispiel ruft die Funktion "addvector" auf und addiert zu jedem Element der Variablen
"vect" den Wert 5:
new vect[3] = [ 1, 2, 3 ]
addvector(vect, [5, 5, 5], 3)
/* vect[] beinhaltet nun die Werte 6, 7 und 8 */
13.5.7.2 Benannte Parameter versus positionsgebundene Parameter
In den vorangegangenen Beispielen war die Reihenfolge der Parameter bei einem Funktionsaufruf wichtig,
da jeder Parameter zu dem Funktionsparameter mit derselben Position kopiert wurde. Zum Beispiel bei der
"weekday" Funktion, die unterhalb definiert wird, würde der Aufruf "weekday(12, 31, 1999)" lauten, um den
Wochentag des letzten Tages des letzten Jahrhunderts zu erhalten.
weekday(month, day, year)
{
/* gibt den Tag der Woche zurück: 0=Samstag, 1=Sonntag, etc. */
if (month <= 2)
month += 12, --year
new j = year % 100
new e = year / 100
return (day + (month+1)*26/10 + j + j/4 + e/4 - 2*e) % 7
}
Das Datumsformat unterscheidet sich je nach Kultur und Nation, während in den Vereinten Staaten von
Amerika das Format Monat/Tag/Jahr verbreitet ist, verwenden europäische Staaten oft das Format
Tag/Monat/Jahr und in technischen Publikationen wird Jahr/Monat/Tag (ISO/IEC 8824) verwendet. Mit
anderen Worten, keine Reihenfolge der Parameter ist "standardisiert" oder "normal". Aus diesem Grund gibt
es eine alternative Möglichkeit, um Parameter an eine Funktion zu übergeben: die "benannten Parameter".
Diese wird im nächsten Beispiel gezeigt (die Funktion wurde genau wie im vorherigen Beispiel deklariert).
new wkday1 = weekday( .month = 12, .day = 31, .year = 1999)
new wkday2 = weekday( .day = 31, .month = 12, .year = 1999)
new wkday3 = weekday( .year = 1999, .month = 12, .day = 31)
Bei "benannten Parametern" wird ein Punkt (".") dem Namen des Arguments vorangestellt. Das Argument
der Funktion kann auf einen beliebigen Ausdruck gesetzt werden, der gültig für das Argument ist. Das
Gleichheitszeichen ("=") hat im Falle eines benannten Parameters nicht die Bedeutung einer Zuordnung,
sondern verknüpft den Ausdruck mit einem Funktionsargument.
Es können positionsgebundene und benannte Parameter vermischt werden, jedoch müssen die
positionsgebundenen vor den benannten Parametern angegeben werden.

13.5.7.3 Standardwerte von Funktionsargumenten

Ein Funktionsargument kann einen Standardwert haben. Der Standardwert eines Funktionsarguments muss
eine Konstante sein. Um einen Standardwert anzugeben, fügen Sie an den Namen des Parameters ein
Gleichheitszeichen ("=") und den Wert an.
Rev. 03
Kapitel 13 Device Logic (Pawn)
203

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis