如何创建函数,在C中返回指向另一个函数的指针而不使用typedef?

如何创建函数,在C中返回指向另一个函数的指针而不使用typedef?,c,function,pointers,C,Function,Pointers,例如,我有以下功能: char ret_a(int x) { return 'a'+x; } typedef char (*fptr)(int); fptr hyperfunc(float a, int b) { return &ret_a; } 我怎样才能摆脱typedef?你可以像这样摆脱它们。第三个函数返回指向函数的指针,该函数返回指向运行char的函数的指针 char ret_a(int x) { return 'a'+x; } char (*hy

例如,我有以下功能:

char ret_a(int x)
{
    return 'a'+x;
}

typedef char (*fptr)(int);

fptr hyperfunc(float a, int b)
{
    return &ret_a;
}

我怎样才能摆脱typedef?

你可以像这样摆脱它们。第三个函数返回指向函数的指针,该函数返回指向运行char的函数的指针

char ret_a(int x)
{
    return 'a'+x;
}

char (*hyperfunc(float a, int b))(int)
{
    char (*fp)(int) = &ret_a;
    return fp;
}

char (*(*superhyper(double a))(float, int))(int)
{
    char (*(*fpp)(float, int))(int)=&hyperfunc;
    return fpp;
}