0

So I was reading through some WinApi files and found these:

#define CALLBACK    __stdcall
#define WINAPI      __stdcall
#define WINAPIV     __cdecl
#define APIENTRY    WINAPI
#define APIPRIVATE  __stdcall
#define PASCAL      __stdcall

#define FAR                 far
#define NEAR                near

typedef float               FLOAT;
typedef int                 INT;
typedef unsigned int        UINT;

#define VOID void
typedef char CHAR;
typedef short SHORT;
typedef long LONG;

I also found this on Gdiplus' files:

typedef float REAL;

Why do libraries do this? Why do they want to typedef the most basic things with a new name of just the same but in all caps? Why do they define the same things multiple times? Seems really useless to me and just more confusing and annoying.

Kordnak
  • 165
  • 10

0 Answers0