BACK ..
Groesse der C-Variablen anzeigen ================================ ################################################################################ # Frage: # # Wovon ist das abhängig, ob int = long ist? # #### #### # (eine) Antwort: # # Das ist wahrscheinlich vom Compiler abhängig. # # Die Plattform, die auf jeden Fall einen Compiler in long mit 64 bit hat, # # ist die DEC Alpha. Auf Sparc und auch x86 ist "long" 32 bit und erst # # "long long" ist 64 bit lang. # # Der ANSI-C Standard gibt für long "mindestens 32 bit" vor. # # In Java ist das besser gelöst, da ist auf ALLEN Plattformen # # "byte = 8 Bit", "short = 16 Bit", "int = 32 Bit" und "long = 64 Bit". # ################################################################################ Mit dem folgenden Programmchen kann jeder seine Plattform selber kontrollieren. #includeint main() { printf( "\n char belegt %d Bytes", sizeof( char )); printf( "\n int belegt %d Bytes", sizeof( int )); printf( "\n short belegt %d Bytes", sizeof( short )); printf( "\n long belegt %d Bytes", sizeof( long )); printf( "\n unsigned char belegt %d Bytes", sizeof( unsigned char )); printf( "\n unsigned int belegt %d Bytes", sizeof( unsigned int )); printf( "\n unsigned short belegt %d Bytes", sizeof( unsigned short )); printf( "\n unsigned long belegt %d Bytes", sizeof( unsigned long )); printf( "\n float belegt %d Bytes", sizeof( float )); printf( "\n double belegt %d Bytes\n", sizeof( double )); return 0; } siehe: http://www.bsdforen.de/showthread.php?t=4894&goto=nextoldest