title: finding size of a structure in c language
body: <p>In a structure of node size of data is 4 bytes and the size of node* is 8 bytes while the size of node is 16 bytes. After 4+8=12 where is 4 extra bytes of node?  </p>
  
  <p>I do not understand anything about this.</p>
  
  <pre><code>struct node
  {
      int data;
      struct node* next;
  }s;
  int main()
  {
       printf("node =&gt; %d \n",sizeof(s));
       printf("node.data =&gt; %d \n",sizeof(s.data));
       printf("node* =&gt; %d ",sizeof(s.next));
   return 0;
   }
   /*OUTPUT- 
   node =&gt; 16 
   node.data =&gt; 4
   node* =&gt; 8 */
  </code></pre>