具有void * a和指针函数作为参数的函数

时间:2016-03-04 21:54:36

标签: c

我是C和指针的新手(所以请放轻松我)。 我正在使用一本参考书,我遇到了这些代码而没有任何解释(所有这些都是:函数名称是指向该函数的指针):

int isBigger(void *a,void *b,int (*f)(void *,void *)){
   return f(a,b)
}

我的问题是:

  1. 什么是无效* a?
  2. * f是指向函数的指针吗?
  3. 什么是无效*?它与void * a?
  4. 有关

1 个答案:

答案 0 :(得分:3)

由于给出的代码片段无法编译,我认为这就是你的意思:

int isBigger(void *a,void *b,int (*f)(void *,void *)){
   return f(a,b);
}

void*是一个可以指向任何东西的指针。有关详细信息,请参阅this post

f是一个指向函数的指针,该函数需要两个void*并返回一个int。您可以使用f(a,b)调用该函数。您可以在this post中找到更多示例。