Numerieke Gegevenstypen
Veeg om het menu te tonen
Gehele getallen
Gegevenstypen voor gehele getallen worden het meest gebruikt voor gehele getallen. Het gegevenstype int kan waarden bevatten binnen het bereik van -2,147,483,648 tot 2,147,483,647.
main.cpp
12345678910#include <iostream> int main() { int goodNumber = 12; int tooLarge = 2147483648; std::cout << "Printing goodNumber: " << goodNumber << std::endl; std::cout << "Printing tooLarge: " << tooLarge << std::endl; }
Dit gebeurt omdat wanneer je een int-variabele declareert, er precies 4 bytes van het geheugen van je pc worden gereserveerd. En getallen boven 2147483647 (of onder -2147483648) passen niet in die 4 bytes. Gelukkig zijn er andere gegevenstypen beschikbaar die meer (of minder) ruimte kunnen reserveren, afhankelijk van je behoeften. Hier is de tabel:
Je kunt dus long gebruiken om grote getallen op te slaan (bijvoorbeeld de wereldbevolking). Je kunt ook short gebruiken als je zeker weet dat je getal niet buiten het bereik van -32,768 tot 32,767 zal vallen (bijvoorbeeld het opslaan van de leeftijd van een gebruiker). Het gebruik van short neemt minder geheugenruimte in beslag.
main.cpp
12345678910111213#include <iostream> int main() { short age = 22; // for small numbers int likes = 143200; // for larger numbers long population = 8200000000; // for very large numbers // Display the values std::cout << "Age: " << age << std::endl; std::cout << "Likes: " << likes << std::endl; std::cout << "World's population: " << population << std::endl; }
Wees voorzichtig met het gekozen gegevenstype. Als het bereik van een type wordt overschreden, zal de C++-compiler je niet waarschuwen, en kun je een onverwachte waarde ontvangen zonder enige foutmelding.
Kommagetallen
De bovenstaande gegevenstypen zijn bedoeld om gehele getallen op te slaan. Als we proberen 1.6 toe te wijzen aan een van deze typen, krijgen we het volgende resultaat:
main.cpp
12345678#include <iostream> int main() { // Change the data type to `float` o `double` int num = 1.6; std::cout << num << std::endl; }
Het int-type verwijdert het decimale gedeelte van een getal. Dit gedrag is hetzelfde voor de types short en long. Voor het opslaan van kommagetallen (decimale getallen) gebruik je het beste het gegevenstype float of double.
Hier is een voorbeeld van het gebruik van double om 1.6 op te slaan.
main.cpp
12345678910#include <iostream> int main() { float floatNum = 123.45678; double doubleNum = 123.45678; std::cout << "using float:" << floatNum - 123 << std::endl; std::cout << "using double:" << doubleNum - 123 << std::endl; }
Aangezien het type float slechts een precisie van zeven cijfers heeft, valt het getal 123.456789 al buiten het bereik. Dit kan leiden tot onnauwkeurige resultaten (zoals te zien is in het onderstaande voorbeeld). Het is daarom beter om standaard double te gebruiken, tenzij je zeker weet dat de precisie van float voldoende is.
Het is uiteraard mogelijk om float of double te gebruiken om gehele getallen op te slaan, aangezien dit decimale getallen zijn met een decimaal deel gelijk aan 0. Echter, als goede praktijk geldt dat wanneer een variabele alleen gehele waarden kan bevatten (bijvoorbeeld populatie of likes), short/int/long gebruikt moet worden.
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.