前几天分析udev实现自动在/dev下创建节点时,看到内核源码中定义actions的数组形式,觉得很奇怪。
static const char *kobject_actions[] = {
[KOBJ_ADD] = "add",
[KOBJ_REMOVE] = "remove",
[KOBJ_CHANGE] = "change",
[KOBJ_MOVE] = "move",
[KOBJ_ONLINE] = "online",
[KOBJ_OFFLINE] = "offline",
};
写了个用户态程序测试了一下,
#include <stdio.h>
#include <stdlib.h>
enum kobject_action {
KOBJ_ADD,
KOBJ_REMOVE,
KOBJ_CHANGE,
KOBJ_MOVE,
KOBJ_ONLINE,
KOBJ_OFFLINE,
KOBJ_MAX
};
static const char *kobject_actions[] = {
[KOBJ_ADD] = "add",
[KOBJ_REMOVE] = "remove",
gcc 二维数组赋值
最新推荐文章于 2021-04-21 13:05:49 发布
这篇博客探讨了在GCC中如何对二维数组进行赋值,通过内核源码中的例子展示了两种不同的赋值形式,并通过用户态程序进行测试验证,输出结果表明这两种方式在赋值效果上是一致的。
摘要由CSDN通过智能技术生成