这个语句只有高手才能看懂,请高手进来!??

来源:百度知道 编辑:UC知道 时间:2024/09/28 11:42:39
void (*)() func();

我想定义一个函数func,形参为空,返回值是一个函数指针,指向(无返回值且形参为空的)函数,可是上面的定义方法总是通不过编译,那么应该怎么办?????
楼下的能不能说说void (*func())();
是什么意思?func是什么?我需要定义一个函数func,而你的func是什么?

#include <stdio.h>
 
void VoidFunction()//这是要返回的函数指针指向的函数
{
        printf("In VoidFunction\n");
}
 
//方法一,直接的定义,不易读
 
void (*FuncA())()
{
        return VoidFunction;
}
 
//方法二,先定义函数类型再使用,易读,推荐
 
typedef void (*FVoid)();
 
FVoid FuncB()
{
        return VoidFunction;
}
 
int main()
{
        //方法一
        FVoid fvoid = FuncA();
        (*fvoid)();
        //方法二
        fvoid = FuncB();
        (*fvoid)();