理解函数指针及其语法

时间:2015-08-10 01:41:46

标签: c function-pointers typedef

我很难理解函数指针及与之相关的语法。我在网上看了一下,看了一下,我都明白是简单的场景。我无法延长它。

我理解的是下面将函数的地址传递给指针的情况,我们将其用于将来的参考。

int GetSomething(char *);
typedef int (*pGetSomething)(char *);

int main(void)
{
    char * what = "I atleast got this";
    pGetSomething pfGetSomething;
    pfGetSomething = &GetSomething;
    pfGetSomething(what);  
    return 0;
}

int GetSomething(char *format)
{
    printf("%s \n \n ", format);
    return 0;
}

现在让我们说我想进一步扩展这个 -

PGetSomething调用Void函数并将地址返回给具有char *参数且返回类型为int的函数。

我尝试了下面的语法并尝试返回一个指向GetSomething的指针。但我想如何接近我是无能为力的。我所能得到的只是语法之下。有人可以帮助我理解在可能的情况下如何通过代码片段来实现所需的内容吗?

typedef int (*pGetSomething(void))(char *);

0 个答案:

没有答案