BigMan wrote:
Ooops, I've put it the wrong way. Here's what I mean: does it matter
which line I use to check if a macro has been defined.
Yes it does. The former method (with '#ifdef') checks whether it has
been defined. The latter one (with '#if') checks whether it is
substituted with integral zero (if well-formed). This is not the same.
For example, defining 'MACRO' as either '0' or '1' will give you the
same results from the former method (i.e. '#ifdef' will say that it is
defined in both cases), but different results from the latter method.
Defining 'MACRO' as follows
#define MACRO
will work with the former method, but it makes the latter one ill-formed.
--
Best regards,
Andrey Tarasevich