Redian新闻
>
请问关于C语言的复杂表达式。
avatar
请问关于C语言的复杂表达式。# JobHunting - 待字闺中
r*o
1
请问,像C语言里面的
char (*(*x())[])()

char (*(*x[3])())[5]
这样的比较复杂的表达式,有什么简单的办法能快速辨析出它们的含义吗?
avatar
e*u
2
c-faq.com里面有个关于这个的文章,好像是一个螺旋什么方法

【在 r****o 的大作中提到】
: 请问,像C语言里面的
: char (*(*x())[])()
: 或
: char (*(*x[3])())[5]
: 这样的比较复杂的表达式,有什么简单的办法能快速辨析出它们的含义吗?

avatar
z*e
3
即使辨析除了含义,也讲不清楚。
大志的方法,就是从中间开始,然后左边看一眼,右边看一眼。

【在 r****o 的大作中提到】
: 请问,像C语言里面的
: char (*(*x())[])()
: 或
: char (*(*x[3])())[5]
: 这样的比较复杂的表达式,有什么简单的办法能快速辨析出它们的含义吗?

avatar
j*l
4
这种题技巧性太强,就好比实际中,三维数组和三重指针就很少用到一样.
onsite时候几乎不会问的
再比如这样的题,比较bt
++i + ++i + i++

【在 r****o 的大作中提到】
: 请问,像C语言里面的
: char (*(*x())[])()
: 或
: char (*(*x[3])())[5]
: 这样的比较复杂的表达式,有什么简单的办法能快速辨析出它们的含义吗?

avatar
r*o
5
不好意思,我上次onsite就被问到了类似的题目。可能这得看公司吧。

【在 j**l 的大作中提到】
: 这种题技巧性太强,就好比实际中,三维数组和三重指针就很少用到一样.
: onsite时候几乎不会问的
: 再比如这样的题,比较bt
: ++i + ++i + i++

avatar
P*b
6
这个看不懂

【在 r****o 的大作中提到】
: 请问,像C语言里面的
: char (*(*x())[])()
: 或
: char (*(*x[3])())[5]
: 这样的比较复杂的表达式,有什么简单的办法能快速辨析出它们的含义吗?

avatar
j*l
7
网上应该能搜到一些帖子讲这类问题的解读方法,规律还是有一些的,可能最后读出来
的,就是用中文都比较绕,要用几个从句分开说。
基本思想感觉和分析英语或者中文长难句类似,总是要先找到主干,再把修饰部分依次
加入
然后也觉得和有机化学解读长的碳式结构的名称类似,对各种比较基本的基要熟悉。至
少这里的一个基础知识点是,分清指向函数的指针和返回指针的函数,两者就差一对括号

【在 r****o 的大作中提到】
: 不好意思,我上次onsite就被问到了类似的题目。可能这得看公司吧。
avatar
r*o
8
C Programming Language里面有这类问题的描述。

括号

【在 j**l 的大作中提到】
: 网上应该能搜到一些帖子讲这类问题的解读方法,规律还是有一些的,可能最后读出来
: 的,就是用中文都比较绕,要用几个从句分开说。
: 基本思想感觉和分析英语或者中文长难句类似,总是要先找到主干,再把修饰部分依次
: 加入
: 然后也觉得和有机化学解读长的碳式结构的名称类似,对各种比较基本的基要熟悉。至
: 少这里的一个基础知识点是,分清指向函数的指针和返回指针的函数,两者就差一对括号

avatar
a*l
9
普通的表达式是中缀表达式,根本的意思就是从中间看起,然后左边看一下右边看一下.

【在 z****e 的大作中提到】
: 即使辨析除了含义,也讲不清楚。
: 大志的方法,就是从中间开始,然后左边看一眼,右边看一眼。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。