Con il C puoi sapere il sistema operativo per cui è compilato il programma, non quello su cui viene eseguito; per fare questo ti puoi basare sulle macro definite dal compilatore, come in effetti fai nel tuo codice.
Ma che parametro devo associare in fase di compilazione per non ricevere errori?
Che errori ricevi?