假设我有一个函数f(struct_t** p)
,它通过s
操纵结构p
。 f
调用了一个g(struct_t** p)
函数,该函数会重新分配s
,以便f
的来电者在s
之后仍然可以通过*p
访问f
{1}}返回。我可以考虑三种方法来处理s
中f
字段的访问权限:
struct_t* q = *p
开头指定f
,以便通过s
而不是q->field_name
获得对(*p)->field_name
的更具可读性的访问权限,并将q
重新分配给*p
每次致电g(p)
后(*p)->field_name
。f
中使用#define
访问s的字段并牺牲可读性。q
期间,(*p)
f
至s
。哪一种最好?如果它们都不理想,那么f
中的console.log(["!report","Jay","This","is","the","reason"].slice(2).join(' '));
字段应如何访问?