I was given a variation of this C code in an interview recently, and asked what would be returned by the function.
#define fun(a) a*a
int main() {
return(fun(4+5));
}
I've run it with a printf("%d"...)
in place of the return and it prints 29. No other types than "%d" showed a result. Can someone explain what is going on here?