Retroceder   Foros del Web > Temas generales de computación > Programación > C/C++

Respuesta
 
Herramientas Desplegado
Antiguo 09-feb-2007, 18:01   #1 (permalink)
N0vat0 ha deshabilitado el karma
 
Fecha de Ingreso: julio-2006
Mensajes: 99
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.
N0vat0 está desconectado   Responder Citando
Antiguo 23-mar-2007, 04:37   #2 (permalink)
Code está en el buen camino
 
Fecha de Ingreso: junio-2003
Ubicación: Bilbao
Mensajes: 90
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.
__________________
Code
Code está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 02:56.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93