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 Entradafake. 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.
Entrada buscar_en_tabla(char* nombre)
es un poco engorroso porque, o bien hace una copia innecesaria de laEntrada
que busca o bien, en caso de no encontrarla, debe devolver unaEntrada
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 globalnombre_no_valido
. Además hay un error al copiar esta cadena como nombre de laEntrada no_valido
, ya que la signatura destrcpy
esstrcpy(char *dest, const char *source)
y la estamos usando al revés.Por todo esto propongo devolver
-1
en caso de no encontrar laEntrada
buscada, un comportamiento conocido y consensuado en muchos entornos, o la posición real que ocupa en la tabla si se encuentra.