How to distinguish Linux from Win using macros?

Started by
2 comments, last by Q-Parser 19 years, 4 months ago
Hi there! I'm curious about how to make my C code distinguish whether I'm compiling under Windows or Linux. For example there's "conio.h" under win but there isn't in linux. I know that it's done using #ifdef macros but have no idea how to do that. Thanks.
Advertisement
most win32 projects define _WIN32 so set up a simple app like a hello world you can do:

#include <stdio.h>#include <stdlib.h>#ifdef _WIN32#include <windows.h>#endif// I think __linux__ is the common define for linux or __GNUC__#ifdef __linux__#include <somelinuxheader.h>#endif


Thats the way I've seen it done in the MOD I work on in my spare time.
Raven Software :: Tools Programmer
[Ravensoft] [My Site] [Full Sail]
did you try
#ifdef LINUX
?

Check your compiler documentation about what is defined when compiling.

read here
Great! __linux__ works fine. Thanks a lot. You have saved my life [lol]

This topic is closed to new replies.

Advertisement