Avatar billede arcanex Nybegynder
27. juni 2005 - 09:56 Der er 5 kommentarer og
2 løsninger

Forklaring af float

Hej, jeg ville høre om nogle af jer kunne forklare mig hvorfor der bliver skrevet f bagefter man bruger float nogle gange ?
Jeg er ved at lære lidt DirectX, og der skal man skrive f.eks. 1.0f ved coordinater. Har prøvet og ledt efter noget info om hvordan det hænger sammen, men uden held :)
Avatar billede burningice Nybegynder
27. juni 2005 - 10:27 #1
det definerer at dit tal er af typen float...

eks:

10 / 10.5

hvordan skal compileren vide hvilke datatyper de forskellige tal skal være i? 10.5 kan jo være enten decimal eller float... så for at hjælpe compileren på vej sætter man en lille identifier på tallet, så når der står

10 / 10.5f

så ved compileren at den skal behandle 10.5 som et float.
Avatar billede jimgordon Nybegynder
27. juni 2005 - 10:30 #2
Det er for explict at angive, at det er en float (32-bit) og ikke en double (64 bit). Compileren vil tolke det som en double, når den render ind i et hardcoded kommatal.

Float (syv signifikante decimaler) er god når præcisionen til 15. decimal (double) ikke er nødvendig.

En decimal har samme notation, her anvendes m i stedet: decimal d = 10.2m

f/F og m/M kan bruges da den ikke er case sensitive.

Alt i alt sparer man hukommelse ved at anvende floats. Du kan jo se hvor mange betydende cifre du har brug for, for at finde den bedste løsning.
Avatar billede nielle Nybegynder
27. juni 2005 - 19:45 #3
Det bruge specielt når man har med overloadede funktioner at gøre. Hvis du har tre forskellige versioner af samme funktion:

public void minFunk(int Arg) { ... }

public void minFunk(float Arg) { ... }

public void minFunk(double Arg) { ... }

- så vil et kald med minFunk(100) benytte den første, mens minFunk(100f) vil benytte den anden.

Hvis man skriver minFunk(100.0) vil der derimod være tvivl (hos compileren i det mindste) om det er den anden eller den tredje version der skal bruges (den vælger faktisk den sidste).
Avatar billede arcanex Nybegynder
28. juni 2005 - 02:26 #4
Ahh, på den måde. Så er jeg helt med.
Jeg siger mange tak, smid et svar alle 3, så deler jeg pointene imellem jer :)
Avatar billede nielle Nybegynder
28. juni 2005 - 06:43 #5
Svar :^)
Avatar billede burningice Nybegynder
28. juni 2005 - 15:10 #6
svar
Avatar billede nielle Nybegynder
06. juli 2005 - 08:41 #7
jimgordon, vi venter vist bare på at du også smider et svar.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester