C/Visual C - Error en funcion

 
Vista:

Error en funcion

Publicado por C (7 intervenciones) el 07/10/2007 15:21:51
Hola, que esta mal en esta funcion porque despues del else no entra, y por consiguiente no sigue ninguna instruccion (es una funcion para eliminar nodos de una lista enlazada). Gracias!

nodo2 *eliminar(nodo2 *registro2,nodo3 *registro3){
nodo2 *temp;
nodo2 *temp2;
if(registro2->num%registro3->num==0){
temp=registro2;
registro2=registro2->sig;
free(temp);
}
else
{
temp=registro2->sig;
temp2=registro2->sig;
while(temp2!=NULL&®istro3->sig!=NULL&®istro2->num%registro3->num!=0){
temp=temp2;
temp2=temp2->sig;
}
if(temp2!=NULL){
temp->sig=temp2->sig;
free(temp2);
}
}
return registro2;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Error en funcion

Publicado por klaytor (2 intervenciones) el 07/10/2007 21:14:58
Hola.

En las sentencias if y while yo escribiría:

if ((registro2->num % registro3->num) == 0) {

while ((temp2 != NULL) && (registro3->sig != NULL) && ((registro2->num % registro3->num) != 0)) {

Ese puede ser el problema, los paréntesis.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar