<分区>
我正在尝试让这段代码运行..
#include <stdio.h>
int *myMethod(int *a)
{
printf("Hello");
return a;
}
int main()
{
// my_ptr is a pointer to function myMethod()
int *my_ptr(int *) = myMethod;
// Invoking myMethod() using my_ptr
int a = 5;
int *p = (*my_ptr)(&a);
printf("Bye %d\n", *p);
return 0;
}
我认为我的函数指针 my_ptr 的语法是正确的,它可以接受一个 int 指针作为参数并返回一个 int 指针,但是当我编译它时,我得到的错误是:
error: function 'my_ptr' is initialized like a variable
int *my_ptr(int *) = myMethod;
有人可以解释错误/问题吗?谢谢!