STRING (formato decimale) in DOUBLE INTEGER senza segno
STRING_TO_UDINT converte una stringa in formato decimale in un valore del tipo di dato DOUBLE INTEGER senza segno.
La stringa viene dapprima convertita in un valore del tipo di dato STRING[32], il quale viene successivamente convertito in un valore del tipo di dato UDINT in un sottoprogramma di circa 270 passi. Il sottoprogramma è utilizzato anche dalle funzioni STRING_TO_INT, STRING_TO_WORD, STRING_TO_UDINT e STRING_TO_DWORD.
Formato accettabile: '[Spazio][Segno][Numero decimale][Spazio]' p.es. ' 123456 '
Caratteri accettabili:
Spazio
Spazio ""
Segno
"+" (più), "-" (meno)
Numeri decimali
Numeri decimali "0 - 9"
L'analisi termina con il primo numero non decimale.
Ingresso
Tipo di dato di ingresso
Uscita
Risultato della conversione
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
UDINT_value: UDINT:=0;
STRING_value: STRING[10]:='3147483647';
END_VAR
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,STRING_TO_UDINT!,Instance,15,1,25,3,,?D?C);
B(B_VARIN,,STRING_value,13,1,15,3,);
B(B_VAROUT,,UDINT_value,25,1,27,3,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
UDINT_value := STRING_TO_UDINT(STRING_value);