![]() |
2 preguntas 1. Cuando tu abres en fichero para entrada y salida ("r+"), despues de leer del fichero, por ej, haciendo un "fscanf(FILE *f....) ", tienes que utilizar la funcion fflush, antes de escribir en el mismo fichero, por ej, haciendo un "fprintf(FILE *f...) ??? 2. Siendo T1,T2 y T3 estructuras, y una siendo reg3 una variable de tipo T3,reg 2 una variable de tipo T2 dentro de T3, y T1 un puntero a la estructura T1 que esta dentro de T2, y siendo pa un puntero a su vez, porque esta sentencia es incorrecta "reg3.reg2.reg1-->(*pa)" y esta otra no " *(reg3.reg2.reg1-->pa)" ?? Yo lo entiendo al reves, porque,a partir del 3, se accede al 2, que contiene el puntero (*reg1) a la estructura T1, y dentro de esa estructura, pues el puntero "reg1" quiere apuntar a "pa", pero, como a su vez es un puntero, desreferencia "pa" (*pa) , "...reg1-->(*pa)". Por que esta mal? Estaría bien, "reg1-->pa". Entonces no se podria desrreferenciar, o si?? La segunda forma, esta bien, pero por que? Que clase de sentencia es esa, un conversión de tipo puntero, o que?? SAludos. |
Re: 2 preguntas Digamos que el * simplemente referencia a los datos a los que apunta un puntero. En tu caso, al puntero se accede con toda esa ruta: reg3.reg2.reg1->pa. Esa es la ruta, ahora, si quieres acceder a los datos a los que apunta ese puntero, pones * simplemente. Pero a todo, porque necesitas toda la ruta para saber la dirección de memoria a la que apunta pa. Espero que sea de ayuda. |
| La zona horaria es GMT -6. Ahora son las 21:32. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.