Arbeide med flyttall
Sveip for å vise menyen
Tallene slutter ikke med heltall. Det finnes også flyttall. I C++ bruker vi datatypene float og double for å lagre slike tall. Dette kapittelet tar for seg datatypen float, mens det neste vil omhandle datatypen double og forskjellene mellom dem. Nedenfor vises syntaksen for bruk av float:
float.h
1float num = 0.45;
La oss se raskt på hvordan flyttall lagres i minnet.
Datatypen float bruker 4 byte minne, akkurat som en int. Men å konvertere slike tall til binærkode er mye mer komplisert:
Her er et eksempel på hvordan float num = 13.45 ville blitt lagret:
Det er helt greit om du ikke forstår alt som skjer her. Det viktigste å merke seg er at representasjonen av en float er delt inn i 3 deler:
-
Fortegn-komponenten er representert med enten et plusstegn (
+) eller minustegn (-). Den angir om et tall er positivt eller negativt; -
Eksponent-komponenten bestemmer området et tall kan representere. Jo større eksponenten er, desto større verdiområde kan representeres. For datatypen
floatopptar eksponenten 1 byte (8 biter) av minnet; -
Mantisse-komponenten bestemmer presisjonen til en
float. Ikke alle tall kan representeres nøyaktig i minnet, og presisjonen til et tall defineres av lengden på mantissen. For datatypenfloater mantissens lengde 23 biter.
Som et resultat har float en presisjon på 7 desimaler og et område fra 1.2e-38 til 3.4e+38 (gjelder både negative og positive tall). Derfor er området som regel ikke et problem. Men presisjon kan noen ganger være det.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår