which global variable can be used in the preprocessor directive file.cpp
int variable = 1;
#if variable >= 1
int a = 0;
#else
int a = 1;
#endif
or
file.cpp
const int variable = 1;
#if variable >= 1
int a = 0;
#else
int a = 1;
#endif
or file.cpp
#include "header.h"
// extern in variable; in the header.h
#if variable >= 1
int a = 0;
#else
int a = 1;
#endif
What are the rules which governs using the variables in the proprocessor directive? If a variable which can be consant folded, can it be used in the #if/#elif#else directives?