私はこれを見つけました
linux/include/linux/cpumask.h
:
#define CPU_BITS_ALL \
{ \
[0 ... BITS_TO_LONGS(NR_CPUS)-2] = ~0UL, \
[BITS_TO_LONGS(NR_CPUS)-1] = CPU_MASK_LAST_WORD \
}
#endif /* NR_CPUS > BITS_PER_LONG */
3 つのドット ( ...
) は何を意味しますか? 3 つのドットが線を次のようなものに変換すると仮定しています。
[0] = ~0UL, \
[1] = ~0UL, \
[n] = ~0UL, \
...
[BITS_TO_LONGS(NR_CPUS)-2] = ~0UL, \
しかし、私は確信が持てません。Google で質問に対する回答を見つけることができませんでした。3 つのドットは、C に対する GCC 拡張機能の一部である可能性があります。