Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/140.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ c关于类型为“的参数的函数声明说明”;无效(*fcn)(无效*)”;_C++_C_Function_Arguments - Fatal编程技术网

C++ c关于类型为“的参数的函数声明说明”;无效(*fcn)(无效*)”;

C++ c关于类型为“的参数的函数声明说明”;无效(*fcn)(无效*)”;,c++,c,function,arguments,C++,C,Function,Arguments,我在C函数声明中遇到了以下行。我对传入的第一个参数的类型感到困惑。有人能解释一下如何理解第一个论点的类型吗 int clone(void (*fcn) (void *) , void *arg, void *stack) 由内而外读取类型:fcn是指向函数的指针,该函数接受void*参数,不返回任何内容(void) 由内而外读取类型:fcn是指向函数的指针,该函数采用void*参数,不返回任何内容(void)。经过几次编辑(删除变量名称)后,给出: 将克隆声明为函数(指向函数的指针(指向voi

我在C函数声明中遇到了以下行。我对传入的第一个参数的类型感到困惑。有人能解释一下如何理解第一个论点的类型吗

int clone(void (*fcn) (void *) , void *arg, void *stack)
由内而外读取类型:
fcn
是指向函数的指针,该函数接受
void*
参数,不返回任何内容(
void

由内而外读取类型:
fcn
是指向函数的指针,该函数采用
void*
参数,不返回任何内容(
void
)。

经过几次编辑(删除变量名称)后,给出:

将克隆声明为函数(指向函数的指针(指向void的指针)返回void,指向void的指针,指向void的指针)返回int

或者,您可以只测试第一个参数并获取其类型:指针指向函数的指针指向void,返回void。

经过几次编辑(删除变量名称)后,给出:

将克隆声明为函数(指向函数的指针(指向void的指针)返回void,指向void的指针,指向void的指针)返回int

或者,您可以只测试第一个参数并获取其类型:指向函数的指针指向void,返回void。

使用:

所以

  • fcn
    是指向
  • 具有
    void*
    作为参数的函数
  • 返回
    void
    (无)
使用:

所以

  • fcn
    是指向
  • 具有
    void*
    作为参数的函数
  • 返回
    void
    (无)

正如你可能猜到的那样,这是一个函数。啊。所以它是一个指向函数的指针,返回类型是void,参数类型是指向void的指针?@James:没错。谢谢大家。你们都很快。正如你们可能猜到的,它是一个函数。啊。所以它是一个指向返回类型为void的函数的指针,而参数类型是指向void的指针?@James:没错。谢谢大家。你们速度很快。
void (*fcn) (void *)
      +------+
      | +--+ |
      | ^  | |
void (*fcn ) (void *)
  ^   ^    | |
  |   +----+ |
  +----------+