title: error: expected identifier or ‘(’ before ‘.’ token
body: <h2>a.c</h2>
  
  <pre><code>#include&lt;stdio.h&gt;
  #include "a.h"
  
  int main(){
          s.a = 10;
          printf("\n add : %d \n",add(2,2));
          printf("\n sub : %d \n",sub(2,2));
          printf("\n struct is : %d \n",s.a);
          return 0;
  }
  </code></pre>
  
  <h2>b.c :</h2>
  
  <pre><code>#include&lt;stdio.h&gt;
  int add(int a,int b){
          return (a+b);
  }
  int sub(int a,int b){
          return (a-b);
  }
  </code></pre>
  
  <h2>a.h :</h2>
  
  <pre><code>#ifndef A_HEADER
  #define A_HEADER
  
  typedef struct _s{
          int a;
          int b;
  }s;
  
  int add(int a,int b);
  int sub(int a,int b);
  
  #endif
  </code></pre>
  
  <p>O/p:</p>
  
  <pre><code>[root@s new]# ls
  a.c  a.h  b.c  include 
  
  [root@s new]# gcc -c a.c -o a.o
  a.c: In function ‘main’:
  a.c:4: error: expected identifier or ‘(’ before ‘.’ token
  a.c:7: error: expected expression before ‘s’
  </code></pre>
  
  <p>I 'm getting an error as above. Couldn't find why the error is</p>