Hola a todos!
Se me ha presentado un problema muy raro, la verdad. Trabajando con Delphi 6.
Estoy haciendo un procedimiento para insertar de manera ordenada elementos en una lista, trabajando con punteros. El problema es que hay algunas líneas ¡¡que no se ejecutan!!, incluso puede verse al ejecutar con el debug 'paso a paso'. En concreto son
líneas que hacen referencia a la segunda variable de tipo puntero que hay definida en el procedimiento.
Estos son los tipos que se manejan
Código Delphi
[-]
type
TC = ^itemC;
itemC = record
Valor : integer;
Sgte : TC;
end;
Y este es el mencionado procedimiento:
Código Delphi
[-]
procedure TForm1.insertarOrdenado(Vector:TC;var Lista:TC);
var
Aux : TC; AuxAnt : TC; Pivote : integer;
begin
Pivote := Vector.Valor;
if (Lista = nil) then
begin
Lista := Vector;
end
else
begin
New(Aux);
New(AuxAnt);
Aux := Lista;
AuxAnt := nil; while ((Aux <> nil) and (Pivote < Aux.Valor)) do
begin
AuxAnt := Aux; Aux := Aux.Sgte;
end;
Vector.Sgte := Aux;
AuxAnt := Vector; end;
end;
¿Se puede manejar más de un tipo puntero en un procedimiento?
Supongo que sí, pero como esto es tan raro....
Bueno, a ver si alguien puede echarme un cable.
Muchas gracias y un saludo.