Ковыряю проект в Си-Билдере. Понадобилось узнать, какой тип имеют члены TRect. Меня вынесло в windef.h, где тип был заявлен как LONG. А что такое LONG? Правильно, в winnt.h есть замечательные строки:
#define VOID void
typedef char CHAR;
typedef short SHORT;
typedef long LONG;
Обычно typedef используется либо для абстракции от конкретного типа, либо для повышения читаемости. До сих пор сижу в недоумении: неужели Microsoft старался улучшить понимание кода блондинками?