用c语言表达

用c语言表达,c,function,pointers,C,Function,Pointers,所以我有下面的表达式 int *(*table())[30]; 在我的观点中,table()返回一个值,该值指向指针数组的开头,每个元素指向一个整数 你觉得怎么样 谢谢。你说得对。据 将表声明为函数,返回指向 int 另请参见或规则以帮助理解C表达式(关于支持后者的一些观点,请参见下面的注释)。您是正确的。据 将表声明为函数,返回指向 int 另请参见or规则以帮助理解C表达式(关于支持后者的一些观点,请参见下面的注释)。我不建议使用螺旋规则。因为它1)过于复杂,2)错误(例如尝试解析inta

所以我有下面的表达式

int *(*table())[30];
在我的观点中,table()返回一个值,该值指向指针数组的开头,每个元素指向一个整数

你觉得怎么样


谢谢。

你说得对。据

将表声明为函数,返回指向 int


另请参见或规则以帮助理解C表达式(关于支持后者的一些观点,请参见下面的注释)。

您是正确的。据

将表声明为函数,返回指向 int


另请参见or规则以帮助理解C表达式(关于支持后者的一些观点,请参见下面的注释)。

我不建议使用螺旋规则。因为它1)过于复杂,2)错误(例如尝试解析
inta[4][5]
)。还有一个更简单、更可靠的规则:@kotlomoy您需要为螺旋形规则插入隐式括号,
int(a[4])[5],那么就我所知,它是有效的。相反,如果你不得不做一些不寻常的事情来使用它,我认为这是反对使用它的一点。@kotlomoy谢谢你的评论。我已经在我的答案中添加了一个左右规则的链接。@kotlomoy整个优先点是使一些括号隐式。所以当我说“隐式括号”时,我可以说优先权。但是“如果你在优先级要求的时候偏离了螺旋规则,你可以使用它。”听起来不像“插入隐式括号时它会起作用”那么简单,所以我更喜欢用后者来表达双关语。我不推荐螺旋规则。因为它1)过于复杂,2)错误(例如尝试解析
inta[4][5]
)。还有一个更简单、更可靠的规则:@kotlomoy您需要为螺旋形规则插入隐式括号,
int(a[4])[5],那么就我所知,它是有效的。相反,如果你不得不做一些不寻常的事情来使用它,我认为这是反对使用它的一点。@kotlomoy谢谢你的评论。我已经在我的答案中添加了一个左右规则的链接。@kotlomoy整个优先点是使一些括号隐式。所以当我说“隐式括号”时,我可以说优先权。但是“如果你在优先级要求的时候偏离了螺旋规则,你可以使用螺旋规则。”听起来不像“插入隐式括号时它会起作用”那么爽快,所以我更喜欢用后者来表达双关语。
int *(*table())[30];