title: forward declaration of a struct in C?
body: <pre><code>#include &lt;stdio.h&gt;
  
  struct context;
  
  struct funcptrs{
    void (*func0)(context *ctx);
    void (*func1)(void);
  };
  
  struct context{
      funcptrs fps;
  }; 
  
  void func1 (void) { printf( "1\n" ); }
  void func0 (context *ctx) { printf( "0\n" ); }
  
  void getContext(context *con){
      con=?; // please fill this with a dummy example so that I can get this working. Thanks.
  }
  
  int main(int argc, char *argv[]){
   funcptrs funcs = { func0, func1 };
     context *c;
     getContext(c);
     c-&gt;fps.func0(c);
     getchar();
     return 0;
  }
  </code></pre>
  
  <p>I am missing something here. Please help me fix this. Thanks.</p>