Foros del Web » Programación para mayores de 30 ;) » C/C++ »

error asignando punteros

Estas en el tema de error asignando punteros en el foro de C/C++ en Foros del Web. void insertarN(FILE *f,listaT *t) { listaT *nuevo,*aux; char palabra[10],info[10]; if((f=fopen("terminales.txt","rt"))==NULL) printf("Error de apertura del fichero"); else{ printf("Reservando memoria"); nuevo=new(listaT); if (nuevo==NULL) printf("Error de memoria"); else{clrscr(); ...
  #1 (permalink)  
Antiguo 23/11/2007, 13:15
 
Fecha de Ingreso: noviembre-2006
Mensajes: 45
Antigüedad: 17 años, 6 meses
Puntos: 0
error asignando punteros

void insertarN(FILE *f,listaT *t)
{
listaT *nuevo,*aux;
char palabra[10],info[10];
if((f=fopen("terminales.txt","rt"))==NULL)
printf("Error de apertura del fichero");
else{
printf("Reservando memoria");
nuevo=new(listaT);
if (nuevo==NULL)
printf("Error de memoria");
else{clrscr();
while(!feof(f))
{
if(*t==NULL)
{
strcpy(fgets(palabra,10,f),(*nuevo)->info);
t=nuevo;
}
else{*aux=*t; <- ALGUIEN SABE XQ M DA ERROR AQUI
while((*aux)->sig!=NULL)
*aux=(*aux)->sig;
(*aux)->sig=*nuevo;
}
fgets(palabra,10,f);
}
(*nuevo)->sig=NULL;
}
}
fclose(f);
}
  #2 (permalink)  
Antiguo 23/11/2007, 14:30
Avatar de _Lucifer_  
Fecha de Ingreso: junio-2006
Mensajes: 1.662
Antigüedad: 17 años, 11 meses
Puntos: 28
Re: error asignando punteros

No vendría nada mal que describieras el error, postearas la salida del compilador o el error que te arroja en tiempo de ejecución, que colocaras el código en las etiquetas CODE.

Ya que esperas que te ayudemos no vendría mal un poco de cortesía o al menos consideración para quien valla a leer tu código.

Saludos
__________________
Si crees que no tiene sentido, etonces probablemente lo tenga... :arriba:
  #3 (permalink)  
Antiguo 27/11/2007, 18:05
Avatar de Solenbum  
Fecha de Ingreso: noviembre-2007
Mensajes: 45
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: error asignando punteros

eso es verdad.

ademas, si aux y t son 2 punteros que apuntan a algo del mismo para igualar a lo que apuntan uno con otro es sin los asteriscos:
aux = t;
(entiende el porque *aux = *t no puede ser
aux es un puntero, y para referirnos a lo que apunta "aux" es la propia variable que le asignamos y no con el *, eso es a la hora de declararlo.
aux->sig;
aux->campos;
...)

mas cosas, porque pones * cada vez que usas un puntero
puntero->sig = NULL;
no te funciona asi?
  #4 (permalink)  
Antiguo 27/11/2007, 18:07
Avatar de Solenbum  
Fecha de Ingreso: noviembre-2007
Mensajes: 45
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: error asignando punteros

ay madre del hamor hermooso

Última edición por Solenbum; 27/11/2007 a las 18:08 Razón: error asignando mensaje
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:02.