Vai al contenuto

eTO_POINTER, cast value to a PVOID pointer

Vai all indice del manuale di programmazione
Tipo: Funzione
Libreria LogicLab: eLLabCommonLib
Libreria Codesys: Non disponibile

Quando si lavora con tipi di dati diversi tra loro può essere necessario convertire valori da un tipo ad un altro. LogicLab mette a disposizione in modo nativo una serie di operatori di casting, ma se necessita forzare a tipo PVOID un qualsiasi valore a 32 bits occorre utilizzare questa funzione. La funzione ritorna in uscita il valore dato in ingresso su In.

Approfondimenti

Descrizione

In (PVOID) Valore che verrà ritornato in uscita come pointer.

La funzione ritorna un PVOID.

Immagine F eTO_POINTER

Esempi

Come utilizzare gli esempi.
Viene sostituito il carattere “!” con il carattere “.”, per poter accedere a byte alla stringa occorre cambiare il tipo di puntatore.

LogicLab (Ptp201, ST_eTO_POINTER)
PROGRAM ST_eTO_POINTER
VAR
    BPtr : @BYTE;  (* BYTE pointer *)
    Str : STRING[ 32 ] := 'Hello!'; (* Byte array *)
END_VAR

// *****************************************************************************
// PROGRAM "ST_eTO_POINTER"
// *****************************************************************************
// This program shows the use of "eTO_POINTER" function.
// -----------------------------------------------------------------------------

    // -------------------------------------------------------------------------
    // CHANGE CHARACTER ON STRING
    // -------------------------------------------------------------------------
    // The "!" character is changed to ".".

    BPtr:=eTO_POINTER(ADR(Str)+5); //Str:"Hello!"
    @BPtr:=16#2E; //Str:"Hello."

// [End of file]
Was this article helpful?