Correct Answer - Option 1 : 14
The correct answer is "option 1".
CONCEPT:
The #define is the preprocessor directive used to define micro substitution or constant.
By #define directive compiler substitutetoken for each occurrence of defined constant or identifier in the source file.
Only when the identifier forms a token, it gets replaced.
CALCULATION:
The given code will perform the calculation as:
Value of b = 4
SQR(x) → (x*x)
|
SQR(b+2) →
(b+2*b+2)
|
(4+2*4+2) → 14
|
Hence, the value of a is 14.
Never consider ( a * a ) as (a) * (a).
Eg. If a = b+2 then, (b+2 * b+2) is correct & (b+2)*(b+2) is wrong.