[borland c] fonction & structure

Résolu
salut tout le monde
s'il vous plait j'ai besoin d'aide a propos des fonction en c
je voudrais faire entrer un tableaus structuré comme parametre dans la fonction mais ca ne marche pas voila la structure

struct geo
{ char ville[15];
char pays[15];
char continent[15];
long nhab;
};
struct geo t[200] ;

et la fonction

void afficher_villes(geo t)
{int i;
for(i=0;i<nb_v;i++)
if((strcmp(t[i].pays,"maroc"))&& (t[i].nhab>100000))
printf("- %s",t[i].ville);
}

merci d'avance
k.cheker@hotmail.fr
Configuration: Windows XP
Internet Explorer 7.0

1 réponse

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    Je ne saurais te dire autre chose que de relire un cours car il y a pas mal de grosses fautes :/

    void afficher_villes(geo t) : oublie du mot struct
    struct geo t[200] : Variables globales à éviter
    for(i=0;i<nb_v;i++) : non déclaration et définition de la variable
    t[i].pays , etc ... : t est une strucuture et je pense qu'il n'était pas fait exprès
    qu'elle masque ta variable global étant un tableau de structure.
    if((strcmp(t[i].pays,"maroc"))&& (t[i].nhab>100000)) : je pense oublie d'une négation.

    De plus, si je ne me trompe pas, en postant ce code tel quel, ceci montre que tu n'as pas su interpréter les messages de ton compilateur, ce qui est très important. Je pense que l'on fait tous des erreurs (modérément ou non !) mais les compilateurs sont suffisament poussés pour nous signaler même des warnings, qui faut tenir compte ! (et les erreurs, cela va de soit).

    Au boulot :p !
    1. c vrai que j oublie quelque mot comme struct et j'ai corriger ces erreurs ,mais tu n'a pas repondait a ma question comment j'utilise une structure dans une fonction (syntaxe) c ca mon probleme .
    2. Par exemple :
      void afficher_villes(struct geo t[])
    3. @ekraest ce que dans le cas du tableau on n'utilise pas les pointeur (passage par adresse)
    4. @ekraSalut,

      Les deux sont possibles, struct geo t[] ou struct geo *t je crois ^^