Int fun4(Int) declares a function whose parameter is an int variable and the return value is also an int type.
int(* pf)(int)= fun 4; A function pointer is declared to point to such a function-the parameter is an int variable and the return value is also an int, and the fun4 function meets this condition, so the pointer pf points to the fun4 function at this time.
Let's talk about the error of the option in detail.
a:int a = 15; int n = fun 4(& amp; a); The parameter of fun4 function is an int variable, but it is given an address at this time. The address, explicit parameters and actual parameters of are inconsistent, and an error should be reported.
B: It is possible to run the results. I ran it in VS2005, and the result was 47. However, since fun4 function requires that the parameters are of type int and a*3. 14 is of type double, there is type conversion here, which is unsafe and not recommended.
C: Correct.
d; Format error *pf(256), which is illegal indirect addressing, will lead to compilation errors and the operation will not pass.
I hope it helps you! !