Lets say I've got a three module source (File1.c, File2.c and File3.c) and I use #undef at a global level in one of the modules like shown in Example A. Will this redefinition effect the other modules?
Example A:
Code:
/* File2.c */
typedef signed char MYBYTE;
#undef LOBYTE
#undef HIBYTE
#define LOBYTE(w) ((MYBYTE)(int)(w))
#define HIBYTE(w) ((MYBYTE)(((int)(w) >> 8) & 0xFF))
Scenerio two. Lets say I do a #ifdef as shown below in case WM_SIZE under WinMain(). Will these redefinitions be confined to just case WM_SIZE?
Code:
case WM_SIZE:
{
#ifdef LOBYTE
#ifdef HIBYTE
#undef LOBYTE
#undef HIBYTE
#define LOBYTE(w) ((signed char)((signed) w & 0x00FF)
#define HIBYTE(w) ((signed char)(((signed) w & 0xFF00) >> 8))
/* .... */ // rest of code
#endif
#endif
}
break;
BTW, These are just made up scenerios.