title: getting error while compiling this code
body: <p>I am writing code to create a proper link lists. please tell the errors in this program<a href="http://i.stack.imgur.com/RHSzP.png" rel="nofollow">errors while compiling</a> </p>
  
  <pre><code>    #include &lt;stdio.h&gt;
      #include &lt;string.h&gt;
      #include &lt;stdlib.h&gt;
      typedef void* cadtpointer;
      struct cadtlist 
      {
        cadtpointer data;
        struct cadtlist* next;
       }; /* structure*/
  
       struct cadtlist* cadt_list_init( )
       {
          struct cadtlist * temp, * head,* list;
          int num;
          char *p, s[100];
          printf(" enter the number of nodes to be created");
          while (fgets(s, sizeof(s), stdin)) 
          {
            num = strtol(s, &amp;p, 10);
            if (p == s || *p != '\n') 
              {
                  printf("Please enter an integer: ");
              }
            else break;
          } 
          while (num != 0)
          {
           if(NULL != list )
           {
             list-&gt;next = cadt_create_list(temp);
              }
           else
          {
            list = cadt_create_list(temp);
            head = list;
          }
          num--;
        }
  
  
      }
     struct cadtlist* cadt_create_list(struct cadtlist * list)
     {
      int n;
      char * data;
      struct cadtlist * newnode;
      newnode = ( struct cadtlist *) malloc( sizeof(struct cadtlist));
      if( NULL != newnode )
      {
          printf(" enter the data to be added");
          scanf("%s", data);
          n= cadt_add_list(data,newnode);
          if( 1 == n)
          return newnode; 
      }
      else
      {
          printf(" error while allocating memory");
          exit(1);
      }
     }
     struct cadtlist* cadt_add_list( char* item,struct cadtlist * list) 
    {
     list-&gt;data = item;
     if(NULL == list-&gt;data)
      {
          return list;
      }
      else
      {
          printf(" error while adding data");
          exit(1);
      }
     } 
  
   int main()
   {
      struct cadtlist* list1;
      list1 = cadt_list_init();
  
      return 0;
    }
  </code></pre>