Foros del Web » Programación para mayores de 30 ;) » Programación General »

Error puntero Pascal

Estas en el tema de Error puntero Pascal en el foro de Programación General en Foros del Web. Buenas! Llevo probando de todas las maneras y me sigue dando error en el mismo sitio. Seguro que es una tontería pero ya me estaba ...
  #1 (permalink)  
Antiguo 19/05/2009, 03:03
Avatar de klmnt  
Fecha de Ingreso: diciembre-2007
Mensajes: 34
Antigüedad: 16 años, 4 meses
Puntos: 1
Pregunta Error puntero Pascal

Buenas!

Llevo probando de todas las maneras y me sigue dando error en el mismo sitio. Seguro que es una tontería pero ya me estaba desesperando xDD

Lo que intento es quedarme (que se salga del while) cuando encuentre el nombre (info.nombre: string[20]) que tiene la variable dep1 (string[20]) o cuando llegue al final de la lista.

listaDep es un RECORD con info (tipo con nombre y descripcion) y siguiente que es un puntero que apunta al siguiente nodo. Con la parte de NIL lo recorre sin problemas pero en cuanto le meto la segunda condición el programa se va. Aquí dejo el código:

Código:
PROCEDURE imprimeDepartamentos (lista: tListaDepartamentos);

BEGIN
  CLRSCR;
  WHILE ((lista<>NIL) OR (lista^.info.nombre='dep1')) DO
    BEGIN
      WRITELN('Nombre del Departamento: ', lista^.info.nombre);
      WRITELN('Descipcion: ', lista^.info.descripcion);
      WRITELN('Costes: ', lista^.info.costes:1:1);
      WRITELN;
      WRITELN('------------------------------------------------');
      WRITELN;
      lista:=lista^.siguiente;
    END;
  READLN;
END;
Este que pongo a continuación lo hace perfectamente, muestra todos:

Código:
PROCEDURE imprimeDepartamentos (lista: tListaDepartamentos);

BEGIN
  CLRSCR;
  WHILE lista<>NIL DO
    BEGIN
      WRITELN('Nombre del Departamento: ', lista^.info.nombre);
      WRITELN('Descipcion: ', lista^.info.descripcion);
      WRITELN('Costes: ', lista^.info.costes:1:1);
      WRITELN;
      WRITELN('------------------------------------------------');
      WRITELN;
      lista:=lista^.siguiente;
    END;
  READLN;
END;
Un saludo y gracias!
  #2 (permalink)  
Antiguo 28/05/2009, 04:03
Avatar de valenti77  
Fecha de Ingreso: julio-2008
Ubicación: Berisso, Buenos Aires
Mensajes: 244
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Error puntero Pascal

Ahora lo veo, dep1 es una variable, creo que no lleva comillas
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 03:02.