Ganzzahl- und Gleitkommatypen
Wählen Sie den passenden Zahlentyp, indem Sie Größen, Wertebereiche und Kompromisse bei der Genauigkeit verstehen.
Ganzzahl- und Gleitkommatypen ist eine kostenlose C++ Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des C++ Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der C++ Academy-Kurs umfasst insgesamt 4 Lektionen.
Zwei Zahlenwelten
C++ hat zwei Familien numerischer Typen: Ganzzahlen (keine Bruchteile, exakt) und Gleitkommazahlen (näherungsweise, mit Bruchteilen). Wählen Sie je nach Aufgabe die passende Familie.
Ganzzahltypen
Integrierte Ganzzahltypen und typische Größen auf 64-Bit-Systemen:
char– 1 Byteshort– 2 Byteint– 4 Bytelong– 4 oder 8 Bytelong long– 8 Byte
Vorzeichenbehaftet vs. vorzeichenlos
Fügen Sie unsigned hinzu, um den negativen Wertebereich zu entfernen. Vorzeichenlose Arithmetik läuft modulo 2^N über – manchmal nützlich, oft eine Fehlerquelle.
unsigned int u = 0;
u -= 1; // wraps around to 4,294,967,295Ganzzahlen mit fester Breite
Verwenden Sie die Typen aus <cstdint>, wenn Sie exakt festgelegte Größen benötigen – etwa für Protokolle, Dateiformate oder Plattformportabilität.
#include <cstdint>
int8_t tiny = 100;
int32_t word = 100000;
int64_t big = 1LL << 40;
uint64_t huge = 18446744073709551615ULL;Gleitkommatypen
Drei Gleitkommatypen mit zunehmender Genauigkeit:
float– 32 Bit, etwa 7 Dezimalstellendouble– 64 Bit, etwa 15 Dezimalstellenlong double– typischerweise 80 oder 128 Bit
IEEE-754-Format
Gleitkommazahlen folgen dem IEEE-754-Standard: Vorzeichen, Exponent, Mantisse. Sie können sehr große und sehr kleine Werte darstellen, aber nicht exakt.
Fallstricke bei Gleitkommazahlen
Die meisten Dezimalzahlen können im Binärsystem nicht exakt dargestellt werden. 0.1 + 0.2 ist nicht exakt 0.3.
double sum = 0.1 + 0.2;
std::cout << (sum == 0.3); // false on most systems
std::cout << sum; // 0.3 but printed approximatelyGleitkommazahlen sicher vergleichen
Vergleichen Sie Gleitkommazahlen niemals mit ==. Vergleichen Sie stattdessen innerhalb einer kleinen Toleranz (Epsilon).
bool approxEqual(double a, double b, double eps = 1e-9) {
return std::abs(a - b) < eps;
}Spezielle Gleitkommawerte
Gleitkommazahlen haben drei spezielle Werte: NaN (keine Zahl), +inf und -inf. Verwenden Sie die Prädikate aus <cmath>, um sie zu prüfen.
#include <cmath>
double x = std::sqrt(-1.0);
if (std::isnan(x)) std::cout << "Not a number";
if (std::isinf(x)) std::cout << "Infinity";Wann welcher Typ verwendet wird
Wählen Sie nach dem Anwendungsbereich:
- Zähler und Indizes →
intodersize_t - Wissenschaftliche oder grafische Berechnungen →
double - Geldbeträge → niemals
double! Verwenden Sie skalierte Ganzzahlen (Cent) oder eine Dezimalbibliothek
Typgrößen variieren je nach Plattform
Der Standard garantiert nur Mindestgrößen. int kann 16, 32 oder 64 Bit groß sein. Verwenden Sie für Portabilität in Datenstrukturen Ganzzahltypen mit fester Breite aus <cstdint>.
Kurzer Test
Welchen Typ sollten Sie verwenden, um Geldbeträge exakt darzustellen?
Zusammenfassung
Ganzzahlen sind exakt, Gleitkommazahlen näherungsweise. Verwenden Sie int oder Ganzzahlen mit fester Breite für Zähler, double für wissenschaftliche Berechnungen und niemals Gleitkommazahlen für Geldbeträge. Vergleichen Sie Gleitkommazahlen mit einer Toleranz, niemals mit ==.
Häufig gestellte Fragen
Ist die Lektion „Ganzzahl- und Gleitkommatypen“ kostenlos?
Ja — der vollständige Text von „Ganzzahl- und Gleitkommatypen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des C++ Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der C++ Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Ganzzahl- und Gleitkommatypen“?
Wählen Sie den passenden Zahlentyp, indem Sie Größen, Wertebereiche und Kompromisse bei der Genauigkeit verstehen. Du übst C++ Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um C++ Academy zu starten?
Keine Vorkenntnisse erforderlich. C++ Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „Ganzzahl- und Gleitkommatypen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser C++ Academy-Lektion Code schreiben und ausführen?
Ja. Jede C++ Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Ganzzahl- und Gleitkommatypen
- Der Header cmath: pow, sqrt, abs, round
- Zufallszahlen mit dem Header random
- Numerische Grenzen und Überlaufverhalten