有人可以向我解释一下这个程序吗
#include <stdio.h>
void print(void)
{
printf("g");
}
int main()
{
void(*message)(void);
print(); // i have doubt here it g
message = print; // now here why it is printin g again
(*message)();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这个程序void首先带来了一个函数,现在printf当我们进入main函数时,第一行指示指针消息,该消息为空,之后没有得到原因
您拨打了print两次:直接拨打一次:
print();
Run Code Online (Sandbox Code Playgroud)
一旦通过函数指针:
message = print;
(*message)();
Run Code Online (Sandbox Code Playgroud)