Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Arbeide med flyttall | Seksjon
C++ Datatyper

bookArbeide 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

float.h

copy
1
float 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 float opptar 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 datatypen float er 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.

question mark

Hva er det maksimale antallet desimaler som en float kan representere nøyaktig?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 4

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 1. Kapittel 4
some-alt