Numero di elementi in un array
Questa funzione restituisce il numero di elementi in un array.
Il numero totale di elementi della variabile array all'ingresso Array1D viene restituito all'uscita NrOfElem1. È possibile trasferire una variabile array di qualsiasi dimensione. In ogni caso viene restituito il numero totale di elementi di tutte le dimensioni. È quindi possibile scrivere funzioni e Function Block che elaborano array di varie lunghezze (anche insieme con le funzioni (GetPointer, AreaOffs_ToVar, Var_ToAreaOffs).
Ingresso
Variabile di ingresso (dimensione array 1, 2 o 3) il cui numero di elementi deve essere determinato
Uscita
Restituisce il numero di elementi nella variabile di ingresso
Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.
VAR
ArrayOfInt: ARRAY [2..15] OF INT:=[14(0)];
NumberOfDim1: INT:=0;
END_VAR
In questo caso la funzione Elem_OfArray1D viene eseguita in ogni ciclo della CPU (nessun ingresso EN). Determina il numero di elementi della variabile ArrayOfInt. Il risultato qui è: NumberOfDim1 = 14.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,Elem_OfArray1D!,Instance,8,1,19,4,,?DArray1D?CNrOfElem1);
B(B_VARIN,,ArrayOfInt,6,2,8,4,);
B(B_VAROUT,,NumberOfDim1,19,2,21,4,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
Altri progetti d'esempio (directory "Esempi" dell'installazione di FPWIN Pro): Calcolo della somma di tutti gli elementi array