C:避免间接引用struct里面的struct字段

时间:2017-08-06 07:56:47

标签: c struct

鉴于此代码:

#include <stdio.h>

typedef struct inside {
    int insideMember;
} inside;

typedef struct outside {
    // magic goes here
    struct inside insideStruct;
} outside;

int main(int argc, char **argv)
{
    outside x = {0};
    printf("%d\n", x.insideStruct.insideMember);
    // printf("%d\n", x.insideMember);
    return 0;
}

我想改变outside的定义,以便注释printf起作用(也就是说,我可以直接访问嵌套成员)。

我知道我可以粘贴inside的定义,以使outside有一个匿名结构作为成员,但在实际代码中inside必须包含其他许多内容需要直接访问的结构,我想避免在每个结构中复制整个块。

0 个答案:

没有答案