Kelluvuus on lyhennetty termi "liukuluku". Määritelmältään se on kääntäjään sisäänrakennettu perustietotyyppi, jota käytetään määrittämään numeeriset arvot kelluvien desimaalien avulla. C, C ++, C # ja monet muut ohjelmointikielet tunnistavat kelluvuuden tietotyypiksi. Muita yleisiä tietotyyppejä ovat int ja kaksinkertainen.
Kelluva tyyppi voi edustaa arvoja, jotka vaihtelevat välillä noin 1,5 x 10-45 - 3,4 x 1038, tarkkuudella - numeroiden rajalla - seitsemän. Kelluvuus voi sisältää korkeintaan seitsemän numeroa kaikki yhteensä, ei vain seuraa desimaalin tarkkuudella - joten esimerkiksi 321.1234567 ei voida tallentaa kelluvana, koska siinä on 10 numeroa. Jos tarkempi tarkkuus - enemmän numeroita - tarvitaan, käytetään kaksinkertaista tyyppiä.
Käytetään kellua
Kellua käytetään enimmäkseen graafisissa kirjastoissa, koska niiden prosessointiteho on erittäin korkea. Koska etäisyys on pienempi kuin kaksoistyyppisessä, kelluke on ollut nopeammin parempi vaihtoehto käsitellessään tuhansia tai miljoonia liukulukuja. Kelluvuuden etu kaksinkertaiseen verrattuna on kuitenkin vähäinen, koska laskennanopeus on lisääntynyt dramaattisesti uusien prosessorien kanssa. Kellua käytetään myös tilanteissa, jotka kestävät pyöristysvirheet, jotka johtuvat seitsemän numeron kelluvuuden tarkkuudesta.
Valuutat ovat toinen yleinen käyttö kelluessa. Ohjelmoijat voivat määrittää desimaalien määrän lisäparametreilla.
Kelluva vs. Tupla- ja Int
Kelluva ja kaksinkertainen ovat samanlaisia tyyppejä. Kelluvuus on yhden tarkkuuden 32-bittinen liukulukujen tyyppi; double on kaksinkertainen tarkkuus, 64-bittinen liukuluku datatyyppi. Suurimmat erot ovat tarkkuudessa ja etäisyydessä.
Kaksinkertainen: Tupla mahtuu 15-16 numeroa verrattuna kelluvaan seitsemään. Tupla-alue on 5,0 × 10−345 1,7 × 10: een308.
int: Int käsittelee myös tietoja, mutta sillä on eri tarkoitus. Numeroita, joissa ei ole murto-osan osia tai tarvetta desimaalin tarkkuudella, voidaan käyttää int. Int-tyyppi pitää sisällään vain kokonaislukuja, mutta se vie vähemmän tilaa, aritmeetti on yleensä nopeampaa kuin muilla tyypeillä, ja se käyttää välimuiskejä ja tiedonsiirtokaistanleveyttä tehokkaammin.