这种初始化结构的语法叫什么?

时间:2018-02-11 19:41:56

标签: c struct

在Linux内核源代码中,有一些结构初始化为

struct remap_trace *trace = kmalloc(sizeof(*trace), GFP_KERNEL);

*trace = (struct remap_trace) {
        .probe = {
            .addr = (unsigned long)addr,
            .len = size,
            .pre_handler = pre,
            .post_handler = post,
            .private = trace
        },
        .phys = offset,
        .id = atomic_inc_return(&next_id)
    }
  • 这种初始化叫做什么?
  • 它是特定于gcc还是C标准?
  • 它是否在堆栈上创建一个结构,初始化其成员并将整个事物复制到*trace,即在这种情况下堆?)

0 个答案:

没有答案