C - 32 bit egesz?

Nagy Zoltán nagy.zoltan at popkft.hu
Fri May 27 11:26:20 CEST 2005


2005. május 25. 21.50 dátummal Palasik Sandor ezt írta:
> > #if (sizeof(int) == 4)
>
> Hú, ez milyen jó is lenne :-) A gond az, hogy a preprocesszor nem
> ismeri az adattípusokat és a sizeof() függvényt. Az még nem az igazi
> fordító, az csak szövegből szöveget készít.

Használd a limits.h-t, ez a fordító saját header fájlja, mely 
tartalmazza a konkrét fordításra vonatkozó típusméreteket:
#include <limits.h>

char: CHAR_MIN, CHAR_MAX
signed char: SCHAR_MIN, SCHAR_MAX
unsigned char: 0, UCHAR_MAX

short int: SHRT_MIN, SHRT_MAX
unsigned short int: 0, USHRT_MAX
int: INT_MIN, INT_MAX
unsigned int: 0, UINT_MAX
int: LONG_MIN, LONG_MAX
unsigned int: 0, ULONG_MAX

de úgy rémlik, hogy vannak olyan konstansok is, amelyek a bitek számát 
tárolják, pl.: CHAR_BIT


-- 
Nagy Zoltán
P.O.P. KFT.




More information about the Elektro mailing list