TABLEAU de STRUCTURE

Résolu
timy94 Messages postés 50 Date d'inscription jeudi 17 novembre 2005 Statut Membre Dernière intervention 7 janvier 2009 - 17 nov. 2006 à 11:50
timy94 Messages postés 50 Date d'inscription jeudi 17 novembre 2005 Statut Membre Dernière intervention 7 janvier 2009 - 24 nov. 2006 à 11:18
Bonjour Comment en C faire un tableau de pointeur pointant sur des structures.
dans le but de trier ce tableau ex "tab.nom"  en modifiant les adresses comtenues dans le tableau de pointeur. en utilisant une fonction tri en passant le tableau a la fonction.

En C et pas en C++ s'il vous plait.

struct enreg {
   char titi [32];
   char nom [32];
   int age;
};

struct enreg   *   P_enreg;

P_enreg = (struc enreg *) calloc ( 100 * sizeof (struc enreg *));

// fonction rangement du tableau

//fonctin tri

mon broblème est pendant le tri je n'arrive pas a faire
   struct enreg * tempo;
 
   //tri
   tempo = P_enreg [i];
   P_enreg[i] =  P_enreg[j];
  P_enreg[j] = tempo;

Erreur de compile, je n'arrive pas à compiler ces trois lignes.

Timy94</gras>

3 réponses

BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
17 nov. 2006 à 12:06
Salut Timy!
Fais attention à ne pas te mélanger. D'après ton code, P_enreg est un tableau de structure, et non pas un tableau de pointeurs de structures...
struct enreg ** ppEnreg;

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
3
timy94 Messages postés 50 Date d'inscription jeudi 17 novembre 2005 Statut Membre Dernière intervention 7 janvier 2009
21 nov. 2006 à 20:10
Oui en fait j'ai ensuite déclaré mon tableau de pointeur suivant le format .
struct mystruct * TabStruct [10]

Ensuite si j'ai besoin de plus je fait un realloc sur le tableau

Ca marche encore merci

Timy94</gras>
0
timy94 Messages postés 50 Date d'inscription jeudi 17 novembre 2005 Statut Membre Dernière intervention 7 janvier 2009
24 nov. 2006 à 11:18
En tait je ne m'en sort pas
J'ai une structure Ok pour la declaration

Je veux un tableau de pointeur. Ces pointeurs doivent  pointer sur des stuctures.

Je veux reserver les zones mémoires dynamiquement. agrandir le tableau de pointeur en cours de programme et bien sur réserver la taille des  nouvelle struct en mém.

struct enreg {
   char titi [32];
   char nom [32];
   int age;
};

struct mystruct * P_enreg [1];

puis en cours de programme je fais
P_enreg = (struc enreg *) calloc ( 100 * sizeof (struc enreg *));

strcpy (P_enreg[50]->titi,"TITI");

P_enreg[50] = P_enreg[10];  // Pour croiser pourquoi, pas en vu d'un tri

Ca marche?


Timy94</gras>
0
Rejoignez-nous