sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #22160
Re: VFAT og store filer
On Tue, 2 May 2000, Thomas wrote:
> Herfra hvor jeg sidder ser det altså temmeligt meget ud til at en unsigned
> long er 4 bytes == 32 bit på en 686, som jo burde være et OK eksemplar af
> den type maskiner vi snakker om.
>
> mmh..ser sådan ud :-)
>
> Er vi enig om, at en int er 32 bit ??????
På en i386, ja.
> dvs du siger at long = 32 bit = int ????? Hvorfor fanden så bøvle med en
> long eller int :-)
Du har følgende garantier:
sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long)
Det er det hele.
På en i386 (og HPUX 7xx og Sun ultrasparc, så vidt jeg kan se)
sizeof char 1
sizeof short 2
sizeof int 4
sizeof long 4
sizeof long long 8
På en alpha
sizeof char 1
sizeof short 2
sizeof int 4
sizeof long 8
sizeof long long 8
Så, derfor bøvler man med long.
Under C++ er sizeof(char) 1 fordi alle størrelser måles som multipla af
sizeof(char). Det er du, så vidt jeg ved, ikke engang garanteret under C,
hvor størrelser måles i bytes, altså, du kunne have at sizeof(char) = 2,
f.eks. Spooky.
Mads
--
Mads Bondo Dydensborg. madsdyd@xxxxxxxxxxxx
My shell can beat your shell. So there!
Follow ups
References