Bonjour à tous,
J'ai à concevoir une fonction permettant de créer une table en C. Selon ce que j'en sais, une table par définition est représentée par un tableau de structures en C. Cela ne me pose pas de problème à part un point: Je dois implanter cette fonction de telle sorte que l'utilisateur puisse, avec son appel, spécifier le type ainsi que le nom de chaque champs de la structure. Un fois ces données déterminées, elles doivent rester en place lors de la création des enregistrements de la table. Par exemple:
Bien sûr, capacite est un entier invariant indiquant le nombre d'élément que la table peut contenir... Type1 et nomType1 représententle type et le nom du premier champs de ma structure, idem pour type2, nomType2. Ce n'est pas faute d'avoir cherché, mais je n'ai trouvé à nulle part le moyen de modifier les types et noms des champs d'une structure à l'aide des paramètres de la fonction qui la contient. Ex:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 creerTable(int capacite, type1, nomType1, type2, nomType2)
Je sais, c'est complètement incohérent comme code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 void creerTable(int long, type1, nomChamps1) { typedef struct { type1 nomChamps1; } Enregistrement; Enregistrement* uneTable[long]; //Création tableau }C'est juste pour vous montrer comment je voudrais utiliser la paramètre de la fonction pour modifier le type de la structure.
Bien qu'ayant une certaine expérience en C++, je suis un complet débutant en C. Peut-être y-a-t-il un moyen plus facile de faire ce je veux faire... SVP amis gourous du C, votre avis et votre aide seraient grandement appréciés
PS J'ai fait bien des recherches infructueuses avant de m'adresser à vous!
Partager