La limite dans un tableau d'union

Fermé
houda LR Messages postés 7 Date d'inscription samedi 4 janvier 2014 Statut Membre Dernière intervention 26 février 2014 - 14 janv. 2014 à 10:06
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 - 14 janv. 2014 à 10:52
Bonjour,
j'ai déclarer un tableau dont chaque élément est une union:
struct élément
{
char nom;
int type;
int valeur;
};
je veux faire une boucle,mais je ne sais pas ou je vais m'arrêter ,je crois que la solution se fait avec le caractère '\0',mais je n'arrive pas à la réaliser.
voulez vous me donner un coup de main???



1 réponse

[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
14 janv. 2014 à 10:52
Bonjour houda LR,

Ce que tu montres est une struct, pas une union.

Si tu crées dans ton code un tableau de struct, tu dois savoir quelle est la taille maximale du tableau créé.

Si tu veux utiliser une partie de la capacité de stockage du tableau et que tu veux savoir où s'arrête ton tableau :

- tu peux éventuellement stocker cette information dans une variable séparée ayant la même portée que ton tableau. Cela te permet de savoir à tout instant la taille de ta structure de données, sans avoir à la parcourir.

- ou tu peux décider, par convention, qu'une certaine valeur dans ta struct indiquera une struct "vide", constituant un marqueur indiquant la fin de ton tableau.Tu es libre de décider de n'importe quelle convention, pourvu que tu sois sûre de ne pas la confondre avec une struct comportant des données valides. En pratique, cela veux dire que tu dois initialiser ton tableau avec ces valeurs "vides" avant toute utilisation.

Note que tu ne pourras donner à ta struct une étiquette avec des accents (comme "struct élément") et que dans ta struct, le membre "char nom;" ne pourra stocker qu'un seul caractère (ce qui est insuffisant pour stocker un "nom").


Dal
0