C Programming - MCQ Practice Questions
Practice free C Programming multiple-choice questions with detailed answers and explanations. Perfect for competitive exam preparation.
978 questions | 100% Free
Which statement about __VA_ARGS__ in variadic macros is CORRECT?
Consider: #define DOUBLE(x) (2*(x)) int main() { int arr[DOUBLE(5)]; ... } What is the size of the array?
What will be the preprocessed output of the following code? #define SQUARE(x) x*x int result = SQUARE(5+3);
Consider the following macro definition: #define ADD(x,y) ((x)+(y)) #define MULTIPLY(x,y) ADD(x,y)*ADD(x,y) What is MULTIPLY(2,3)?
What does the __VA_ARGS__ preprocessor feature allow in variadic macros?
What is the output of the following code? #define STR(x) #x printf(STR(Hello World));
Consider this preprocessor code: #define CONCAT(a,b) a##b int CONCAT(var,1) = 10; What is the actual variable name created?
Consider the following preprocessor directives: #define MAX 100 #define MIN 50 #undef MAX #define MAX 200 int main() { printf("%d", MAX); return 0; } What will be the output of this program?