SysCVsnprintf, concat string with variable print

List

Questa pagina fa parte del Manuale Programmazione IEC 61131-3. Vai all indice.

Questa funzione trasferisce in Str la stampa formattata di una variabile. Il valore stampato ritornato nella variabile stringa non può superare la lunghezza definita in Size, vedere anche funzione SysVsnprintf.

La stringa Format specifica il formato con il quale stampare la variabile. Mentre in VarType è indicato il tipo di variabile ed in VarAdd il suo indirizzo.

A differenza dalla funzione SysVsnprintf la stampa formattata viene accodata al di Str. Questo permette di concatenare più stampe in una unica stringa. La stampa viene troncata nel caso in cui la lunghezza totale della stringa superi la lunghezza definita in Size.

Sostituisce SysLWVarsnprintf

Sostituisce la funzione SysLWVarsnprintf modificando il tipo di parametri in ingresso da stringa a puntatore a stringa. La precedente dichiarazione:

i:=SysLWVarsnprintf(ADR(StringOut), SIZEOF(StringOut), 'Your IP:%s$r$n', STRING_TYPE, CInfos.PeerIP);

Diventa:

i:=SysCVsnprintf(ADR(StringOut), SIZEOF(StringOut), ADR('Your IP:%s$r$n'), VR_TYPE#STRING_TYPE, CInfos.PeerIP);
Information Circle

Funzione

CODESYS: Non disponibile

LogicLab: eLLabXUnified12Lib

Descrizione

Str (@STRING) Pointer alla variabile stringa dove deve essere trasferito il risultato.
Size (UDINT) Numero di caratteri da trasferire nella variabile String. Il numero definito è comprensivo del codice di fine stringa ”. Se la lunghezza della stringa in uscita supera il limite di Size byte, viene troncata al numero di byte indicato.
Format (@STRING) Ha due tipi di argomenti, i caratteri ordinari che vengono copiati nello stream di uscita, e le specifiche di conversione, contraddistinte dal simbolo percentuale (%) e da un carattere che specifica il formato con il quale stampare la variabile definita (Definizione).
VarType (VR_TYPE) Tipo variabile da stampare (Definizione).
VarAdd (PVOID) Indirizzo variabile.

La funzione ritorna una variabile (INT) che indica il numero di caratteri accodati al contenuto di Str escluso il terminatore. Se la stampa formattata sommata al contenuto di Str supera la dimensione definita in Size, viene troncata ed è ritornata la dimensione trasferita. eEOF se errore definizione parametri.

Immagine F SysCVsnprintf

Esempi

Si rimanda all’esempio della funzione SysVsnprintf.

Was this article helpful?