As far as I now, the ?: operator is C++ not C. Correct me if wrong.
Second, it is not:
Code:
#define fact(n) ( n == 0 ? 1 ; (n*(fact(n-1) ) ) )
But:
Code:
#define fact(n) ( n == 0 ? 1 :(n*(fact(n-1) ) ) )