SAY DATATYPE (`123') ->
NUM
SAY DATATYPE (`1a f2', `X') -> 1
SAY DATATYPE (`aBcde', `L') -> 0
Löscht den Teil des Arguments "Zeichenfolge", der mit dem n-ten Zeichen beginnt und aus der mit "Länge" angegebenen Anzahl Zeichen besteht. Standardlänge ist die verbleibende Länge der Zeichenfolge. Beispiel:
SAY DELSTR (`123456', 2, 3) -> 156
Löscht den Teil des Arguments "Zeichenfolge", der mit den n-ten Wort beginnt und aus der mit "Länge" angegebenen Anzahl Wörter besteht. Standardlänge ist der komplette Rest der Zeichenfolge. Zur gekürzten Zeichenfolge gehören auch alle dem letzten Wort nachgestellten Leerzeichen. Beispiel:
SAY DELWORD (`Sag mit was Nettes',
2, 2) -> `Sag Nettes'
SAY DELWORD (eins zwei drei', 3) -> `eins zwei'
Gibt die aktuelle Vorgabe für NUMERIC DIGITS zurück. Beispiel:
NUMERIC DIGITS 6
SAY DIGITS() -> 6
Prüft die angegebene logische Datei und gibt den booleschen Wert 1 (Wahr) zurück, wenn das Dateiende erreicht ist, andernfalls 0 (Falsch). Beispiel:
Gibt den dem angegebenen ARexx-Fehlercode zugehörigen Fehlermeldungstext zurück. Ist die Zahl kein gültiger Fehlercode, wird eine leere Zeichenfolge zurückgegeben. Beispiel:
SAY ERRORTEXT (41) -> Invalid expression (Ungültiger Ausdruck)
Testet, ob eine externe Datei mit dem angegebenen Namen existiert. Der Name kann auch Geräte- und Verzeichnisangaben enthalten. Beispiel:
Kopiert Daten aus der wahlfreien Zeichenfolge in den zuvor reservierten Speicherbereich. Dieser Speicherbereich muß in Form einer 4-Byte-Adresse angegeben werden. Das Längenargument bezeichnet die maximale Anzahl zu kopierender Zeichen. Standardwert ist die Länge der Zeichenfolge. Ist die angegebene Länge größer als die der Zeichenfolge, wird der restliche Bereich mit dem Füllzeichen oder mit Nullzeichen (`00'x) aufgefüllt. Der Rückgabewert gibt die Anzahl der kopierten Zeichen an.
Siehe auch IMPORT() und STORAGE(). Beispiel:
anzahl = EXPORT (`0004 0000'x, `Die Antwort')
Gibt die aktuelle Vorgabe für NUMERIC FORM zurück. Beispiel:
NUMERIC FORM SCIENTIFIC
SAY FORM() -> SCIENTIFIC
Die Funktion FIND() sucht eine Phrase aus mehreren Wörtern in einer Wortfolge und gibt die Wortnummer des Anfangs der Übereinstimmung zurück. Beispiel:
SAY FIND (`Nun ist es Zeit', `ist es') -> 2
Gibt einen Speicherblock mit der vorgegebenen Länge an den internen Pool des Interpreters zurück. Das Argument "Adresse" muß eine 4 Byte lange Zeichenfolge sein, die man durch einen vorherigen Aufruf der internen Zuordnungsfunktion GETSPACE()(
erhalten hat. Es ist nicht immer erforderlich, intern reservierten Speicherplatz freizugeben, da dieser bei Beendigung des Programms dem System sowieso wieder zur Verfügung gestellt wird. Wurde jedoch ein sehr großer Speicherblock reserviert, kann seine Rückgabe an den Pool möglichen Speicherplatz-Problemen vorbeugen. Der Rückgabewert ist ein boolesches Erfolgskennzeichen. Vergleichen Sie dazu auch die Funktion GETSPACE():
SAY FREESPACE (`00042000'x,32) -> 1
Wird die Funktion FREESPACE() ohne Argumente aufgerufen, dann wird der im internen Pool des Interpreters verfügbare Speicherplatz zurückgegeben.
Gibt die aktuelle Vorgabe für NUMERIC FUZZ zurück. Beispiel:
NUMERIC FUZZ 3
SAY FUZZ () -> 3
Durchsucht die Clip-Liste nach einem Eintrag, der dem angegebenen Argument "Name" entspricht, und gibt die diesem Parameter zugeordnete Wertzeichenfolge zurück. Bei diesem Namensabgleich wird nicht zwischen Groß- und Kleinschreibung unterschieden. Wenn der Name in der Clip-Liste nicht gefunden wird, wird eine leere Zeichenfolge zurückgegeben (siehe auch SETCLIP()). Beispiel:
/*Angenommen `Zahlen' enthält
`PI=3.14159'*/
SAY GETCLIP (`Zahlen') -> PI=3.14159
Reserviert einen Speicherblock der angegebenen Länge aus dem internen Pool des Interpreters. Der Rückgabewert ist die 4-Byte-Adresse des reservierten Blocks, der weder gelöscht noch auf andere Weise initialisiert wird. Sobald das ARexx-Programm beendet wird, wird der interne Speicher automatisch wieder dem System zur Verfügung gestellt. Daher sollte die Funktion nicht verwendet werden, um Speicherplatz für externe Programme zu reservieren. Die Unterstützungsbibliothek (REXXSupport.Library) enthält die Funktion ALLOCMEM(), die Speicherplatz aus der Liste für freien Systemspeicher reserviert (siehe auch FREESPACE()). Beispiel:
SAY C2X GETSPACE (32)) -> `0003BF40'x
Gibt das Hash-Attribut einer Zeichenfolge als Dezimalzahl zurück und aktualisiert den internen Hash-Wert der Zeichenfolge. Beispiel:
Diese Funktion erstellt eine Zeichenfolge, indem sie Daten ab einer angegebenen 4-Byte-Adresse kopiert. Wird kein Argument "Länge" angegeben, endet der Kopiervorgang, sobald ein Byte mit dem Wert Null gefunden wird (siehe auch EXPORT()). Beispiel:
extval = IMPORT (`0004 0000'x,8)
|
|