Buenas! Resulta que...ME TIENEN HARTO LOS PUNTEROS xDDD hacen lo que le da la gana :S
Si tengo esta estructura
Type
puntero = datosadyacencia;
datosadyacencia = record
nodo : integer;
peso : real;
enlace : puntero;
end;
adyacencia = array[1..maxvertices] of puntero;
Var
lista : adyacencia;
i : integer;
p : puntero;
Se supone que yo puedo hacer lista := p no? ya que ambos apuntan a lo mismo. Uno es un array de puntero y el otro un puntero independiente pero apuntan a lo mismo.
Pos no me da runtime el programa :S Sin embargo si en vez de eso lo que hago es copiar el contenido (que se supone que es lo mismo) asi new(lista); lista^ := p; si me deja.
Pero de este modo no lo puedo hacer ya que es para hacer la lista de adyacencia de un grafo, y desde que un elemento tenga más de 2 adyacentes se me sobreescribe el último por el new. Y la profesora no me deja hacerlo utilizando la matriz de adyacencia, tiene que ser con esa estructura (array de punteros, en los que en cada casilla se almacenan los adyacentes al nº de la casilla).
Alguien tiene idea de porque da el runtime en lista := p ??
Ese trozo del codigo seria en cuestion este