C 指向带/不带&;的函数的指针;
这两者(C 指向带/不带&;的函数的指针;,c,pointers,C,Pointers,这两者(ptrfun1和ptrfun2)之间有什么不同吗 两者是否都指向函数fun?没有任何区别 函数衰减为函数指针。没有任何区别 函数衰减为函数指针。这可能很明显,但将其指向具有相同参数的另一个函数是不可能的?只要函数具有相同的参数和协变返回类型,是的,您可以使用ptrfun1和ptrfun2指向另一个函数************&&&&&&&&&这可能是显而易见的,但将其指向具有相同参数的另一个函数是不可能的?只要该函数具有相同的参数和协变返回类型,是的,您可以使用ptrfun1和ptrfu
ptrfun1
和ptrfun2
)之间有什么不同吗
两者是否都指向函数
fun
?没有任何区别
函数衰减为函数指针。没有任何区别
函数衰减为函数指针。这可能很明显,但将其指向具有相同参数的另一个函数是不可能的?只要函数具有相同的参数和协变返回类型,是的,您可以使用
ptrfun1
和ptrfun2
指向另一个函数<代码>************&&&&&&&&&这可能是显而易见的,但将其指向具有相同参数的另一个函数是不可能的?只要该函数具有相同的参数和协变返回类型,是的,您可以使用ptrfun1
和ptrfun2
指向另一个函数<代码>************&&&&&&&&&此外,您可以只使用ptrfun1(23)代码>而不是(*ptrfun1)(23)代码>。常见的代码编写为if(ptrfun1)ptrfun1(arg)
。此外,您可以只使用ptrfun1(23)代码>而不是(*ptrfun1)(23)代码>。常见的代码编写为if(ptrfun1)ptrfun1(arg)代码>。
int fun(int num){
num *= num;
return num;
}
int main(){
int (*ptrfun1)(int num) = fun;
int (*ptrfun2)(int num) = &fun;