Título: Error al crear punteros a estructuras. Publicado por: NikNitro! en 5 Marzo 2015, 15:53 pm Buenas. Pretendo recordar más o menos cómo se trabaja en C, pero llevo tiempo sin tocarlo.
He hecho una estructura de un LinkedArray de una vieja práctica que tenía por ahí, pero la función crear creo que la tengo mal. Ésta función tendría que crear el LinkedArray con todos los elementos con valor 0, tamaño tam (todos el mismo) y puntero al siguiente. Pues si creo uno y justo después lo muestro me pone tal que así: {0, 1966492712, 1966492712, 1966492712, 1966492712} Tiene pinta de que el primero me lo hace bien, pero cuando entra al for usa punteros a la misma zona de memoria, pero esa parte la estoy haciendo sin punteros, por lo que no entiendo qué ocurre. Espero me ayudeis. Os paso el .h: Código
Y el .c Código
Gracias por adelantado gente. Saludos ;) Título: Re: Error al crear punteros a estructuras. Publicado por: eferion en 5 Marzo 2015, 16:55 pm Código
Debería ser Código Si tienes esa línea comentada no se va a reservar memoria para los elementos que siguen al primero y eso solo puede resultar desastroso para tu programa. Por otro lado, "Primero" no parece un nombre demasiado apropiado para un alias de "puntero a estructura". Código complicado sin necesidad: Código
"Primero", como hemos dicho, es un puntero. Dado que no es necesario que "sig" sea un puntero doble, se puede dejar únicamente como "Primero sig". Lo de "Primero" lo voy a respestar, aunque insisto que no es un nombre del que debas estar orgulloso :) Código
Otro puntero doble "ant" innecesario. Si le quitamos ese doble puntero el código queda más legible: Código
Título: Re: Error al crear punteros a estructuras. Publicado por: NikNitro! en 5 Marzo 2015, 17:11 pm Muchas gracias eferion :)
Ya va todo perfecto :) Lo de "Primero" era el nombre que venía en la práctica xD Lo de los punteros a punteros si ha sido cosa mia que me lié. Saludos y gracias de nuevo;) |