<QtTypes> - Qt Type Declarations
Die <QtTypes>-Header-Datei enthält Qt-Grundtypen-Deklarationen. Mehr...
Header: | #include <QtTypes> |
Typen
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 |
Makros
(since 6.2) | |
(since 6.2) | |
(since 6.2) | |
(since 6.2) | |
(since 6.2) | PRIXQUINTPTR |
(since 6.2) | PRIdQINTPTR |
(since 6.2) | PRIdQPTRDIFF |
(since 6.2) | PRIdQSIZETYPE |
(since 6.2) | PRIiQINTPTR |
(since 6.2) | PRIiQPTRDIFF |
(since 6.2) | PRIiQSIZETYPE |
(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) |
Detaillierte Beschreibung
Die Header-Datei deklariert mehrere Typ-Definitionen, die eine bestimmte Bit-Größe auf allen von Qt unterstützten Plattformen für verschiedene Grundtypen garantieren, z.B. qint8, ein vorzeichenbehaftetes Zeichen, das garantiert 8-Bit auf allen von Qt unterstützten Plattformen ist. Die Header-Datei deklariert auch die qlonglong Typdefinition für long long int
.
Es werden mehrere Komfort-Typ-Definitionen deklariert: qreal für double
oder float
, uchar für unsigned char
, uint für unsigned int
, ulong für unsigned long
und ushort für unsigned short
.
Der Header bietet auch eine Reihe von Makros, die es ermöglichen, einige Qt-Typ-Aliase (qsizetype, qintptr, etc.) über eine formatierte Ausgabe wie printf() oder qDebug() zu drucken, ohne Formatierungswarnungen auszulösen und ohne die Notwendigkeit eines Typ-Casts.
Typ-Dokumentation
qint8
Typedef für signed char
. Dieser Typ ist garantiert 8-bit auf allen von Qt unterstützten Plattformen.
qint16
Typedef für signed short
. Dieser Typ ist garantiert 16-bit auf allen von Qt unterstützten Plattformen.
qint32
Typedef für signed int
. Dieser Typ ist garantiert 32-Bit auf allen von Qt unterstützten Plattformen.
qint64
Typedef für long long int
. Dieser Typ ist garantiert 64-bit auf allen von Qt unterstützten Plattformen.
Literale dieses Typs können mit dem Makro Q_INT64_C() erstellt werden:
qint64 value = Q_INT64_C(932838457459459);
Siehe auch Q_INT64_C(), quint64, und qlonglong.
[since 6.6]
qint128
Typedef für __int128
auf Plattformen, die es unterstützen (Qt definiert das Makro QT_SUPPORTS_INT128, wenn dies der Fall ist).
Literale dieses Typs können mit dem Makro Q_INT128_C() erstellt werden.
Dieses Typedef wurde in Qt 6.6 eingeführt.
Siehe auch Q_INT128_C(), Q_INT128_MIN, Q_INT128_MAX, quint128, und QT_SUPPORTS_INT128.
qintptr
Ganzzahliger Typ zur Darstellung von Zeigern in einer vorzeichenbehafteten Ganzzahl (nützlich für Hashing usw.).
Typedef für entweder qint32 oder qint64. Dieser Typ hat garantiert die gleiche Größe wie ein Zeiger auf allen von Qt unterstützten Plattformen. Auf einem System mit 32-Bit-Zeigern ist qintptr ein typedef für qint32; auf einem System mit 64-Bit-Zeigern ist qintptr ein typedef für qint64.
Beachten Sie, dass qintptr vorzeichenbehaftet ist. Verwenden Sie quintptr für vorzeichenlose Werte.
Um Werte dieses Typs mit Hilfe von formatierten Ausgabemöglichkeiten wie printf()
, qDebug(), QString::asprintf() und so weiter zu drucken, können Sie die Makros PRIdQINTPTR
und PRIiQINTPTR
als Formatspezifizierer verwenden. Beide geben den Wert als Zahl zur Basis 10 aus.
qintptr p = 123; printf("The pointer is %" PRIdQINTPTR "\n", p);
Siehe auch qptrdiff, qint32, und qint64.
qlonglong
Typedef für long long int
(__int64
unter Windows). Dies ist dasselbe wie qint64.
Siehe auch qulonglong und qint64.
qptrdiff
Integraler Typ zur Darstellung von Zeigerdifferenzen.
Typedef für entweder qint32 oder qint64. Dieser Typ hat garantiert die gleiche Größe wie ein Zeiger auf allen von Qt unterstützten Plattformen. Auf einem System mit 32-Bit-Zeigern ist quintptr ein typedef für quint32; auf einem System mit 64-Bit-Zeigern ist quintptr ein typedef für quint64.
Beachten Sie, dass qptrdiff vorzeichenbehaftet ist. Verwenden Sie quintptr für vorzeichenlose Werte.
Um Werte dieses Typs mit Hilfe von formatierten Ausgabemöglichkeiten wie printf()
, qDebug(), QString::asprintf() und so weiter zu drucken, können Sie die Makros PRIdQPTRDIFF
und PRIiQPTRDIFF
als Formatspezifizierer verwenden. Beide geben den Wert als Zahl zur Basis 10 aus.
qptrdiff d = 123; printf("The difference is %" PRIdQPTRDIFF "\n", d);
Siehe auch quintptr, qint32, und qint64.
qreal
Typedef für double
, sofern Qt nicht mit der Option -qreal float
konfiguriert ist.
[alias]
qsizetype
Integraler Typ, der Posix' ssize_t
für alle Plattformen bereitstellt.
Dieser Typ hat garantiert die gleiche Größe wie size_t
auf allen von Qt unterstützten Plattformen.
Beachten Sie, dass qsizetype vorzeichenbehaftet ist. Verwenden Sie size_t
für vorzeichenlose Werte.
Um Werte dieses Typs mit Hilfe von formatierten Ausgabemöglichkeiten wie printf()
, qDebug(), QString::asprintf() und so weiter zu drucken, können Sie die Makros PRIdQSIZETYPE
und PRIiQSIZETYPE
als Formatspezifizierer verwenden. Beide geben den Wert als Zahl zur Basis 10 aus.
qsizetype s = 123; printf("The size is %" PRIdQSIZETYPE "\n", s);
Siehe auch qptrdiff.
quint8
Typedef für unsigned char
. Dieser Typ ist garantiert 8-bit auf allen von Qt unterstützten Plattformen.
quint16
Typedef für unsigned short
. Dieser Typ ist garantiert 16-bit auf allen von Qt unterstützten Plattformen.
quint32
Typedef für unsigned int
. Dieser Typ ist garantiert 32-Bit auf allen von Qt unterstützten Plattformen.
quint64
Typedef für unsigned long long int
. Dieser Typ ist garantiert 64-bit auf allen von Qt unterstützten Plattformen.
Literale dieses Typs können mit dem Makro Q_UINT64_C() erstellt werden:
quint64 value = Q_UINT64_C(932838457459459);
Siehe auch Q_UINT64_C(), qint64, und qulonglong.
[since 6.6]
quint128
Typedef für unsigned __int128
auf Plattformen, die es unterstützen (Qt definiert das Makro QT_SUPPORTS_INT128, wenn dies der Fall ist).
Literale dieses Typs können mit dem Makro Q_UINT128_C() erstellt werden.
Dieses Typedef wurde in Qt 6.6 eingeführt.
Siehe auch Q_UINT128_C(), Q_UINT128_MAX, qint128, und QT_SUPPORTS_INT128.
quintptr
Integraler Typ zur Darstellung von Zeigern in einer Ganzzahl ohne Vorzeichen (nützlich für Hashing usw.).
Typedef für entweder quint32 oder quint64. Dieser Typ hat garantiert die gleiche Größe wie ein Zeiger auf allen von Qt unterstützten Plattformen. Auf einem System mit 32-Bit-Zeigern ist quintptr ein typedef für quint32; auf einem System mit 64-Bit-Zeigern ist quintptr ein typedef für quint64.
Beachten Sie, dass quintptr vorzeichenlos ist. Verwenden Sie qptrdiff für vorzeichenbehaftete Werte.
Um Werte dieses Typs mit Hilfe von formatierten Ausgabemöglichkeiten wie printf()
, qDebug(), QString::asprintf() und so weiter auszugeben, können Sie die folgenden Makros als Formatspezifikation verwenden:
PRIuQUINTPTR
: gibt den Wert als Zahl zur Basis 10 aus.PRIoQUINTPTR
: gibt den Wert als Zahl zur Basis 8 aus.PRIxQUINTPTR
: gibt den Wert als Zahl zur Basis 16 aus, wobei Kleinbuchstaben verwendet werdena-f
.PRIXQUINTPTR
: druckt den Wert als Zahl zur Basis 16 unter Verwendung von GroßbuchstabenA-F
.
quintptr p = 123u; printf("The pointer value is 0x%" PRIXQUINTPTR "\n", p);
Siehe auch qptrdiff, quint32, und quint64.
qulonglong
Typedef für unsigned long long int
(unsigned __int64
unter Windows). Dies ist dasselbe wie quint64.
Siehe auch quint64 und qlonglong.
uchar
Convenience typedef für unsigned char
.
uint
Bequemer Typedef für unsigned int
.
ulong
Convenience typedef für unsigned long
.
ushort
Bequemer typedef für unsigned short
.
Makro-Dokumentation
Siehe qintptr.
Diese Funktion wurde in Qt 6.2 eingeführt.
Siehe quintptr.
Diese Funktion wurde in Qt 6.2 eingeführt.
Siehe qptrdiff.
Diese Funktion wurde in Qt 6.2 eingeführt.
Siehe qsizetype.
Diese Funktion wurde in Qt 6.2 eingeführt.
[since 6.6]
QT_SUPPORTS_INT128
Qt definiert dieses Makro sowie die Typen qint128 und quint128, wenn die Plattform 128-Bit-Integer-Typen unterstützt.
Dieses Makro wurde in Qt 6.6 eingeführt.
Siehe auch qint128, quint128, Q_INT128_C(), Q_UINT128_C(), Q_INT128_MIN, Q_INT128_MAX, und Q_UINT128_MAX.
[since 6.6]
qint128 Q_INT128_C(literal)
Umfasst die vorzeichenbehaftete 128-Bit-Ganzzahl literal in einer plattformunabhängigen Weise.
Hinweis: Im Gegensatz zu Q_INT64_C() ist dieses Makro nur in C++ verfügbar, nicht in C. Dies liegt daran, dass Compiler diese Literale nicht als Built-Ins bereitstellen und C keine Unterstützung für benutzerdefinierte Literale bietet.
Dieses Makro wurde in Qt 6.6 eingeführt.
Siehe auch qint128, Q_UINT128_C(), Q_INT128_MIN, Q_INT128_MAX, Q_INT64_C(), und QT_SUPPORTS_INT128.
[since 6.6]
Q_INT128_MAX
Dieses Makro expandiert zu einer Kompilierzeitkonstante, die den maximal darstellbaren Wert in einem qint128 darstellt.
Dieses Makro ist sowohl im C++- als auch im C-Modus verfügbar.
Dieses Makro wurde in Qt 6.6 eingeführt.
Siehe auch Q_INT128_MIN, Q_UINT128_MAX, qint128, Q_INT128_C, und QT_SUPPORTS_INT128.
[since 6.6]
Q_INT128_MIN
Dieses Makro expandiert zu einer Kompilierzeitkonstante, die den kleinsten darstellbaren Wert in einem qint128 darstellt.
Dieses Makro ist sowohl im C++- als auch im C-Modus verfügbar.
Dieses Makro wurde in Qt 6.6 eingeführt.
Siehe auch Q_INT128_MAX, qint128, Q_INT128_C, und QT_SUPPORTS_INT128.
qint64 Q_INT64_C(literal)
Verpackt die vorzeichenbehaftete 64-Bit-Ganzzahl literal auf plattformunabhängige Weise.
Beispiel:
qint64 value = Q_INT64_C(932838457459459);
Siehe auch qint64, Q_UINT64_C(), und Q_INT128_C().
[since 6.6]
quint128 Q_UINT128_C(literal)
Umhüllt die vorzeichenlose 128-Bit-Ganzzahl literal auf plattformunabhängige Weise.
Hinweis: Im Gegensatz zu Q_UINT64_C() ist dieses Makro nur in C++ verfügbar, nicht in C. Dies liegt daran, dass Compiler diese Literale nicht als Built-Ins bereitstellen und C keine Unterstützung für benutzerdefinierte Literale bietet.
Dieses Makro wurde in Qt 6.6 eingeführt.
Siehe auch quint128, Q_INT128_C(), Q_UINT128_MAX, Q_UINT64_C(), und QT_SUPPORTS_INT128.
[since 6.6]
Q_UINT128_MAX
Dieses Makro expandiert zu einer Kompilierzeitkonstante, die den maximal darstellbaren Wert in einem quint128 darstellt.
Dieses Makro ist sowohl im C++- als auch im C-Modus verfügbar.
Das Minimum von quint128 ist 0 (Null), so dass ein Q_UINT128_MIN
weder benötigt noch bereitgestellt wird.
Dieses Makro wurde in Qt 6.6 eingeführt.
Siehe auch Q_INT128_MAX, quint128, Q_UINT128_C, und QT_SUPPORTS_INT128.
quint64 Q_UINT64_C(literal)
Umhüllt die vorzeichenlose 64-Bit-Ganzzahl literal auf plattformunabhängige Weise.
Beispiel:
quint64 value = Q_UINT64_C(932838457459459);
Siehe auch quint64, Q_INT64_C(), und Q_UINT128_C().
© 2025 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.