SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: ada en Sábado 3 de Abril de 2004, 15:21

Título: Duda
Publicado por: ada en Sábado 3 de Abril de 2004, 15:21
Tengo una funcion en la cual abro un fichero binario y a continuacion llamo a otra funcion llamada buscar:

struct preguntas *buscar(FILE *pf){
   struct preguntas *aux=cab;                 //el valor de aux es el de cab
   int encontrado=0,preg;                   //aqui aux vale NULL


   preg=(random(20)+1);
   while(aux && encontrado==0){
      if(aux->n != preg)
         aux=aux->sig;
      else
         encontrado=1;
   }
   if(encontrado){
      fread(aux,sizeof(struct preguntas),1,pf);
      gotoxy(7,4);
      cprintf("%s",aux->texto);
      gotoxy(7,6);
      cprintf("%c. %s",aux->solu1.op,aux->solu1.texto1);
      gotoxy(7,7);
      cprintf("%c. %s",aux->solu2.op,aux->solu2.texto1);
      gotoxy(7,8);
      cprintf("%c. %s",aux->solu3.op,aux->solu3.texto1);
      gotoxy(7,9);
      cprintf("%c. %s",aux->solu4.op,aux->solu4.texto1);
   }
   return(aux);
}

Mi duda es la siguiente: ¿pq aux coje el valor de cab y en la siguiente linea vale NULL?.
Gracias.
Título: Re: Duda
Publicado por: JuanK en Sábado 3 de Abril de 2004, 15:57
Donde tienes declarada la variable cab?

ayudaria mucho que pegaras el codigo identado con el tag CODE y /CODE.
Título: Re: Duda
Publicado por: ada en Martes 6 de Abril de 2004, 14:31
Gracias por intentar ayudarme pero ya lo he solucionado,habia sido un pequeño despiste. Gracias