I have two questions:
1) Does Win32 API use C/C++ standard library or it has it own low level routines?
2) Why should the compiler know the target environment? For example we should clarify "console" or "Win32" by corresponding switches while they both run in Windows platform.