STRING_TO_UDINT

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.

Note

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.

Parametri

Ingresso

Unnamed input (STRING)

Tipo di dato di ingresso

Uscita

Unnamed output (UDINT)

Risultato della conversione

Esempio

Intestazione del POU

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

Corpo LD

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

Corpo ST

UDINT_value := STRING_TO_UDINT(STRING_value);

L'ultima revisione: 2023-08-17Feedback su questa paginaPanasonic hotline