Answer Posted / suman halder
within printf statement,f(2+2) i.e f(4) must return a value so that this value could get printed through %d format specifier..
Now,as f(x) is a macro template and macro expansion code for this template is not specified..so,here the situation is like,we are trying to return an integer value from a function which is having a "void" return type..
so,compiler flashes "Expression syntax error"..as during preprocessing macro template can't be replaced by macro expansion...
Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
What is "Duff's Device"?
Explain what is page thrashing?
Is malloc memset faster than calloc?
What are keywords c?
What are integer variable, floating-point variable and character variable?
What standard functions are available to manipulate strings?
Which of the following operators is incorrect and why? ( >=, <=, <>, ==)
What is the significance of c program algorithms?
What do you understand by normalization of pointers?
How can I implement sets or arrays of bits?
How can I convert a number to a string?
What are types of functions?
what is the difference between class and unio?
What is wrong with this statement? Myname = 'robin';
What is the full form of getch?