静态初始化字段以指向另一个字段

时间:2016-10-21 20:58:38

标签: c struct

我想要一个带嵌入式数组缓冲区和指针的结构,它可以指向嵌入式缓冲区或外部缓冲区:

isExecuting

我想静态初始化(如在全局变量中)此结构,以便struct s { char internal_buf[BUF_SIZE]; char *active_buf; }; 字段指向同一结构的active_buf字段。换句话说,比如:

internal_buf

这可能吗?我正在使用GCC。

1 个答案:

答案 0 :(得分:0)

嗯,结果是正确的语法只是:

struct s inst = {
    .internal_buf = {0},
    .active_buf = inst.internal_buf, // Works, address is known at compile-time
};