
Jämförelsediagram:
Grunder för jämförelse | Flyta | Dubbel |
---|---|---|
Precision | Enkel precision. | Dubbel precision. |
bits | 32 bitar. | 64 bitar. |
bytes | 4 bytes . | 8 byte. |
Ungefärligt område | 1, 4e-045 till 3, 4e + 038 | 4, 9e-324 till 1, 8e + 308 |
Bits Representation | 1 bit representerar teckenbit. 8 bit representerar exponent. 23 bitar representerar mantissa. | 1 bit representerar teckenbit. 11 bit representerar exponent. 52 bitar representerar mantissa. |
Noggrannhet | Mindre exakt. | Mer exakt. |
Definition av Float
En datatypflotta är en av Floating-Point-typerna. Datatypfloten har 32-bitarslagring (vilket är lika med 4 byte) för variabeln av float-typen. Datatypflotta anger enkel precision. Representationen av 32 bitar i flottören kan förklaras eftersom 1 bit representeras som teckenbiten, 8 bitar representeras som en exponent och 23 bitar representeras som mantissa. Det maximala intervallet för en float-typ är 1, 4e-045 till 3, 4e + 038. Vid jämförelse med dubbel flytande punkt typ är float-typen mindre korrekt än matematisk beräkning. Låt oss förstå float med ett exempel.
#include #include int main () {float num1 = sqrt (64.23) cout << num1; } // utmatning 8.00060
Som i ovanstående kod kan du observera att en variabel variabel num1 har ett värde som är av funktionen sqrt (), vilket returnerar kvadratroten av värdet som överförs till denna funktion. Du kan observera att när värdet i num1 skrivs ut är det nära det exakta värdet, men det är inte korrekt. Låt oss nu se exemplet nedan när samma program körs med dubbelt som datatyp.
Definition av Double
Dubbel är den andra typen av flytande punktdatatyp. En datatyps dubbel har 64-bitars lagring (vilket är lika med 8 byte) för en variabel av dubbeltyp. Det specificerar dubbel precision eftersom storleken är bara dubbelt av flottören. 64 bitars representation av typ dubbel kan förklaras eftersom 1 bit representerar teckenbit, 11 bitar representerar en exponent och resterande 52 bitar representerar mantissa. Bland float och dubbel vanligaste datatyp är dubbel. Typen dubbel används under matematisk beräkning, och när det finns ett behov av perfekt noggrannhet. De matematiska funktionerna sin (), cos () och sqrt () returnerar alltid ett dubbelvärde. Låt oss förstå precisionen av datatypen dubbel med ett exempel.
#include #include int main () {double num1 = sqrt (64.23) cout << num1; } // utmatning 8, 0143621
Du kan observera att utgången som erhållits i exemplet, som förklarar flottören är annorlunda än den som erhållits i exemplet, förklarar dubbel. Så, från detta kan vi säga att resultaten erhållna från dubbel är mer exakta jämfört med flottör.
Viktiga skillnader mellan flyt och dubbel
- Datatypflödet anger en enkel precision som betyder att när den jämförs med dubbel har den mindre noggrannhet medan dubbeln anger dubbel precision eftersom den bara är dubbel för float, är felet försumbart jämfört med float.
- En variabel av float-typen har lagring av 32 bitar, medan en variabel av dubbeltyp har lagring av 64 bitar som sammanställer att dubbla är större i lagring jämfört med flottör.
- Värdet i flottören kan sträcka sig från 1.4e-045 till 3.4e + 038 medan värdet av typ dubbel kan sträcka sig från 4.9e-324 till 1.8e + 308.
- Bitrepresentationen av ett floatvärde liknar att 1 bit float används för sångbit, 8 bitar för exponent och 23 bitar för lagring av mantissa. Å andra sidan liknar ett dubbelvärde att en bit av den används för sångbit, de 11 bitarna för exponent och 52 bitar för den för lagring av mantissen.
- När man jämför med dubbelflotta är mindre noggrann, medan matematisk beräkning dubbel används.
Slutsats:
Tja, du måste allmänt använda dubbla eftersom det ger den noggrannhet som är vår huvudmotor de flesta gånger.