<QtEndian> - Endian Conversion Functions

Der Header <QtEndian> enthält Funktionen zur Konvertierung zwischen Little-Endian- und Big-Endian-Darstellungen von Zahlen. Mehr...

Header: #include <QtEndian>

Typen

Funktionen

T qFromBigEndian(const void *src)
void qFromBigEndian(const void *src, qsizetype count, void *dest)
T qFromBigEndian(T src)
T qFromLittleEndian(const void *src)
void qFromLittleEndian(const void *src, qsizetype count, void *dest)
T qFromLittleEndian(T src)
void qToBigEndian(T src, void *dest)
void qToBigEndian(const void *src, qsizetype count, void *dest)
T qToBigEndian(T src)
void qToLittleEndian(T src, void *dest)
void qToLittleEndian(const void *src, qsizetype count, void *dest)
T qToLittleEndian(T src)

Ausführliche Beschreibung

Typdokumentation

qint16_be

Typedef für QBEInteger<QINT16>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 16-Bit-Ganzzahl mit Vorzeichen im Big-Endian-Format im Speicher abgelegt.

Siehe auch qint16.

qint16_le

Typedef für QLEInteger<QINT16>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 16-Bit-Ganzzahl mit Vorzeichen im Little-Endian-Format im Speicher abgelegt.

Siehe auch qint16.

qint32_be

Typedef für QBEInteger<QINT32>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 32-Bit-Ganzzahl mit Vorzeichen im Big-Endian-Format im Speicher abgelegt.

Siehe auch qint32.

qint32_le

Typedef für QLEInteger<QINT32>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 32-Bit-Ganzzahl mit Vorzeichen im Little-Endian-Format im Speicher abgelegt.

Siehe auch qint32.

qint64_be

Typedef für QBEInteger<QINT64>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 64-Bit-Ganzzahl mit Vorzeichen im Big-Endian-Format im Speicher abgelegt.

Siehe auch qint64.

qint64_le

Typedef für QLEInteger<QINT64>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als vorzeichenbehaftete 64-Bit-Ganzzahl im Little-Endian-Format im Speicher abgelegt.

Siehe auch qint64.

quint16_be

Typedef für QBEInteger<QUINT16>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 16-Bit-Big-Endian-Ganzzahl ohne Vorzeichen im Speicher abgelegt.

Siehe auch quint16.

quint16_le

Typedef für QLEInteger<QUINT16>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 16-Bit-Ganzzahl ohne Vorzeichen im Little-Endian-Format im Speicher abgelegt.

Siehe auch „ quint16 “.

quint32_be

Typedef für QBEInteger<QUINT32>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 32-Bit-Ganzzahl ohne Vorzeichen im Big-Endian-Format im Speicher abgelegt.

Siehe auch „ quint32 “.

quint32_le

Typedef für QLEInteger<QUINT32>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 32-Bit-Ganzzahl ohne Vorzeichen im Little-Endian-Format im Speicher abgelegt.

Siehe auch quint32.

quint64_be

Typedef für QBEInteger<QUINT64>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 64-Bit-Ganzzahl ohne Vorzeichen im Big-Endian-Format im Speicher abgelegt.

Siehe auch „ quint64 “.

quint64_le

Typedef für QLEInteger<QUINT64>. Dieser Typ wird auf allen von Qt unterstützten Plattformen garantiert als 64-Bit-Ganzzahl ohne Vorzeichen im Little-Endian-Format im Speicher abgelegt.

Siehe auch „ quint64 “.

Funktionsdokumentation

template <typename T> T qFromBigEndian(const void *src)

Liest eine Big-Endian-Zahl aus dem Speicherplatz „ src “ und gibt die Zahl in der Byte-Reihenfolge des Hosts zurück. Auf CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Little-Endian ist (wie z. B. x86), wird dabei die Byte-Reihenfolge vertauscht; andernfalls wird lediglich aus „ src “ gelesen.

Hinweis: Der Template-Typ ` T ` kann entweder `quint16`, `qint16`, `quint32`, `qint32`, `quint64` oder `qint64` sein. Andere Ganzzahltypen, z. B. `qlong`, sind nicht zulässig.

Hinweis: Seit Qt 5.7 ist der Typ des Parameters „ src “ ein „void“-Zeiger.

Für ` src` gelten keine Einschränkungen hinsichtlich der Datenausrichtung.

Siehe auch „ qFromLittleEndian()“, „ qToBigEndian()“ und „ qToLittleEndian()“.

template <typename T> void qFromBigEndian(const void *src, qsizetype count, void *dest)

