C中struct中使用的函数指针

function pointer used in struct in C

谁能解释一下 C 中结构代码的以下语法?

struct { 
  Fn *pmq;
}
service_MQ[] = 
{
   NULL
   #define BUILd_SVC_MQ(name , func) , (Fn*) Func
   #include<mqsvctable.h>
};
  • 有一个结构只有成员作为指针(可能指向 函数)
  • 有一个包含函数列表的 x 头文件 mqsvctable.hBUILd_SVC_MQ 宏下。像
BUILd_SVC_MQ("clear", clear_screen)
BUILd_SVC_MQ("delete", delete_something)