Conditional typedef declarations can be useful in cross-platform development. For example, some platforms define long as a 32-bit integer. Other platforms treat long as a 64-bit integer. You can create a portable typedef name that represents a 64-bit integer like this:
#if defined(ALPHA_PROCESSOR) typedef long INT64;#else typedef __int64 INT64; // windows#endif
Regardless of the target platform, the typedef INT64 now represents a 64-bit integer.