PVOID_TO_HEXSTR

PVOID_TO_HEXSTR 1:

Die Funktion konvertiert den Wert einer Pointervariablen vom Typ PVOID in einen Hexadezimalstring (Basis 16).

PVOID_TO_HEXSTR 2: Rückgabewert

Name

Typ

Beschreibung

PVOID_TO_HEXSTR

T_MaxString

 

PVOID_TO_HEXSTR 3: Eingänge

VAR_INPUT
    in          : PVOID;
    iPrecision  : INT;
    bLoCase     : BOOL;
END_VAR

Name

Typ

Beschreibung

in

PVOID

Die zu konvertierende Pointervariable.

iPrecision

INT

Minimale Anzahl der erscheinenden Stellen (digits). Ist die tatsächliche Anzahl der signifikanten Stellen kleiner als der iPrecision-Parameter, dann wird der resultierende String links mit Nullen aufgefüllt. Ist die Anzahl der signifikanten Stellen größer als der iPrecision-Parameter, dann wird der resultierende String nicht abgeschnitten! Hat der iPrecision-Parameter und der in-Parameter den Wert Null, dann ist der resultierende String ein Leerstring.

bLoCase

BOOL

Dieser Parameter bestimmt, ob Klein- oder Großbuchstaben bei der Konvertierung benutzt werden sollen. FALSE => "ABCDEF", TRUE => "abcdef".

Beispiel:

PROGRAM MAIN
VAR
    s1   : STRING;
    s2   : STRING;
    s3   : STRING;
    s4   : STRING;
    s5   : STRING;
    s6   : STRING;
    s7   : STRING;
    s8   : STRING;
    s9   : STRING;
    s10  : STRING;
    s11  : STRING;
    s12  : STRING;
    nCnt : WORD;
    pCnt : PVOID := 0;
END_VAR
pCnt := 0;
s1   := PVOID_TO_HEXSTR( pCnt, 0, FALSE );
s2   := PVOID_TO_HEXSTR( pCnt, 0, TRUE );

s3   := PVOID_TO_HEXSTR( pCnt, 1, FALSE );
s4   := PVOID_TO_HEXSTR( pCnt, 1, TRUE );

s5   := PVOID_TO_HEXSTR( pCnt, 16, FALSE );
s6   := PVOID_TO_HEXSTR( pCnt, 16, TRUE );

pCnt := ADR( nCnt );
s7   := PVOID_TO_HEXSTR( pCnt, 0, FALSE );
s8   := PVOID_TO_HEXSTR( pCnt, 0, TRUE );

s9   := PVOID_TO_HEXSTR( pCnt, 1, FALSE );
s10  := PVOID_TO_HEXSTR( pCnt, 1, TRUE );

s11  := PVOID_TO_HEXSTR( pCnt, 16, FALSE );
s12  := PVOID_TO_HEXSTR( pCnt, 16, TRUE );

Das Ergebnis:

s1 = ''

s2 = ''

s3 = '0'

s4 = '0'

s5 = '0000000000000000'

s6 = '0000000000000000'

s7 = '87CBC255' (kann variieren)

s8 = '87cbc255' (kann variieren)

s9 = '87CBC255' (kann variieren)

s10 = '87cbc255' (kann variieren)

s11 = '0000000087CBC255' (kann variieren)

s12 = '0000000087cbc255' (kann variieren)

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0

PC oder CX (x86, x64, Arm®)

Tc2_Utilities (System)