<QtEndian> - Endian Conversion Functions
L'en-tête <QtEndian> fournit des fonctions permettant de convertir les représentations des nombres en petit et en grand nombre. Plus d'informations...
| Header: | #include <QtEndian> |
Types
| qint16_be | |
| qint16_le | |
| qint32_be | |
| qint32_le | |
| qint64_be | |
| qint64_le | |
| quint16_be | |
| quint16_le | |
| quint32_be | |
| quint32_le | |
| quint64_be | |
| quint64_le |
Fonctions
| T | qFromBigEndian(const void *src) |
| T | qFromBigEndian(T src) |
| void | qFromBigEndian(const void *src, qsizetype count, void *dest) |
| T | qFromLittleEndian(const void *src) |
| T | qFromLittleEndian(T src) |
| void | qFromLittleEndian(const void *src, qsizetype count, void *dest) |
| void | qToBigEndian(T src, void *dest) |
| T | qToBigEndian(T src) |
| void | qToBigEndian(const void *src, qsizetype count, void *dest) |
| void | qToLittleEndian(T src, void *dest) |
| T | qToLittleEndian(T src) |
| void | qToLittleEndian(const void *src, qsizetype count, void *dest) |
Documentation des types
qint16_be
Typedef pour QBEInteger<qint16>. Ce type est garanti pour être stocké en mémoire comme un entier signé big-endian de 16 bits sur toutes les plates-formes supportées par Qt.
Voir aussi qint16.
qint16_le
Typedef pour QLEInteger<qint16>. Ce type est garanti d'être stocké en mémoire comme un entier signé 16-bit little-endian sur toutes les plateformes supportées par Qt.
Voir aussi qint16.
qint32_be
Typedef pour QBEInteger<qint32>. Ce type est garanti pour être stocké en mémoire comme un entier signé 32-bit big-endian sur toutes les plateformes supportées par Qt.
Voir également qint32.
qint32_le
Typedef pour QLEInteger<qint32>. Ce type est garanti pour être stocké en mémoire comme un entier signé 32-bit little-endian sur toutes les plateformes supportées par Qt.
Voir aussi qint32.
qint64_be
Typedef pour QBEInteger<qint64>. Ce type est garanti pour être stocké en mémoire en tant qu'entier signé big-endian 64 bits sur toutes les plates-formes supportées par Qt.
Voir aussi qint64.
qint64_le
Typedef pour QLEInteger<qint64>. Ce type est garanti pour être stocké en mémoire comme un entier signé 64-bit little-endian sur toutes les plateformes supportées par Qt.
Voir aussi qint64.
quint16_be
Typedef pour QBEInteger<quint16>. Ce type est garanti pour être stocké en mémoire comme un entier non signé big-endian de 16 bits sur toutes les plates-formes supportées par Qt.
Voir également quint16.
quint16_le
Typedef pour QLEInteger<quint16>. Ce type est garanti d'être stocké en mémoire comme un entier non signé 16-bit little-endian sur toutes les plateformes supportées par Qt.
Voir aussi quint16.
quint32_be
Typedef pour QBEInteger<quint32>. Ce type est garanti d'être stocké en mémoire sous la forme d'un entier non signé big-endian de 32 bits sur toutes les plates-formes prises en charge par Qt.
Voir également quint32.
quint32_le
Typedef pour QLEInteger<quint32>. Ce type est garanti pour être stocké en mémoire comme un entier non signé 32-bit little-endian sur toutes les plateformes supportées par Qt.
Voir également quint32.
quint64_be
Typedef pour QBEInteger<quint64>. Ce type est garanti pour être stocké en mémoire comme un entier non signé big-endian 64 bits sur toutes les plates-formes supportées par Qt.
Voir aussi quint64.
quint64_le
Typedef pour QLEInteger<quint64>. Ce type est garanti pour être stocké en mémoire en tant qu'entier non signé 64-bit little-endian sur toutes les plateformes supportées par Qt.
Voir également quint64.
Documentation des fonctions
template <typename T> T qFromBigEndian(const void *src)
Lit un nombre big-endian à partir de l'emplacement mémoire src et renvoie le nombre dans la représentation de l'ordre des octets de l'hôte. Sur les architectures de processeurs où l'ordre des octets de l'hôte est little-endian (comme x86), cette opération intervertit l'ordre des octets ; sinon, elle se contente de lire à partir de src.
Remarque : le type de modèle T peut être soit un quint16, qint16, quint32, qint32, quint64 ou qint64. Les autres types d'entiers, par exemple qlong, ne sont pas applicables.
Remarque : depuis Qt 5.7, le type du paramètre src est un pointeur vide.
Il n'y a pas de contraintes d'alignement des données pour src.
Voir également qFromLittleEndian(), qToBigEndian() et qToLittleEndian().
[constexpr] template <typename T> T qFromBigEndian(T src)
Convertit src à partir de l'ordre des octets big-endian et renvoie la représentation de ce nombre dans l'ordre des octets de l'hôte. Sur les architectures CPU où l'ordre des octets de l'hôte est little-endian (comme x86), cette fonction renverra src avec l'ordre des octets inversé ; sinon, elle renverra src sans modification.
Il s'agit d'une fonction surchargée.
template <typename T> void qFromBigEndian(const void *src, qsizetype count, void *dest)
Lit count des nombres big-endian à partir de l'emplacement mémoire src et les stocke dans la représentation de l'ordre des octets de l'hôte à dest. Sur les architectures de CPU où l'ordre des octets de l'hôte est little-endian (comme x86), cette opération intervertira l'ordre des octets ; sinon, elle effectuera simplement un memcpy de src à dest.
Remarque : le modèle T peut être soit un quint16, qint16, quint32, qint32, quint64 ou qint64. Les autres types d'entiers, par exemple qlong, ne sont pas applicables.
Il n'y a pas de contraintes d'alignement des données pour src. Cependant, dest doit être aligné naturellement pour le type T.
Si src et dest peuvent être le même pointeur, cette fonction effectuera une permutation sur place (si nécessaire). S'ils ne sont pas identiques, les régions de mémoire ne doivent pas se chevaucher.
Voir également qFromLittleEndian(), qToBigEndian() et qToLittleEndian().
template <typename T> T qFromLittleEndian(const void *src)
Lit un nombre little-endian à partir de l'emplacement mémoire src et renvoie le nombre dans la représentation de l'ordre des octets de l'hôte. Sur les architectures CPU où l'ordre des octets de l'hôte est big-endian (comme PowerPC), cette opération intervertit l'ordre des octets ; sinon, elle se contente de lire à partir de src.
Remarque : le type de modèle T peut être soit un quint16, qint16, quint32, qint32, quint64, ou qint64. Les autres types d'entiers, par exemple qlong, ne sont pas applicables.
Remarque : depuis Qt 5.7, le type du paramètre src est un pointeur vide.
Il n'y a pas de contraintes d'alignement des données pour src.
Voir également qFromBigEndian(), qToBigEndian() et qToLittleEndian().
[constexpr] template <typename T> T qFromLittleEndian(T src)
Convertit src à partir de l'ordre des octets little-endian et renvoie la représentation de ce nombre dans l'ordre des octets de l'hôte. Sur les architectures CPU où l'ordre des octets de l'hôte est big-endian (comme PowerPC), cette fonction renverra src avec l'ordre des octets inversé ; sinon, elle renverra src sans modification.
Il s'agit d'une fonction surchargée.
template <typename T> void qFromLittleEndian(const void *src, qsizetype count, void *dest)
Lit les nombres count little-endian à partir de l'emplacement mémoire src et les stocke dans la représentation de l'ordre des octets de l'hôte à l'emplacement dest. Sur les architectures de CPU où l'ordre des octets de l'hôte est big-endian (comme PowerPC), cette opération intervertira l'ordre des octets ; sinon, elle effectuera simplement un memcpy de src à dest.
Remarque : le type de modèle T peut être soit un quint16, qint16, quint32, qint32, quint64, ou qint64. Les autres types d'entiers, par exemple qlong, ne sont pas applicables.
Il n'y a pas de contraintes d'alignement des données pour src. Cependant, dest doit être aligné naturellement pour le type T.
Si src et dest peuvent être le même pointeur, cette fonction effectuera une permutation sur place (si nécessaire). S'ils ne sont pas identiques, les régions de mémoire ne doivent pas se chevaucher.
Voir également qToBigEndian() et qToLittleEndian().
template <typename T> void qToBigEndian(T src, void *dest)
Écrit le nombre src avec le type de modèle T dans l'emplacement de mémoire dest dans l'ordre des octets big-endian.
Remarque : le type de modèle T peut être soit un quint16, qint16, quint32, qint32, quint64 ou qint64. Les autres types d'entiers, par exemple qlong, ne sont pas applicables.
Il n'y a pas de contraintes d'alignement des données pour dest.
Remarque : depuis Qt 5.7, le type du paramètre dest est un pointeur void.
Voir aussi qFromBigEndian(), qFromLittleEndian() et qToLittleEndian().
[constexpr] template <typename T> T qToBigEndian(T src)
Convertit src à partir de l'ordre des octets de l'hôte et renvoie le nombre dans la représentation de l'ordre des octets big-endian de ce nombre. Sur les architectures CPU où l'ordre des octets de l'hôte est little-endian (comme x86), cette fonction renverra src avec l'ordre des octets interverti ; sinon, elle renverra src sans modification.
Il s'agit d'une fonction surchargée.
template <typename T> void qToBigEndian(const void *src, qsizetype count, void *dest)
Lit les nombres count à partir de l'emplacement mémoire src dans l'ordre des octets de l'hôte et les stocke dans une représentation big-endian à dest. Sur les architectures d'unité centrale où l'ordre des octets de l'hôte est little-endian (comme x86), cette opération intervertira l'ordre des octets ; sinon, elle effectuera simplement un memcpy de src à dest.
Remarque : le modèle T peut être soit un quint16, qint16, quint32, qint32, quint64 ou qint64. Les autres types d'entiers, par exemple qlong, ne sont pas applicables.
Il n'y a pas de contraintes d'alignement des données pour dest. Cependant, src doit être aligné naturellement pour le type T.
Si src et dest peuvent être le même pointeur, cette fonction effectuera une permutation sur place (si nécessaire). S'ils ne sont pas identiques, les régions de mémoire ne doivent pas se chevaucher.
Voir également qFromLittleEndian(), qToBigEndian() et qToLittleEndian().
template <typename T> void qToLittleEndian(T src, void *dest)
Écrit le nombre src avec le type de modèle T dans l'emplacement de mémoire dest dans l'ordre des octets petit-endien.
Remarque : le type de modèle T peut être soit un quint16, qint16, quint32, qint32, quint64 ou qint64. Les autres types d'entiers, par exemple qlong, ne sont pas applicables.
Il n'y a pas de contraintes d'alignement des données pour dest.
Remarque : depuis Qt 5.7, le type du paramètre dest est un pointeur void.
Voir aussi qFromBigEndian(), qFromLittleEndian() et qToBigEndian().
[constexpr] template <typename T> T qToLittleEndian(T src)
Convertit src à partir de l'ordre des octets de l'hôte et renvoie le nombre dans la représentation de l'ordre des octets petit-endien de ce nombre. Sur les architectures CPU où l'ordre des octets de l'hôte est big-endian (comme PowerPC), cette fonction renverra src avec l'ordre des octets inversé ; sinon, elle renverra src sans modification.
Il s'agit d'une fonction surchargée.
template <typename T> void qToLittleEndian(const void *src, qsizetype count, void *dest)
Lit les nombres count à partir de l'emplacement mémoire src dans l'ordre des octets de l'hôte et les stocke dans la représentation little-endian à dest. Sur les architectures de CPU où l'ordre des octets de l'hôte est big-endian (comme PowerPC), cette opération intervertira l'ordre des octets ; sinon, elle effectuera simplement un memcpy de src à dest.
Remarque : le type de modèle T peut être soit un quint16, qint16, quint32, qint32, quint64, ou qint64. Les autres types d'entiers, par exemple qlong, ne sont pas applicables.
Il n'y a pas de contraintes d'alignement des données pour dest. Cependant, src doit être aligné naturellement pour le type T.
Si src et dest peuvent être le même pointeur, cette fonction effectuera une permutation sur place (si nécessaire). S'ils ne sont pas identiques, les régions de mémoire ne doivent pas se chevaucher.
Voir également qFromLittleEndian(), qToBigEndian() et qToLittleEndian().
© 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.