在C结构中,我已经定义了一个函数指针,如下所示:
typedef struct _sequence_t
{
const int seq[3];
typedef void (* callbackPtr)();
} sequence_t;
我想用:
全局初始化该类型的varsequence_t sequences[] = {
{ { 0, 1, 2 }, toggleArmament },
};
我不断收到错误,告诉我初始化程序太多了。如何解决这个问题?
答案 0 :(得分:11)
typedef
用于声明类型的别名。由于您在此处拥有实际成员,因此请移除内部typedef
。
typedef struct _sequence_t
{
const int seq[3];
void (* callbackPtr)();
} sequence_t;