Question -
What will be the output of the following program? #include #define square(x) x*x void main() { int i; i = 64/square(4); printf("%d", i); }
Options:
A .  4
B .  64
C .  16
D .  None of These
Answer: Option B The macro call square(4) will be substituted by 4*4 so the expression becomes i = 64/4*4 . Since / and * has equal priority and associativity left to right, so the expression will be evaluated as (64/4)*4 i.e. 16*4 = 64.
Submit Your Solution hear: