ARGENTOP2P

Soporte, Ayuda y Consultas => Programación en General => Mensaje publicado por: andres88_ en Mayo 03, 2009, 15:25:30

Título: PUntero a estructura en c
Publicado por: andres88_ en Mayo 03, 2009, 15:25:30
Hola gente haber si me dan una mano

tengo la siguiente estructura:

struct t_fecha{ int dia; int mes; int año;};

struct t_fecha fec;

y quiero hacer un puntero a esa estructura
ta bien asi:

struct t_fecha fec= struct t_fecha *p;

y desp cuando uso la estructura se hace asi:

*p.dia=15;

eso esta bien o la toy pifiando?
punteros no entiedo mucho  :P
para mi es mas facil no usarlos.
Título: Re: PUntero a estructura en c
Publicado por: focojoaco en Mayo 04, 2009, 12:08:16
lo que esta bueno hacer es, definir la structura en el .c
y en el .h definir un typedef
typedef struct s_queue * queue; (por ejemplo)

entonces en el .c declaras cosas de tipo queue
ejemplo:

queue q;

y para acceder a los campos del struct
usas ->
q->valor (con el punto no)
q->valor=100; (por ejemplo)

se entendio? sino lo hago mas detallado
:D
Título: Re: PUntero a estructura en c
Publicado por: mati_motorloco en Mayo 04, 2009, 14:36:28
si queres un buen puntero llamalo a Andy Chango :jaja:
Título: Re: PUntero a estructura en c
Publicado por: focojoaco en Mayo 04, 2009, 17:08:48
Cita de: mati_motorloco en Mayo 04, 2009, 14:36:28
si queres un buen puntero llamalo a Andy Chango :jaja:
uuuu como desvirtuaste  :guns:
Título: Re: PUntero a estructura en c
Publicado por: JORGE_GNR en Julio 02, 2009, 12:53:11
Cita de: andres88_ en Mayo 03, 2009, 15:25:30
Hola gente haber si me dan una mano

tengo la siguiente estructura:

struct t_fecha{ int dia; int mes; int año;};

struct t_fecha fec;

y quiero hacer un puntero a esa estructura
ta bien asi:

struct t_fecha fec= struct t_fecha *p;

y desp cuando uso la estructura se hace asi:

*p.dia=15;

eso esta bien o la toy pifiando?
punteros no entiedo mucho  :P
para mi es mas facil no usarlos.

creo q le esta pifiando en el puntero cuando queres usar la estructura la usas asi "p.dia=15" sin el "*" porq el puntero es cuando lo usas en un funcion

si mal no recuerdo es asi  ::)

en 2 semanas rindo el 2ª parcial de programacion  :twisted:
Título: Re: PUntero a estructura en c
Publicado por: El_Pablo en Julio 03, 2009, 21:03:23
En este caso conviene definir la estructura asi:

typedef struct fecha_str {
    int dia;
    int mes;
    int anio;
} *fecha;

Y después declaras una variable de tipo "fecha" (sin asterisco, ya que ya esta declarada asi en el typedef)

Es decir, como te dijo focojoaco :P