Om du skall kunna utföra beräkningar är det en fördel att ha Är inte säker på vad du menar här men du kan använda sizeof för att få fram hur många bytes en variabel för närvarande tar. Detta värde kan lagras i en anna integer och sedan printas. Nja... sizeof funkar inte alltid vad gäller klasser, exempelvis när klasser innehåller pekare eller referenser eller andra klasser som gör det. (Såvida man inte definierar en sizeof-operator, men det är ju en annan femma) Nja... sizeof funkar inte alltid vad gäller klasser, exempelvis när klasser innehåller pekare eller referenser eller andra klasser som gör det. (Såvida man inte definierar en sizeof-operator, men det är ju en annan femma) >När man utbildar sig till programmerare får man också >Det är just detta som är orsaken till väldigt många problem. Folk blir >utbildade till att veta att int har ett visst antal bitar.Sv: Hjälp
den som integer(short int. kan fungera ochså). Vad skall du använda den till...?Sv: Hjälp
(Var det detta du menade...?)
De olika datatyperna upptar för övrigt fasta storlekar i bytes som ej kan överskridas... Ex. ovan är alltså onödigt om man inte använder en instans av en klass eller ett egendefinierat objekt.
Om detta inte svarar på din fråga så säg till... :)Sv: Hjälp
sizeof fungerar däremot utmärkt vad gäller inbyggda datatyper. Använd sizeof(int) eller sizeof(myInt).
Slutligen: använd alltid short vid små tal. Kan bli effektivare, och är ett bra sätt att se att varaibeln är till för små tal.
/Niklas JanssonSv: Hjälp
Det är kodarens ansvar att tillse korrekt instansiering. Bra att du
har noterat detta.
---
sizeof fungerar däremot utmärkt vad gäller inbyggda datatyper. Använd sizeof(int) eller sizeof(myInt).
När man utbildar sig till programmerare får man också
lära sig att vissa fasta datatyper har fasta storlekar i bytes...
T ex: INT.
(Därav kan man själv bedöma nödvändigheten av
att använda sizeof på vissa fördefinierade datatyper...)Sv: Hjälp
>lära sig att vissa fasta datatyper har fasta storlekar i bytes...
>T ex: INT.
>(Därav kan man själv bedöma nödvändigheten av
>att använda sizeof på vissa fördefinierade datatyper...)
Det är just detta som är orsaken till väldigt många problem. Folk blir utbildade till att veta att int har ett visst antal bitar.
Det är fel. Det är kompilatorberoende. Int på en gammal Borland är 16-bitar, medan på en ny 32... Använd alltid sizeof eller kolla i kompilator hjälpen. (sizeof om programmet skall kunna flyttas)
/Niklas JanssonSv: Hjälp
>
>Det är fel. Det är kompilatorberoende. Int på en gammal Borland är >16-bitar, medan på en ny 32... Använd alltid sizeof eller kolla i >kompilator hjälpen. (sizeof om programmet skall kunna flyttas)
Ok...
Niklas har rätt. Har själv stött mig på (Bjarne)ANSI C++ enbart.
Sizeof är säkrast när du flyttar dig mellan olika kompilatorer.