This is output from `defines' version 4.1.1, from your buddies at Newtware! Thu May 17 22:34:28 HKT 2012 Linux debian 2.0.6 #2 Sun Jul 14 18:49:25 PDT 1996 i686 cc = [lcc] _POSIX_SOURCE = 1 __BASE_FILE__ = "/tmp/def303.c" __DATE__ = "May 17 2012" __ELF__ = 1 __FILE__ = "/tmp/def303.c" __IMMEDIATE_PREFIX__ = __INCLUDE_LEVEL__ = 0 __LCC__ = 1 __LINE__ = 8744 __PTRDIFF_TYPE__ = int __REGISTER_PREFIX__ = __SIZE_TYPE__ = unsigned int __STDC_VERSION__ = 199409L __STDC__ = 1 __STRICT_ANSI__ = 1 __TIME__ = "22:34:28" __USER_LABEL_PREFIX__ = __VERSION__ = "2.7.2" __WCHAR_TYPE__ = long int __i386__ = 1 __linux__ = 1 __signed__ = signed __unix__ = 1 i386 = 1 linux = 1 unix = 1 Checking other possibilities; should already be listed above: __DATE__ = "May 17 2012" __FILE__ = "/tmp/def303.c" __LINE__ = 25 __STDC__ = 1 __TIME__ = "22:34:28" Sizes of basic variable types: sizeof(char) = 8 bits sizeof(short) = 16 bits sizeof(int) = 32 bits sizeof(long) = 32 bits sizeof(float) = 32 bits sizeof(double) = 64 bits sizeof(long double) = 64 bits sizeof(char *) = 32 bits sizeof(char (*)(char)) = 32 bits