<QtTypes> - Qt Type Declarations
Le fichier d'en-tête <QtTypes> comprend les déclarations de types fondamentaux de Qt. Plus d'informations...
| Header: | #include <QtTypes> |
Types
| qint8 | |
| qint16 | |
| qint32 | |
| qint64 | |
(since 6.6) | qint128 |
| qintptr | |
| qlonglong | |
| qptrdiff | |
| qreal | |
| qsizetype | |
| quint8 | |
| quint16 | |
| quint32 | |
| quint64 | |
(since 6.6) | quint128 |
| quintptr | |
| qulonglong | |
| uchar | |
| uint | |
| ulong | |
| ushort |
Macros
(since 6.2) | PRIXQUINTPTR |
(since 6.2) | |
(since 6.2) | PRIdQINTPTR |
(since 6.2) | |
(since 6.2) | PRIdQPTRDIFF |
(since 6.2) | |
(since 6.2) | PRIdQSIZETYPE |
(since 6.2) | PRIiQINTPTR |
(since 6.2) | PRIiQPTRDIFF |
(since 6.2) | PRIiQSIZETYPE |
(since 6.2) | |
(since 6.2) | PRIoQUINTPTR |
(since 6.2) | PRIuQUINTPTR |
(since 6.2) | PRIxQUINTPTR |
(since 6.6) | QT_SUPPORTS_INT128 |
(since 6.6) qint128 | Q_INT128_C(literal) |
(since 6.6) | Q_INT128_MAX |
(since 6.6) | Q_INT128_MIN |
| qint64 | Q_INT64_C(literal) |
(since 6.6) quint128 | Q_UINT128_C(literal) |
(since 6.6) | Q_UINT128_MAX |
| quint64 | Q_UINT64_C(literal) |
Description détaillée
Le fichier d'en-tête déclare plusieurs définitions de type qui garantissent une taille de bit spécifiée sur toutes les plates-formes prises en charge par Qt pour divers types de base, par exemple qint8 qui est un char signé garanti sur 8 bits sur toutes les plates-formes prises en charge par Qt. Le fichier d'en-tête déclare également la définition du type qlonglong pour long long int.
Plusieurs définitions de types de commodité sont déclarées : qreal pour double ou float, uchar pour unsigned char, uint pour unsigned int, ulong pour unsigned long et ushort pour unsigned short.
L'en-tête fournit également une série de macros qui permettent d'imprimer certains alias de type Qt (qsizetype, qintptr, etc.) via une fonction de sortie formatée telle que printf() ou qDebug() sans soulever d'avertissements de formatage et sans avoir besoin d'une conversion de type.
Documentation sur les types
qint8
Typedef pour signed char. Ce type est garanti 8 bits sur toutes les plateformes supportées par Qt.
qint16
Typedef pour signed short. Ce type est garanti 16 bits sur toutes les plateformes supportées par Qt.
qint32
Typedef pour signed int. Ce type est garanti 32 bits sur toutes les plateformes supportées par Qt.
qint64
Typedef pour long long int. Ce type est garanti 64 bits sur toutes les plateformes supportées par Qt.
Les littéraux de ce type peuvent être créés à l'aide de la macro Q_INT64_C() :
qint64 value = Q_INT64_C(932838457459459);
Voir aussi Q_INT64_C(), quint64, et qlonglong.
[since 6.6] qint128
Typedef pour __int128 sur les plateformes qui le supportent (Qt définit la macro QT_SUPPORTS_INT128 si c'est le cas).
Les littéraux de ce type peuvent être créés à l'aide de la macro Q_INT128_C().
Ce typedef a été introduit dans Qt 6.6.
Voir aussi Q_INT128_C(), Q_INT128_MIN, Q_INT128_MAX, quint128, et QT_SUPPORTS_INT128.
qintptr
Type intégral pour représenter les pointeurs dans un entier signé (utile pour le hachage, etc.).
Typedef pour qint32 ou qint64. Ce type est garanti d'avoir la même taille qu'un pointeur sur toutes les plateformes supportées par Qt. Sur un système avec des pointeurs 32 bits, qintptr est un typedef pour qint32 ; sur un système avec des pointeurs 64 bits, qintptr est un typedef pour qint64.
Notez que qintptr est signé. Utilisez quintptr pour les valeurs non signées.
Pour imprimer des valeurs de ce type à l'aide d'outils de sortie formatés tels que printf(), qDebug(), QString::asprintf() et ainsi de suite, vous pouvez utiliser les macros PRIdQINTPTR et PRIiQINTPTR comme spécificateurs de format. Elles impriment toutes deux la valeur sous la forme d'un nombre en base 10.
qintptr p = 123; printf("The pointer is %" PRIdQINTPTR "\n", p);
Voir aussi qptrdiff, qint32, et qint64.
qlonglong
Typedef pour long long int (__int64 sous Windows). C'est la même chose que qint64.
Voir aussi qulonglong et qint64.
qptrdiff
Type intégral pour représenter les différences entre les pointeurs.
Typedef pour qint32 ou qint64. Ce type est garanti d'avoir la même taille qu'un pointeur sur toutes les plateformes supportées par Qt. Sur un système avec des pointeurs 32 bits, quintptr est un typedef pour quint32 ; sur un système avec des pointeurs 64 bits, quintptr est un typedef pour quint64.
Notez que qptrdiff est signé. Utilisez quintptr pour les valeurs non signées.
Pour imprimer des valeurs de ce type à l'aide d'outils de sortie formatés tels que printf(), qDebug(), QString::asprintf() et ainsi de suite, vous pouvez utiliser les macros PRIdQPTRDIFF et PRIiQPTRDIFF comme spécificateurs de format. Elles impriment toutes deux la valeur sous la forme d'un nombre en base 10.
qptrdiff d = 123; printf("The difference is %" PRIdQPTRDIFF "\n", d);
Voir aussi quintptr, qint32, et qint64.
qreal
Typedef pour double sauf si Qt est configuré avec l'option -qreal float.
[alias] qsizetype
Type intégral fournissant Posix'ssize_t pour toutes les plates-formes.
Il est garanti que ce type a la même taille qu'un size_t sur toutes les plates-formes prises en charge par Qt.
Notez que qsizetype est signé. Utilisez size_t pour les valeurs non signées.
Afin d'imprimer des valeurs de ce type en utilisant des facilités de sortie formatées telles que printf(), qDebug(), QString::asprintf() et ainsi de suite, vous pouvez utiliser les macros PRIdQSIZETYPE et PRIiQSIZETYPE comme spécificateurs de format. Elles imprimeront toutes deux la valeur sous la forme d'un nombre en base 10.
qsizetype s = 123; printf("The size is %" PRIdQSIZETYPE "\n", s);
Voir aussi qptrdiff.
quint8
Typedef pour unsigned char. Ce type est garanti 8 bits sur toutes les plateformes supportées par Qt.
quint16
Typedef pour unsigned short. Ce type est garanti 16 bits sur toutes les plateformes supportées par Qt.
quint32
Typedef pour unsigned int. Ce type est garanti 32 bits sur toutes les plateformes supportées par Qt.
quint64
Typedef pour unsigned long long int. Ce type est garanti 64 bits sur toutes les plateformes supportées par Qt.
Les littéraux de ce type peuvent être créés à l'aide de la macro Q_UINT64_C() :
quint64 value = Q_UINT64_C(932838457459459);
Voir aussi Q_UINT64_C(), qint64, et qulonglong.
[since 6.6] quint128
Typedef pour unsigned __int128 sur les plateformes qui le supportent (Qt définit la macro QT_SUPPORTS_INT128 si c'est le cas).
Les littéraux de ce type peuvent être créés à l'aide de la macro Q_UINT128_C().
Ce typedef a été introduit dans Qt 6.6.
Voir aussi Q_UINT128_C(), Q_UINT128_MAX, qint128, et QT_SUPPORTS_INT128.
quintptr
Type intégral pour représenter les pointeurs dans un entier non signé (utile pour le hachage, etc.).
Typedef pour quint32 ou quint64. Ce type est garanti d'avoir la même taille qu'un pointeur sur toutes les plateformes supportées par Qt. Sur un système avec des pointeurs 32 bits, quintptr est un typedef pour quint32 ; sur un système avec des pointeurs 64 bits, quintptr est un typedef pour quint64.
Notez que quintptr est non signé. Utilisez qptrdiff pour les valeurs signées.
Pour imprimer des valeurs de ce type à l'aide de facilités de sortie formatées telles que printf(), qDebug(), QString::asprintf() et ainsi de suite, vous pouvez utiliser les macros suivantes comme spécificateurs de format :
PRIuQUINTPTR: imprime la valeur sous forme de nombre en base 10.PRIoQUINTPTR: imprime la valeur en tant que nombre de base 8.PRIxQUINTPTR: imprime la valeur comme un nombre en base 16, en utilisant les lettres minusculesa-f.PRIXQUINTPTRLa valeur est imprimée comme un nombre en base 16, en utilisant les lettres majusculesA-F.
quintptr p = 123u; printf("The pointer value is 0x%" PRIXQUINTPTR "\n", p);
Voir également qptrdiff, quint32, et quint64.
qulonglong
Typedef pour unsigned long long int (unsigned __int64 sous Windows). C'est la même chose que quint64.
Voir aussi quint64 et qlonglong.
uchar
Typedef pratique pour unsigned char.
uint
Typedef pratique pour unsigned int.
ulong
Typedef pratique pour unsigned long.
ushort
Typedef pratique pour unsigned short.
Documentation sur les macros
Voir qintptr.
Ces macros ont été introduites dans Qt 6.2.
Voir qptrdiff.
Ces macros ont été introduites dans Qt 6.2.
Voir qsizetype.
Ces macros ont été introduites dans Qt 6.2.
Voir quintptr.
Ces macros ont été introduites dans Qt 6.2.
[since 6.6] QT_SUPPORTS_INT128
Qt définit cette macro ainsi que les types qint128 et quint128 si la plate-forme prend en charge les types d'entiers de 128 bits.
Cette macro a été introduite dans Qt 6.6.
Voir aussi qint128, quint128, Q_INT128_C(), Q_UINT128_C(), Q_INT128_MIN, Q_INT128_MAX, et Q_UINT128_MAX.
[since 6.6] qint128 Q_INT128_C(literal)
Enveloppe l'entier signé de 128 bits literal d'une manière indépendante de la plate-forme.
Remarque : contrairement à Q_INT64_C(), cette macro n'est disponible qu'en C++, et non en C. Cela s'explique par le fait que les compilateurs ne fournissent pas ces littéraux en tant qu'éléments intégrés et que le C ne prend pas en charge les littéraux définis par l'utilisateur.
Cette macro a été introduite dans Qt 6.6.
Voir aussi qint128, Q_UINT128_C(), Q_INT128_MIN, Q_INT128_MAX, Q_INT64_C(), et QT_SUPPORTS_INT128.
[since 6.6] Q_INT128_MAX
Cette macro se développe en une constante de temps de compilation représentant la valeur maximale représentable dans un qint128.
Cette macro est disponible dans les modes C++ et C.
Cette macro a été introduite dans Qt 6.6.
Voir aussi Q_INT128_MIN, Q_UINT128_MAX, qint128, Q_INT128_C, et QT_SUPPORTS_INT128.
[since 6.6] Q_INT128_MIN
Cette macro se développe en une constante de temps de compilation représentant la valeur minimale représentable dans un qint128.
Cette macro est disponible dans les modes C++ et C.
Cette macro a été introduite dans Qt 6.6.
Voir aussi Q_INT128_MAX, qint128, Q_INT128_C, et QT_SUPPORTS_INT128.
qint64 Q_INT64_C(literal)
Enveloppe l'entier signé de 64 bits literal d'une manière indépendante de la plate-forme.
Exemple :
qint64 value = Q_INT64_C(932838457459459);
Voir aussi qint64, Q_UINT64_C(), et Q_INT128_C().
[since 6.6] quint128 Q_UINT128_C(literal)
Enveloppe l'entier non signé de 128 bits literal d'une manière indépendante de la plate-forme.
Remarque : contrairement à Q_UINT64_C(), cette macro n'est disponible qu'en C++, et non en C. Cela s'explique par le fait que les compilateurs ne fournissent pas ces littéraux en tant qu'éléments intégrés et que le C ne prend pas en charge les littéraux définis par l'utilisateur.
Cette macro a été introduite dans Qt 6.6.
Voir aussi quint128, Q_INT128_C(), Q_UINT128_MAX, Q_UINT64_C(), et QT_SUPPORTS_INT128.
[since 6.6] Q_UINT128_MAX
Cette macro se développe en une constante de temps de compilation représentant la valeur maximale représentable dans un quint128.
Cette macro est disponible dans les modes C++ et C.
Le minimum de quint128 est 0 (zéro), de sorte que Q_UINT128_MIN n'est ni nécessaire ni fourni.
Cette macro a été introduite dans Qt 6.6.
Voir aussi Q_INT128_MAX, quint128, Q_UINT128_C, et QT_SUPPORTS_INT128.
quint64 Q_UINT64_C(literal)
Enveloppe l'entier 64 bits non signé literal d'une manière indépendante de la plate-forme.
Exemple :
quint64 value = Q_UINT64_C(932838457459459);
Voir aussi quint64, Q_INT64_C(), et Q_UINT128_C().
© 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.