Является ли стандартным для #if принятие неопределенных символических констант как 0?
В этомc
программа
#include<stdio.h>
int main()
{
#if UnDefinedSymbolicConstant==0
printf("UnDefinedSymbolicConstant is equal to 0\n ");
#else
printf("UnDefinedSymbolicConstant is not equal to 0\n");
#endif
return 0;
}
UnDefinedSymbolicConstant не было#define
где-нибудь ещеis being assumed as 0 и даетвывод наgcc-4.3.4
как:
UnDefinedSymbolicConstant is equal to 0
так, Is this the standard behaviour or it works like this only in gcc?