Hi everybody!
I have a little problem with the solution of this problem:
"Given two lists, insert in a third list the pair values of the first one and the odd values of the other one."

My standard list is composed by:

-The nodes, which are structured datas formed by two datas:
a pointer and a float value;
-A pointer, which points to the first node;
-A doublepointer, which points to the pointer.

Here there is my function:

Code:
void new_pairodd (struct list **A, struct list **B, struct list **C){


     if (((*A)->value)!=NULL) {


         if (((*A)->value)%2 != 0){
              after_add_node (C, (*A)->value);
              A= &((*A)->next);
          }

          else{
              A= &((*A)->next);
          }
     }





     if (((*B)->value)!=NULL) {


             if (((*B)->value)%2 == 0){
                  after_add_node (C, (*B)->value);
                  B= &((*B)->next);
              }

              else{
                  B= &((*B)->next);
               }
     }
 }
I have a problem with these lines of code:

"if (((*A)->value)!=NULL)"
"if (((*A)->value)%2 != 0)"

Can anyone help me?



P.S. after_add_node is the function which creates new nodes in a list obviously.