C Programming - C Preprocessor

1.
Which of the following are correct preprocessor directives in C?
1: #ifdef
2: #if
3: #elif
4: #undef
1, 2
4
1, 2, 4
1, 2, 3, 4
Answer: Option
Explanation:

The macros #ifdef #if #elif are called conditional macros.

The macro #undef undefine the previosly declared macro symbol.

Hence all the given statements are macro preprocessor directives.


2.
Which of the following are correctly formed #define statements in C?
#define CUBE (X) (X*X*X);
#define CUBE(x) (X*X*X)
#define CUBE(X)(X*X*X)
#define CUBE(X) {X*X*X}
Answer: Option
Explanation:
No answer description is available. Let's discuss.