我遇到了下面的语句,脑子放屁了。
++(*q)->len;
q
似乎是一个连续的内存数组,从外观上看,
似乎是指向 structs
的指针数组;掌握一个新的
代码库,很抱歉含糊不清。
有了上面的说法,我们
取消引用 q
,获取指针值,然后我们取消引用并访问字段 len
,然后递增?在代码中,我想说的是这个 ++((*q)->len)
,将是显式执行。
或者我应该这样理解,我们取消引用 q
然后递增值,然后我们取消引用并获得 struct 的
即在递增之前比 len
字段q
提前一个。同样,在代码中,我想说的是这个 (++(*q))->len
,将是显式执行。
任何指导都会很棒
更新:
我想第一个解析是有意义的 ++((*q)->len)
,就好像是第二种情况一样,
我们会得到 len
的值,然后什么也不做。
最佳答案
*q
并不真正意味着它是连续的内存数组。
答案是它在内存位置 q
len
字段
关于c - 我应该如何在心理上解析这个陈述?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42676386/