BraulioVM / pl

0 stars 0 forks source link

`buscar_en_tabla` debería devolver `t_posicion` #17

Closed namasme closed 6 years ago

namasme commented 6 years ago

Entrada buscar_en_tabla(char* nombre) es un poco engorroso porque, o bien hace una copia innecesaria de la Entrada que busca o bien, en caso de no encontrarla, debe devolver una Entrada fake. La forma de comprobar si una entrada es válida o no es comprobar si su nombre es igual que la cadena vacía "\0", que se guarda en una variable global nombre_no_valido. Además hay un error al copiar esta cadena como nombre de la Entrada no_valido, ya que la signatura de strcpy es strcpy(char *dest, const char *source) y la estamos usando al revés.

Por todo esto propongo devolver -1 en caso de no encontrar la Entrada buscada, un comportamiento conocido y consensuado en muchos entornos, o la posición real que ocupa en la tabla si se encuentra.

namasme commented 6 years ago

buscar_en_tabla ya no existe, en su lugar TS_encontrar_entrada funciona de forma similar pero devolviendo la posición en lugar de la entrada.