C/Visual C - accion con punteros a estructuras

 
Vista:

accion con punteros a estructuras

Publicado por Wro (3 intervenciones) el 21/05/2003 20:29:10
Hola a tod@s,

Tengo un pequeño problema y es que quiero pasar parametros a una acción y estos parametros son de estructuras, ej:

tengo esta acción:

actualitzar( c.client[index_client]);

como le digo que sea un apuntador?

he probado de todas las maneras posibles:

actualitzaClient( (*c).client[index_client]);
actualitzaClient( &(*c).client[index_client]);
y más.... he inventado lo imposible... pero nada de nada

muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:accion con punteros a estructuras

Publicado por abi (54 intervenciones) el 22/05/2003 02:30:22
Hola! no entiendo bien tu pregunta, cual dato es el apuntador, si pudieras poner la estructura mejor:

este es un ejemplo:

struct nodo_lista
{
int info;
struct nodo_lista *sig;
};

typedef struct nodo_lista *nodo;

nodo insinicio (nodo, int);

este es otro, yo creo que este responde a tu duda:

struct stack
{
char pila[MAX2];
int top;
}s1;

// esta es la declaracion
void push (stack *, char);
// esta es la funcion PUSH
void push (stack *s, char x)
{
if (s->top<MAX)
s->pila[++s->top]=x;
else
printf ("La pila esta llena");
}

en el main la mandas llamar asi:
void main ()
{
push(&s1, c);
}

espero que esa haya sido tu duda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:accion con punteros a estructuras

Publicado por JoseGR (41 intervenciones) el 22/05/2003 15:11:43
prueba con:

actualitzaClient( &(c.client[index_client]));

eso si la funcion actulitzaClient debe tener la firma:

actualitzaClient(client *data)

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:accion con punteros a estructuras

Publicado por Wro (3 intervenciones) el 22/05/2003 16:02:36
nada :( me sale este error:
request for member `client\' in something not a structure or union

tengo esto:

actualitzaClient( &(c.client[index_client]), entrada, premi );

la acción:

void actualitzaClient(tclients *c, tentrada entrada, bool *premi)

y de estructura esto:

typedef struct
{
int dni;
float litres;
int punts;
}tclient;

typedef struct
{
tclient client[MAX_CLIENTS];
int nclients;
}tclients;

Nuevamente, muchas gracias, estoy en proceso de aprendizaje y me esta costando esto de los punteros.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:accion con punteros a estructuras

Publicado por abi (54 intervenciones) el 22/05/2003 23:34:15
Hola! Me podrías mandar el programa completo a mi correo y explicarme que es exactamente lo que quieres porque no entiendo que es lo que quieres hacer con esa función
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:accion con punteros a estructuras

Publicado por Wro (3 intervenciones) el 23/05/2003 08:53:39
ya esta solucionado

el problema es que no sabia que cuando una estructura apuntaba a otra estructura se tenia que poner de esta manera:

actualitzaClient( &c->client[index_client], entrada, premi );

muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar