Bonjour,

voilà j'ai une fonction de recherche qui doit recuperer l'adresse dans le tableau de pointeur une adresse qui pointera sur la structure donnée et la comparer avec le gets.

probleme: je n'arrive pas à m'en sortir au niveau du code.
Au niveau du declaration du tableau.
aussi lorsque je veux mettre la donnée lu par zln dans pnom
est ce qu'il me manque un malloc aussi?

Pouvez vous m'aidez svp?


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
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
#include "stdafx.h"
#include "stdlib.h"
#include "string.h"
#include "stdio.h"
 
 
struct pers						//declaration de la structure repertoire
{
	char * pnom; 				//nom dans le repertoire
	char tel;    				// n° de tel
	int dpt;     				// n° departement
	int indv;    				//ind de la ville par [j]
};
 
void main()
{ 
	rep *Tp[50];
	char zln[11];				// zone de lecture pour le nom
	int n=0;					// nombre de nom
	pers rep;
 
 
	int RECHNOM(char [],pers *,int);
 
 
	int RECHNOM(char [] zln,pers *ps,int n)							//Fonction RECHNOM
		{
			int c;
			int i;
			c=strcmp(zln,ps->pnom);
			for (i=0;i<n && c!=0;i+=1);
					if (i<n)
					{//trouvé
						printf ("NOM DEJA ENREGISTRE\n")
						return (i);
					}
					else
					{
					for (i=n-1;i>=0&&c)<0;i=i-1)
							{
								Trep[i+1]=Trep[i]; //a ce niveau je ne sais pas comment faire
							}
						i=i+1;
						Trep[i].pnom=strdup(zln);
					return (-1);
					}
		}