Thursday, April 21, 2011

Struct with pointer to a function

Hello,

In a C struct I have defined a function pointer as follows:

typedef struct _sequence_t
{
  const int seq[3];
  typedef void (* callbackPtr)();
} sequence_t;

I want to initialize a var of that type globally with:

sequence_t sequences[] = {
  { { 0, 1, 2 }, toggleArmament },
};

And I keep getting error telling me that there are too many initializers. How to work it out?

From stackoverflow
  • typedef is used to declare an alias to a type. Since you have an actual member here, remove the inner typedef.

    typedef struct _sequence_t
    {
      const int seq[3];
      void (* callbackPtr)();
    } sequence_t;
    

0 comments:

Post a Comment