Aanbevolen, 2024

Editor'S Choice

Verschil tussen Float en Double

Float en Double zijn beide gegevenstypes onder Floating-point type. De drijvende-kommagetallen zijn de reële getallen die een breukcomponent bevatten. Het belangrijkste verschil tussen float en double is dat het float-type beschikt over 32-bits opslag. Aan de andere kant heeft het dubbele type 64-bits opslag. Er zijn enkele andere verschillen tussen float en double die worden besproken in de onderstaande vergelijkingstabel.

Vergelijkingstabel:

Basis voor vergelijkingVlotterDubbele
precisieEnkele precisie.Dubbele precisie.
Bits32 bits.64 bits.
bytes4 bytes .8 bytes.
Geschatte bereik1.4e-045 tot 3.4e + 0384.9e-324 tot 1.8e + 308
Bitvertegenwoordiging1 bit vertegenwoordigt tekenbit.
8 bit vertegenwoordigt exponent.
23 bits vertegenwoordigen mantisse.
1 bit vertegenwoordigt tekenbit.
11 bit vertegenwoordigen exponent.
52 bits vertegenwoordigen mantisse.
NauwkeurigheidMinder precies.Accurater.

Definitie van Float

Een datatype float is een van de Floating-point-typen. Het datatype float heeft 32-bits opslag (wat gelijk is aan 4 bytes) voor de variabele floattype. Float van gegevenstype specificeert enkele precisie. De weergave van 32 bit in float kan worden uitgelegd als 1 bit wordt voorgesteld als het tekenbit, 8 bits worden gerepresenteerd als een exponent en 23 bits worden gerepresenteerd als mantisse. Het maximale bereik van een floattype is 1, 4e-045 tot 3, 4e + 038. In vergelijking met het type met drijvende komma is floattype minder nauwkeurig tijdens wiskundige berekeningen. Laten we float begrijpen aan de hand van een voorbeeld.

 #include #include int main () {float num1 = sqrt (64.23) cout << num1; } // output 8.00060 

Zoals in de bovenstaande code, kunt u zien dat aan een float-variabele num1 een waarde is toegewezen die de functie sqrt () is, die de vierkantswortel van de waarde retourneert die aan deze functie wordt doorgegeven. Je kunt zien dat wanneer de waarde in num1 wordt afgedrukt, deze bijna exact overeenkomt met de waarde, maar deze is niet nauwkeurig. Laten we nu het onderstaande voorbeeld bekijken wanneer hetzelfde programma wordt uitgevoerd met dubbel als datatype.

Definitie van Double

Double is het tweede type datatype met een drijvende komma. Een datatype-double heeft 64-bit storage (wat gelijk is aan 8 bytes) voor een variabele van het dubbele type. Het specificeert dubbele precisie omdat de grootte ervan slechts het dubbele is van de float. De 64-bits representatie van het type dubbel kan worden verklaard als 1 bit staat voor tekenbit, 11 bits staat voor een exponent en de resterende 52 bits staat voor mantisse. Onder float en double meest gebruikte gegevenstype is het dubbele. Het type dubbel wordt gebruikt tijdens wiskundige berekeningen en wanneer er behoefte is aan perfecte nauwkeurigheid. De wiskundige functies sin (), cos () en sqrt () retourneren altijd een dubbele waarde. Laten we de nauwkeurigheid van het datatype dubbel begrijpen met een voorbeeld.

 #include #include int main () {double num1 = sqrt (64.23) cout << num1; } // output 8.0143621 

U kunt opmerken dat de uitvoer die in het voorbeeld wordt verkregen, waarbij float wordt uitgelegd, verschilt van de uitvoer die in het voorbeeld wordt verkregen, met uitleg over het dubbele. Hieruit kunnen we dus concluderen dat de resultaten van dubbel zijn nauwkeuriger in vergelijking met float.

Belangrijkste verschillen tussen Float en Double

  1. Het datatype float geeft een enkele precisie aan, wat betekent dat wanneer het wordt vergeleken met het dubbele, het minder nauwkeurig is, terwijl het dubbele dubbele precisie specificeert omdat het slechts een dubbele floatwaarde heeft, zijn fout is verwaarloosbaar in vergelijking met float.
  2. Een variabele van het floattype heeft een opslagcapaciteit van 32 bits, terwijl een variabele van het dubbele type een opslag van 64 bits heeft, die compileert dat dubbel groter is in opslag in vergelijking met float.
  3. De waarde in float kan variëren van 1, 4e-045 tot 3, 4e + 038, terwijl de waarde van het dubbele type kan variëren van 4, 9e-324 tot 1, 8e + 308.
  4. De bitrepresentatie van een floatwaarde lijkt op dat 1 bit dobber wordt gebruikt voor singbit, de 8 bits voor exponent en 23 bits voor het opslaan van mantisse. Aan de andere kant lijkt een dubbele waarde op die waarvan 1 bit wordt gebruikt voor sing-bit, de 11-bits voor exponent en 52 bits ervan voor het opslaan van de mantisse.
  5. In vergelijking met dubbele float is minder nauwkeurig vandaar, terwijl wiskundige berekening dubbel wordt gebruikt.

Conclusie:

Nou, je moet over het algemeen dubbel gebruiken omdat het de nauwkeurigheid biedt die onze hoofdmoto meestal is.

Top