Probleme de compilation (pointeur et fonction)
Bonjour,
Je tente de compiler un code sans succès sous visual studio 2005 une fonction de recherche :
la fonction doit retourner l'adresse à laquelle l'element cherché doit se trouver s'il existe (les elements sont classés par ordre alphabétique)
Voici le code (je n'ai laissé que le code
Code:
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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
| #include "stdafx.h"
#include "stdlib.h"
#include "string.h"
#include "stdio.h"
//Structures
struct GAGNE
{
char *nom;
int pts;
GAGNE *psuiv;
};
//Programme principal
void main(){
GAGNE *pdeb = NULL;
GAGNE ** super;
char ZL[31];
int connu;
char replu;
//prototype de la fonction
GAGNE **CHERCHE(GAGNE **,char [], int*);
printf("NOM?");
gets(ZL);
while(*ZL !='*')
{
printf("B ou F");
replu = getchar();
super = CHERCHE(&pdeb,ZL,&connu);
if(connu)
{
printf("connu");
}else
{
printf("inconnu");
}
printf("NOM?");
gets(ZL);
}
}
//Déclaration de la fonction
GAGNE ** CHERCHE(GAGNE **sp,char ZL[], int * rep)
{
int cc=1;
for(; *sp!=NULL&&(cc=strcmp(ZL , *sp->nom))>0; sp = &(*sp->psuiv));
if(cc==0)
*rep=1;
else
*rep=0;
return(sp);
} |
Les erreurs sont les suivantes (liées au pointeur) :
Citation:
z:\documents\cours\algo_c\test.cpp(57) : error C2227: la partie gauche de '->nom' doit pointer vers un type class/struct/union/générique
le type est 'GAGNE **'
z:\documents\cours\algo_c\test.cpp(57) : error C2227: la partie gauche de '->psuiv' doit pointer vers un type class/struct/union/générique
le type est 'GAGNE **'
Si quelqu'un a une piste ...
Merci encore
Encore Merci pour toutes les reponses
Et grand merci à Diogène pour l'explication finale !