c - 不清楚的结构变量用法 - C

标签 c linux data-structures linux-kernel

在浏览 Linux 内核代码时,我遇到了这样的事情。

struct dma_chan {
        int  lock;
        const char *device_id;
};

static struct dma_chan dma_chan_busy[MAX_DMA_CHANNELS] = {
        [4] = { 1, "cascade" },
};

这是什么 - [4] = { 1, "cascade"}, - 暗示用法?

注意:内核版本为2.6.32

最佳答案

这是一个 designated initializer.它将第五个元素显式初始化为 { 1, "cascade"} ,其他元素默认初始化。

关于c - 不清楚的结构变量用法 - C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40948118/

相关文章:

c - 以下代码段中动态分配了多少字节?

c - 关于 C 中的返回类型

regex - unix/linux 上的 grep : how to replace or capture text?

c - 内核文件中函数错误的多重定义

data-structures - 什么是树中的节点?

c - 重新定义;不同的基本类型

c - 具有不同定义的类型转换结构

Linux BlueZ 自定义制造扫描响应数据

你能把更小的结构放入更大的内存块吗?

database - 关于构建快速分布式数据库的建议