cobol
Funzioni intrinseche
Ricerca…
introduzione
Le funzioni intrinseche sono incluse nello standard COBOL come un insieme di funzioni che restituiscono valori da un algoritmo specifico, dato zero o più argomenti. Queste funzioni intrinseche sono fornite come funzionalità del compilatore e del sistema di runtime. Gli articoli di restituzione sono campi COBOL temporanei e possono essere dati di carattere, campi di bit o valori numerici.
Gli esempi includono funzioni trigonometriche, routine di data e ora, conversioni di tipi di dati, deviazione standard e altri algoritmi di supporto.
Osservazioni
COBOL 2014 elenca le seguenti funzioni intrinseche standard:
======================================== ==========
Intrinsic Function Parameters
======================================== ==========
FUNCTION ABS 1
FUNCTION ACOS 1
FUNCTION ANNUITY 2
FUNCTION ASIN 1
FUNCTION ATAN 1
FUNCTION BOOLEAN-OF-INTEGER 2
FUNCTION BYTE-LENGTH 1
FUNCTION CHAR 1
FUNCTION CHAR-NATIONAL 1
FUNCTION COMBINED-DATETIME 2
FUNCTION COS 1
FUNCTION CURRENCY-SYMBOL 0
FUNCTION CURRENT-DATE 0
FUNCTION DATE-OF-INTEGER 1
FUNCTION DATE-TO-YYYYMMDD Variable
FUNCTION DAY-OF-INTEGER 1
FUNCTION DAY-TO-YYYYDDD Variable
FUNCTION DISPLAY-OF Variable
FUNCTION E 0
FUNCTION EXCEPTION-FILE 0
FUNCTION EXCEPTION-FILE-N 0
FUNCTION EXCEPTION-LOCATION 0
FUNCTION EXCEPTION-LOCATION-N 0
FUNCTION EXCEPTION-STATEMENT 0
FUNCTION EXCEPTION-STATUS 0
FUNCTION EXP 1
FUNCTION EXP10 1
FUNCTION FACTORIAL 1
FUNCTION FORMATTED-CURRENT-DATE 1
FUNCTION FORMATTED-DATE 2
FUNCTION FORMATTED-DATETIME Variable
FUNCTION FORMATTED-TIME Variable
FUNCTION FRACTION-PART 1
FUNCTION HIGHEST-ALGEBRAIC 1
FUNCTION INTEGER 1
FUNCTION INTEGER-OF-BOOLEAN 1
FUNCTION INTEGER-OF-DATE 1
FUNCTION INTEGER-OF-DAY 1
FUNCTION INTEGER-OF-FORMATTED-DATE 2
FUNCTION INTEGER-PART 1
FUNCTION LENGTH 1
FUNCTION LENGTH-AN 1
FUNCTION LOCALE-COMPARE Variable
FUNCTION LOCALE-DATE 2
FUNCTION LOCALE-TIME 2
FUNCTION LOCALE-TIME-FROM-SECONDS 2
FUNCTION LOG 1
FUNCTION LOG10 1
FUNCTION LOWER-CASE 1
FUNCTION LOWEST-ALGEBRAIC 1
FUNCTION MAX Variable
FUNCTION MEAN Variable
FUNCTION MEDIAN Variable
FUNCTION MIDRANGE Variable
FUNCTION MIN Variable
FUNCTION MOD 2
FUNCTION MODULE-CALLER-ID 0
FUNCTION MODULE-DATE 0
FUNCTION MODULE-FORMATTED-DATE 0
FUNCTION MODULE-ID 0
FUNCTION MODULE-PATH 0
FUNCTION MODULE-SOURCE 0
FUNCTION MODULE-TIME 0
FUNCTION MONETARY-DECIMAL-POINT 0
FUNCTION MONETARY-THOUSANDS-SEPARATOR 0
FUNCTION NATIONAL-OF Variable
FUNCTION NUMERIC-DECIMAL-POINT 0
FUNCTION NUMERIC-THOUSANDS-SEPARATOR 0
FUNCTION NUMVAL 1
FUNCTION NUMVAL-C 2
FUNCTION NUMVAL-F 1
FUNCTION ORD 1
FUNCTION ORD-MAX Variable
FUNCTION ORD-MIN Variable
FUNCTION PI 0
FUNCTION PRESENT-VALUE Variable
FUNCTION RANDOM Variable
FUNCTION RANGE Variable
FUNCTION REM 2
FUNCTION REVERSE 1
FUNCTION SECONDS-FROM-FORMATTED-TIME 2
FUNCTION SECONDS-PAST-MIDNIGHT 0
FUNCTION SIGN 1
FUNCTION SIN 1
FUNCTION SQRT 1
FUNCTION STANDARD-COMPARE Variable
FUNCTION STANDARD-DEVIATION Variable
FUNCTION STORED-CHAR-LENGTH 1
FUNCTION SUM Variable
FUNCTION TAN 1
FUNCTION TEST-DATE-YYYYMMDD 1
FUNCTION TEST-DAY-YYYYDDD 1
FUNCTION TEST-FORMATTED-DATETIME 2
FUNCTION TEST-NUMVAL 1
FUNCTION TEST-NUMVAL-C 2
FUNCTION TEST-NUMVAL-F 1
FUNCTION TRIM 2
FUNCTION UPPER-CASE 1
FUNCTION VARIANCE Variable
FUNCTION WHEN-COMPILED 0
FUNCTION YEAR-TO-YYYY Variable
======================================== ==========
Aggiunge GnuCOBOL
======================================== ==========
FUNCTION CONCATENATE Variable
FUNCTION SUBSTITUTE Variable
FUNCTION SUBSTITUTE-CASE Variable
======================================== ==========
La parola chiave FUNCTION
è richiesta a meno che non includa l'opzione source (o compile time)
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
REPOSITORY.
FUNCTION ALL INTRINSIC.
Dove ALL INTRINSIC
può essere un elenco di funzioni da utilizzare senza il prefisso FUNCTION
nelle istruzioni PROCEDURE DIVISION
.
La funzione LENGTH
ha una cronologia ordinata. Alcuni compilatori includono una parola riservata LENGTH
. Per GnuCOBOL, questa parola riservata è riconosciuta solo quando viene usata nella frase LENGTH OF
, il token OF
è richiesto per disambiguare la funzione dall'estensione di parola riservata più vecchia.
Esempio di TRIM FUNZIONE
01 some-string PIC X(32).
...
MOVE " a string literal" TO some-string
DISPLAY ":" some-string ":"
DISPLAY ":" FUNCTION TRIM(some-string) ":"
DISPLAY ":" FUNCTION TRIM(some-string LEADING) ":"
DISPLAY ":" FUNCTION TRIM(some-string TRAILING) ":"
Mostrando
: a string literal :
:a string literal:
:a string literal :
: a string literal:
LETTERE MAIUSCOLE
MOVE FUNCTION UPPER-CASE("Hello World!") TO SOME-FIELD
DISPLAY SOME-FIELD
Produzione
HELLO WORLD!
Funzione LOWER-CASE
MOVE FUNCTION LOWER-CASE("HELLO WORLD!") TO SOME-FIELD
DISPLAY SOME-FIELD
Produzione
hello world!