萌新请问函数说明的返回语句问题。

函数说明int“*fun(int*p,int n);"
答案给的是函数中的返回语句应该是return &n,请问为什么返回的应该是&n而不是n或者*p呢?

这个要看函数的功能,但是因为p是int *,所以*p是int,n也是int,返回类型是int *,所以从语法的角度来说,不能是*p或者n

对函数进行分析
int* fun(int* p, int n);

fun函数的返回值类型为int* (是一个整型指针,即指向整型的指针)
参数p也是一个整型指针,n是一个整型

所以返回的时候需要返回一个整型指针(整型指针的值就是整型变量的地址)

而&n就是对整型变量n取地址,满足要求,

*p 和 n都是整型,与返回值类型不符