Liest „ count “-Zahlen im Big-Endian-Format aus dem Speicherort „ src “ und speichert sie in der Host-Byte-Reihenfolge unter „ dest “. Bei CPU-Architekturen, bei denen die Host-Byte-Reihenfolge Little-Endian ist (z. B. x86), wird dabei die Byte-Reihenfolge vertauscht; andernfalls wird lediglich ein „ memcpy “ von „ src “ nach „ dest “ durchgeführt.

Hinweis: Der Vorlagentyp „ T “ kann entweder „quint16“, „qint16“, „quint32“, „qint32“, „quint64“ oder „qint64“ sein. Andere Ganzzahltypen, z. B. „qlong“, sind nicht zulässig.

Es gibt keine Einschränkungen hinsichtlich der Datenausrichtung für ` src`. Es wird jedoch erwartet, dass ` dest ` für den Typ ` T` natürlich ausgerichtet ist.

Wenn „ src “ und „ dest “ derselbe Zeiger sein können, führt diese Funktion (falls erforderlich) einen In-Place-Tausch durch. Sind sie nicht identisch, dürfen sich die Speicherbereiche nicht überschneiden.

Siehe auch qFromLittleEndian(), qToBigEndian() und qToLittleEndian().

[constexpr] template <typename T> T qFromBigEndian(T src)

Konvertiert src aus der Big-Endian-Byte-Reihenfolge und gibt die Zahl in der Byte-Reihenfolge des Hosts zurück. Auf CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Little-Endian ist (wie z. B. x86), gibt diese Funktion src mit vertauschter Byte-Reihenfolge zurück; andernfalls wird src unverändert zurückgegeben.

Dies ist eine überladene Funktion.

template <typename T> T qFromLittleEndian(const void *src)

Liest eine Little-Endian-Zahl aus dem Speicherplatz „ src “ und gibt die Zahl in der Byte-Reihenfolge des Hosts zurück. Bei CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Big-Endian ist (z. B. PowerPC), wird dabei die Byte-Reihenfolge vertauscht; andernfalls wird lediglich aus „ src “ gelesen.

Hinweis: Der Template-Typ ` T ` kann entweder `quint16`, `qint16`, `quint32`, `qint32`, `quint64` oder `qint64` sein. Andere Ganzzahltypen, z. B. `qlong`, sind nicht zulässig.

Hinweis: Seit Qt 5.7 ist der Typ des Parameters „ src “ ein „void“-Zeiger.

Für ` src` gelten keine Einschränkungen hinsichtlich der Datenausrichtung.

Siehe auch „ qFromBigEndian()“, „ qToBigEndian()“ und „ qToLittleEndian()“.

template <typename T> void qFromLittleEndian(const void *src, qsizetype count, void *dest)

Liest count Little-Endian-Zahlen aus dem Speicherplatz src und speichert sie in der Byte-Reihenfolge des Hosts unter dest. Bei CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Big-Endian ist (wie z. B. PowerPC), wird dabei die Byte-Reihenfolge vertauscht; andernfalls wird lediglich ein „ memcpy “ von src nach dest durchgeführt.

Hinweis: Der Vorlagentyp „ T “ kann entweder „quint16“, „qint16“, „quint32“, „qint32“, „quint64“ oder „qint64“ sein. Andere Ganzzahltypen, z. B. „qlong“, sind nicht zulässig.

Es gibt keine Einschränkungen hinsichtlich der Datenausrichtung für ` src`. Es wird jedoch erwartet, dass ` dest ` für den Typ ` T` natürlich ausgerichtet ist.

Wenn „ src “ und „ dest “ derselbe Zeiger sein können, führt diese Funktion (falls erforderlich) einen In-Place-Tausch durch. Sind sie nicht identisch, dürfen sich die Speicherbereiche nicht überlappen.

Siehe auch qToBigEndian() und qToLittleEndian().

[constexpr] template <typename T> T qFromLittleEndian(T src)

Konvertiert src aus der Little-Endian-Byte-Reihenfolge und gibt die Zahl in der Byte-Reihenfolge des Hosts zurück. Auf CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Big-Endian ist (z. B. PowerPC), gibt diese Funktion src mit vertauschter Byte-Reihenfolge zurück; andernfalls gibt sie src unverändert zurück.

Dies ist eine überladene Funktion.

template <typename T> void qToBigEndian(T src, void *dest)

Schreibt die Zahl „ src “ mit dem Vorlagentyp „ T “ in die Speicherposition „ dest “ in Big-Endian-Byte-Reihenfolge.

Hinweis: Der Vorlagentyp „ T “ kann entweder „quint16“, „qint16“, „quint32“, „qint32“, „quint64“ oder „qint64“ sein. Andere Ganzzahltypen, z. B. „qlong“, sind nicht zulässig.

