Beschreibung | Einen Speicherblock dekodieren und in Unicode wandeln |
Aufruf C | int *unicode;
long str_len, len; short nr, used_chars; (kt->BlockUnicode2XUtf)(string, &str_len, nr, unicode, len); |
Aufruf Pascal | unicode : Array of Integer;
str_len, len : LongInt; nr, read_chars : Integer; kt^.BlockUnicode2XUtf(nil, nil, 0, 0, 0, string, str_len, nr, unicode, len); |
Aufruf GFA | kt_func% = {kt_struc%+124}
~C:kt_func%(L:string%, str_len%, nr&, L:unicode%, L:len&) |
Die Funktion BlockUnicode2XUtf codiert einen Unicode-Speicherbereich (Adresse 'unicode', Länge 'len'). Die Funktion greift für 'nr' im Bereich von 0..GetImpMaxNr() auf die Funktion BlockUnicode2X zurück. Für 'nr' im Bereich GetImpMinNr()..-1 wird jeweils ein Unicode-Zeichen in ggf. mehreren Zeichen des Strings codiert.
Hinweis: Falls in 'str_len' nicht NULL bzw. NIL übergeben wird, wird dort die Anzahl der benötigten Zeichen des String 'string' eingetragen, die die decodierten Unicode-Zeichen ergeben.
Hinweis: Wenn als String 'string' NULL bzw. NIL übergeben wird, wird nur ermittelt, wie viele Zeichen der String enthalten würde.
Hinweis: Die Funktion BlockUnicode2XUtf verarbeitet anders als die Funktion CharUnicode2XUtf nur Zeichen aus dem 16-Bit-Unicode.
Die Funktion BlockUnicode2XUtf ist vorhanden, wenn size>=128 ist.