Sous-sections

3.3 Constructeurs homogènes

Des objets plus complexes peuvent être formés à l'aide des constructeurs homogènes :

Symboles associés aux constructeurs homogènes



Symbole Objet construit
* pointeur
[] vecteur
() fonction


3.3.1 Exemples

 
   char     lignes[100];
   int     *p_entier;
   double   fonc();

Les déclarations précédentes permettent de définir respectivement :

Ces constructeurs peuvent se combiner entre eux, permettant ainsi de définir des objets encore plus complexes.

Exemple

 
   char    *chaines[100];
   int      mat[100][40];
   char   **argv;

Le constructeur homogène * est moins prioritaire que les deux autres. De ce fait, les déclarations précédentes permettent de définir respectivement :

L'utilisation de parenthèses permet de modifier la priorité et donc l'ordre d'évaluation.

Exemple

 
   int    (*tab)[10];
   char   (*f)();
   char   *(*g)();
   float  *(*tabf[20])();

Cet exemple permet de définir respectivement :


Pr. Marc BUFFAT
buffat@ufrmeca.univ-lyon1.fr
2004-12-01