Für „ dest “ gelten keine Einschränkungen hinsichtlich der Datenausrichtung.

Hinweis: Seit Qt 5.7 ist der Typ des Parameters „ dest “ ein „void“-Zeiger.

Siehe auch ` qFromBigEndian()`, ` qFromLittleEndian()` und ` qToLittleEndian()`.

template <typename T> void qToBigEndian(const void *src, qsizetype count, void *dest)

Liest „ count “-Zahlen aus dem Speicherplatz „ src “ in der Byte-Reihenfolge des Hosts und speichert sie in der Big-Endian-Darstellung unter „ dest “. Bei CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Little-Endian ist (z. B. x86), wird dabei die Byte-Reihenfolge vertauscht; andernfalls wird lediglich ein „ memcpy “ von „ src “ nach „ dest “ durchgeführt.

Hinweis: Der Vorlagentyp „ T “ kann entweder „quint16“, „qint16“, „quint32“, „qint32“, „quint64“ oder „qint64“ sein. Andere Ganzzahltypen, z. B. „qlong“, sind nicht zulässig.

Es gibt keine Einschränkungen hinsichtlich der Datenausrichtung für ` dest`. Es wird jedoch erwartet, dass ` src ` für den Typ ` T` natürlich ausgerichtet ist.

Wenn ` src ` und ` dest ` derselbe Zeiger sein können, führt diese Funktion (falls erforderlich) einen In-Place-Tausch durch. Sind sie nicht identisch, dürfen sich die Speicherbereiche nicht überschneiden.

Siehe auch qFromLittleEndian(), qToBigEndian() und qToLittleEndian().

[constexpr] template <typename T> T qToBigEndian(T src)

Wandelt „ src “ aus der Byte-Reihenfolge des Hosts um und gibt die Zahl in der Big-Endian-Darstellung zurück. Auf CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Little-Endian ist (wie z. B. x86), gibt diese Funktion „ src “ mit vertauschter Byte-Reihenfolge zurück; andernfalls wird „ src “ unverändert zurückgegeben.

Dies ist eine überladene Funktion.

template <typename T> void qToLittleEndian(T src, void *dest)

Schreibt die Zahl „ src “ mit dem Vorlagentyp „ T “ in die Speicherposition „ dest “ in Little-Endian-Byte-Reihenfolge.

Hinweis: Der Vorlagentyp „ T “ kann entweder „quint16“, „qint16“, „quint32“, „qint32“, „quint64“ oder „qint64“ sein. Andere Ganzzahltypen, z. B. „qlong“, sind nicht zulässig.

Für „ dest “ gelten keine Einschränkungen hinsichtlich der Datenausrichtung.

Hinweis: Seit Qt 5.7 ist der Typ des Parameters „ dest “ ein „void“-Zeiger.

Siehe auch ` qFromBigEndian()`, ` qFromLittleEndian()` und ` qToBigEndian()`.

template <typename T> void qToLittleEndian(const void *src, qsizetype count, void *dest)

Liest „ count “-Zahlen aus dem Speicherplatz „ src “ in der Byte-Reihenfolge des Hosts und speichert sie in der Little-Endian-Darstellung unter „ dest “. Bei CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Big-Endian ist (wie z. B. bei PowerPC), wird dabei die Byte-Reihenfolge vertauscht; andernfalls wird lediglich ein „ memcpy “ von „ src “ nach „ dest “ durchgeführt.

Hinweis: Der Vorlagentyp „ T “ kann entweder „quint16“, „qint16“, „quint32“, „qint32“, „quint64“ oder „qint64“ sein. Andere Ganzzahltypen, z. B. „qlong“, sind nicht zulässig.

Es gibt keine Einschränkungen hinsichtlich der Datenausrichtung für „ dest “. Es wird jedoch erwartet, dass „ src “ für den Typ „ T “ natürlich ausgerichtet ist.

Wenn src und dest derselbe Zeiger sein können, führt diese Funktion (falls erforderlich) einen In-Place-Tausch durch. Sind sie nicht identisch, dürfen sich die Speicherbereiche nicht überschneiden.

Siehe auch qFromLittleEndian(), qToBigEndian() und qToLittleEndian().

[constexpr] template <typename T> T qToLittleEndian(T src)

Konvertiert „ src “ aus der Byte-Reihenfolge des Hosts und gibt die Zahl in der Little-Endian-Darstellung zurück. Auf CPU-Architekturen, bei denen die Byte-Reihenfolge des Hosts Big-Endian ist (wie z. B. PowerPC), gibt diese Funktion „ src “ mit vertauschter Byte-Reihenfolge zurück; andernfalls wird „ src “ unverändert zurückgegeben.

Dies ist eine überladene Funktion.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.