<QtTypes> - Qt Type Declarations
Die Header-Datei <QtTypes> enthält die Deklarationen der grundlegenden Qt-Typen. 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) | 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) |
Ausführliche Beschreibung
Die Header-Datei deklariert mehrere Typdefinitionen, die für verschiedene Grundtypen eine bestimmte Bitgröße auf allen von Qt unterstützten Plattformen garantieren, zum Beispiel ` qint8 `, bei dem es sich um einen vorzeichenbehafteten `char` handelt, der auf allen von Qt unterstützten Plattformen garantiert 8 Bit groß ist. Die Header-Datei deklariert außerdem die Typdefinition ` qlonglong ` für ` long long int`.
Es werden mehrere praktische Typdefinitionen 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 stellt außerdem eine Reihe von Makros bereit, die es ermöglichen, bestimmte Qt-Typaliase (qsizetype, qintptr usw.) über eine Funktion zur formatierten Ausgabe wie printf() oder qDebug auszugeben, ohne dass Formatierungswarnungen ausgelöst werden und ohne dass ein Typcast erforderlich ist.
Typdokumentation
qint8
Typedef für ` signed char`. Dieser Typ ist auf allen von Qt unterstützten Plattformen garantiert 8-Bit.
qint16
Typedef für „ signed short “. Dieser Typ ist auf allen von Qt unterstützten Plattformen garantiert 16-Bit-groß.
qint32
Typedef für „ signed int “. Dieser Typ ist auf allen von Qt unterstützten Plattformen garantiert 32-Bit.
qint64
Typedefinition für „ long long int “. Dieser Typ ist auf allen von Qt unterstützten Plattformen garantiert 64-Bit.
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 dies unterstützen (Qt definiert in diesem Fall das Makro „ QT_SUPPORTS_INT128 “).
Literale dieses Typs können mit dem Makro ` Q_INT128_C()` erstellt werden.
Diese Typdefinition wurde in Qt 6.6 eingeführt.
Siehe auch Q_INT128_C(), Q_INT128_MIN, Q_INT128_MAX, quint128 und QT_SUPPORTS_INT128.
qintptr
Integraler Typ zur Darstellung von Zeigern als vorzeichenbehaftete Ganzzahl (nützlich für Hash-Verfahren usw.).
Typedef für entweder qint32 oder qint64. Dieser Typ hat auf allen von Qt unterstützten Plattformen garantiert dieselbe Größe wie ein Zeiger. 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 mithilfe von Funktionen zur formatierten Ausgabe wie ` printf()`, ` qDebug()`, ` QString::asprintf()` usw. auszugeben, können Sie die Makros ` PRIdQINTPTR ` und ` PRIiQINTPTR ` als Formatbezeichner verwenden. Beide geben den Wert als Dezimalzahl aus.
qintptr p = 123;
printf("The pointer is %" PRIdQINTPTR "\n", p);Siehe auch qptrdiff, qint32 und qint64.
qlonglong
Typedef für „ long long int “ (unter Windows: „__int64 “). Dies entspricht „ qint64 “.
Siehe auch qulonglong und qint64.
qptrdiff
Integer-Typ zur Darstellung von Zeigerunterschieden.
Typedef für entweder qint32 oder qint64. Dieser Typ hat auf allen von Qt unterstützten Plattformen garantiert dieselbe Größe wie ein Zeiger. 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 mithilfe von Funktionen zur formatierten Ausgabe wie ` printf()`, ` qDebug()`, ` QString::asprintf()` usw. auszugeben, können Sie die Makros ` PRIdQPTRDIFF ` und ` PRIiQPTRDIFF ` als Formatbezeichner verwenden. Beide geben den Wert als Dezimalzahl 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 wurde.
[alias] qsizetype
Integraler Typ, der für alle Plattformen die Posix-Funktion „ ssize_t “ bereitstellt.
Dieser Typ hat auf allen von Qt unterstützten Plattformen garantiert dieselbe Größe wie ein ` size_t `.
Beachten Sie, dass `qsizetype` vorzeichenbehaftet ist. Verwenden Sie ` size_t ` für vorzeichenlose Werte.
Um Werte dieses Typs mithilfe von Funktionen zur formatierten Ausgabe wie ` printf()`, ` qDebug()`, ` QString::asprintf()` usw. auszugeben, können Sie die Makros ` PRIdQSIZETYPE ` und ` PRIiQSIZETYPE ` als Formatbezeichner verwenden. Beide geben den Wert als Dezimalzahl aus.
qsizetype s = 123;
printf("The size is %" PRIdQSIZETYPE "\n", s);Siehe auch qptrdiff.
quint8
Typedef für „ unsigned char “. Dieser Typ ist auf allen von Qt unterstützten Plattformen garantiert 8-Bit-groß.
quint16
Typedef für „ unsigned short “. Dieser Typ ist auf allen von Qt unterstützten Plattformen garantiert 16-Bit-groß.
quint32
Typedef für „ unsigned int “. Dieser Typ ist auf allen von Qt unterstützten Plattformen garantiert 32-Bit.
quint64
Typedefinition für „ unsigned long long int “. Dieser Typ ist auf allen von Qt unterstützten Plattformen garantiert 64-Bit.
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 dies unterstützen (Qt definiert in diesem Fall das Makro „ QT_SUPPORTS_INT128 “).
Literale dieses Typs können mit dem Makro ` Q_UINT128_C()` erstellt werden.
Diese Typdefinition 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 vorzeichenlosen Ganzzahl (nützlich für Hash-Verfahren usw.).
Typedef für entweder „quint32“ oder „quint64“. Dieser Typ hat auf allen von Qt unterstützten Plattformen garantiert dieselbe Größe wie ein Zeiger. Auf einem System mit 32-Bit-Zeigern ist `quintptr` eine Typdefinition für `quint32`; auf einem System mit 64-Bit-Zeigern ist `quintptr` eine Typdefinition für `quint64`.
Beachten Sie, dass „quintptr“ vorzeichenlos ist. Verwenden Sie „qptrdiff“ für vorzeichenbehaftete Werte.
Um Werte dieses Typs mithilfe von Funktionen zur formatierten Ausgabe wie ` printf()`, ` qDebug()`, ` QString::asprintf()` usw. auszugeben, können Sie die folgenden Makros als Formatbezeichner verwenden:
PRIuQUINTPTR: gibt den Wert als Dezimalzahl aus.PRIoQUINTPTR: Gibt den Wert als Zahl zur Basis 8 aus.PRIxQUINTPTR: Gibt den Wert als Zahl zur Basis 16 aus, wobei Kleinbuchstabena-fverwendet werden.PRIXQUINTPTR: gibt den Wert als Zahl zur Basis 16 unter Verwendung von GroßA-F-Buchstaben aus.
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 “ (unter Windows „unsigned __int64 “). Dies entspricht quint64.
Siehe auch quint64 und qlonglong.
uchar
Praktische Typdefinition für ` unsigned char`.
uint
Praktische Typdefinition für ` unsigned int`.
ulong
Praktische Typdefinition für ` unsigned long`.
ushort
Typdefinition zur Vereinfachung für „ unsigned short “.
Makro-Dokumentation
Siehe qintptr.
Diese Makros wurden in Qt 6.2 eingeführt.
Siehe qptrdiff.
Diese Makros wurden in Qt 6.2 eingeführt.
Siehe qsizetype.
Diese Makros wurden in Qt 6.2 eingeführt.
Siehe quintptr.
Diese Makros wurden in Qt 6.2 eingeführt.
[since 6.6] QT_SUPPORTS_INT128
Qt definiert dieses Makro sowie die Typen „ qint128 “ und „ quint128 “, sofern die Plattform 128-Bit-Ganzzahltypen 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)
Verpackt die vorzeichenbehaftete 128-Bit-Ganzzahl literal plattformunabhängig.
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 integrierte Funktionen 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 wird zu einer Kompilierungszeitkonstante erweitert, die den maximalen Wert darstellt, der in einem „ qint128 “ darstellbar ist.
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 wird zu einer Kompilierungszeitkonstante erweitert, die den kleinsten Wert darstellt, der in einem ` qint128` darstellbar ist.
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)
Verpackt die vorzeichenlose 128-Bit-Ganzzahl „ literal “ plattformunabhängig.
Hinweis: Im Gegensatz zu ` Q_UINT64_C()` ist dieses Makro nur in C++ verfügbar, nicht jedoch in C. Dies liegt daran, dass Compiler diese Literale nicht als integrierte Konstanten 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 wird zu einer Kompilierungszeitkonstante erweitert, die den maximalen Wert darstellt, der in einem ` quint128` darstellbar ist.
Dieses Makro ist sowohl im C++- als auch im C-Modus verfügbar.
Der Minimalwert von ` quint128 ` ist 0 (Null), daher ist ein ` Q_UINT128_MIN ` weder erforderlich noch vorgesehen.
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)
Verpackt 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()“.
© 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.