gpt4 book ai didi

c - 我在 linux 内核中发现了一些奇怪的代码,有人可以向我解释一下吗?

转载 作者:太空狗 更新时间:2023-10-29 16:22:12 24 4
gpt4 key购买 nike

我在 initramfs.c 中找到了这个,我以前没见过这个语法,有人能解释一下它在做什么吗?

static __initdata int (*actions[])(void) = {
[Start] = do_start,
[Collect] = do_collect,
[GotHeader] = do_header,
[SkipIt] = do_skip,
[GotName] = do_name,
[CopyFile] = do_copy,
[GotSymlink] = do_symlink,
[Reset] = do_reset,
};

源代码(第 366 行):initramfs.c

最佳答案

这是一个按索引初始化的乱序数组。就像写作一样

actions[Start] = do_start;
actions[Collect] = do_collect;

除了您可以将其作为静态初始值设定项之外。

关于c - 我在 linux 内核中发现了一些奇怪的代码,有人可以向我解释一下吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2241448/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com