В исходном коде ядра Linux встречается заумный макрос #define

Marcro get_cpu_var, который определен как ниже

<code> 29 #define get_cpu_var(var) (*({                           \
 30         extern int simple_identifier_##var(void);       \
 31         preempt_disable();                              \
 32         &__get_cpu_var(var); }))
</code>

кажется непонятным, чтобы быть. Я предполагаю, что это был один вид макроса функции, который возвращает указатель переменной (на основе звездочки) или это какой-то указатель на функцию. Я даже близко к этому? Может ли кто-нибудь просветить меня?

Ответы на вопрос(1)

Ваш ответ на вопрос