这是什么C语句,意味着什么呢? [英] What does this C statement mean?

查看:162
本文介绍了这是什么C语句,意味着什么呢?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我碰到这条线就来了:

void (*(*x)(void (*[10])(int *)))(int *)

谁能告诉我它是什么?

Can anybody tell me what it is?

推荐答案

要打破这种下来自己,从最内层括号开始,然后你的出路。

To break this down yourself, start from the inner most parentheses and work your way out.


  1. (* [10])< ---- 10个三分球阵列

  2. (* [10])(INT *)< ------ 10数组的指针向函数具有指针 INT 作为它的参数

  3. (无效(* [10])(INT *))< ------ 10数组的指针向函数有一个指向 INT 作为它的参数和返回无效

  4. (* X)(无效(* [10])(INT *))< ------- X 是指向具有作为一个参数(10函数指针数组,它有一个指针为int作为参数,并返回一个函数无效

  1. (*[10]) <---- Array of 10 pointers
  2. (*[10])(int *) <------ Array of 10 pointers to functions which has a pointer to int as its argument
  3. (void (*[10])(int *)) <------ Array of 10 pointers to functions which has a pointer to int as its argument and returns void
  4. (*x)(void (*[10])(int *)) <------- x is a pointer to a function which has as an argument (an array of 10 pointers to functions which has a pointer to int as its argument and returns void)

......

我停下中途,但希望有帮助。

I stopped partway through, but hopefully that helps.

这篇关于这是什么C语句,意味着什么呢?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