Bonjour,

Je coince sur une structure qui doit paraitre simple pour vous, mais je ne vois pas l'erreur :

J'ai deux typedef inclus dans un autre, puis je déclare une variable structure pointée.

Ma question :
Comment atteindre un membre d'une des sous-structure ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
typedef struct _t1 {
	int	tmp1;
} _STRUCT1;
 
typedef struct _t2 {
	int	tmp2;
} _STRUCT2;
 
 
typedef struct _complex {
	_STRUCT1	t1_data;
	_STRUCT2	t2_data;
} _COMPLEX;
 
 
void * 	pcomplex;
 
*((_COMPLEX *) pcomplex)->t1_data->tmp1;	/* Marche pas !!! */
*((_COMPLEX *) pcomplex)->t1_data.tmp1;	/* Marche pas !!! */
*((_COMPLEX *) pcomplex).t1_data->tmp1;	/* Marche pas !!! */
*((_COMPLEX *) pcomplex).t1_data.tmp1;	/* Marche pas !!! */
J'ai loupé quoi ?

Une init ?
Le référencement ?
Je dois déréférencer ?

Merci pour votre aide.