从sys.c行123开始:
void *sys_call_table[__NR_syscalls] =
{
[0 ... __NR_syscalls-1] = sys_ni_syscall,
#include <asm/unistd.h>
};
sys_call_table
是指向数组的通用指针,我可以看到.然而,它的符号是什么:
[0 ... __NR_syscalls-1]
...
美元是多少?
EDIT:
从sys.c行123开始:
void *sys_call_table[__NR_syscalls] =
{
[0 ... __NR_syscalls-1] = sys_ni_syscall,
#include <asm/unistd.h>
};
sys_call_table
是指向数组的通用指针,我可以看到.然而,它的符号是什么:
[0 ... __NR_syscalls-1]
...
美元是多少?
EDIT:
它是使用100初始化的.
基于范围的初始化是gnu gcc扩展.
要将一系列元素初始化为相同的值,请写入
[first ... last] = value
.这是GNU扩展.例如int widths[] = { [0 ... 9] = 1, [10 ... 99] = 2, [100] = 3 };
它不便于携带.用-pedantic
来编译,告诉你吧.
How does it work here?