C : expected identifier or '(' before 'int'

hitgus69 -  
 hitgus69 -
Bonjour,
J'essaie d'apprendre a programmer depuis quelques semaines en suivant des cours sur un site et je rencontre depuis hier une erreur que j n'arrive pas a resoudre, voici le code :

#include <stdio.h>
#include <stdlib.h>

void decoupeMinutes(int* pointeurHeures, int* pointeurMinutes);

int main(int argc, char *argv[])
{
int heures = 0, int minutes = 90;

decoupeMinutes(&heures, &minutes);
printf("%d heures et %d minutes", heures, minutes);

return 0;

}

void decoupeMinutes(int* pointeurHeures, int* pointeurMinutes)

{
*pointeurHeures = *pointeurMinutes / 60;
*pointeurMinutes = *pointeurMinutes % 60;
}

Et voici les erreurs :

main.c: In function 'main':
main.c:8: error: expected identifier or '(' before 'int'
main.c:10: error: 'minutes' undeclared (first use in this function)
main.c:10: error: (Each undeclared identifier is reported only once
main.c:10: error: for each function it appears in.)

2 réponses

  1. hitgus69
     
    Merci beaucoup ! Je tiendrai compte de tes conseils la prochaine fois que je demanderai de l'aide :)
    2
    1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      A la prochaine fois sur CCM :-))).
      0
    2. hitgus69
       
      Désolé de te déranger mais j'ai encore un probleme, voici mon code :


      1 #include <stdio.h>
      2 #include <stdlib.h>

      4 void conversion(double *pointeurEuros, double *pointeurFrancs);

      6 int main()
      7 {
      8 double Francs = 90.6, Euros = 0;
      9 conversion(&Francs, &Euros);

      11 printf("%p francs = %p euros", &Francs, &Euros);

      13 return 0;

      15 }

      17 void conversion(double *pointeurEuros, double *pointeurFrancs)

      19 {
      20 *pointeurFrancs = *pointeurEuros * 6.55;
      21 }


      Lorsque je le compile je n'ai aucun probleme mais lorsque je le lance il m'affiche l'adresse de Francs et l'adresse de Euros; j'ai essayé d'enlever les & dans conversion(&Francs, &Euros) mais ce n'est pas ca.
      0
    3. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Normal, tu mets : printf("%p..."). %p c'est pour afficher les pointeurs.
      Ce sont des doubles, donc il faut mettre : printf("%f francs = %f euros",Francs, Euros);
      0
    4. hitgus69
       
      Merci beaucoup encore une fois :)
      0
    5. hitgus69
       
      Désolé de te déranger encore (encore) une fois, est ce que l'erreur : error: expected identifier or '(' before '{' token a une signification précise ? Car je la rencontre souvent et je n'arrive pas a la corriger donc ...
      0
  2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Bonjour,
    Pour la prochaine fois, lorsque tu postes un code, ce serait bien de nous faciliter la tâche. Par exemple en mettant le code entre deux balises "code" (bouton à droite du bouton "souligné") pour garder l'indentation et aussi en mettant quelles sont les lignes 8 et 10 de ton code...

    Sinon l'erreur est simple : int minutes, int heures=90; est faux.
    Soit tu mets :
    int minutes;
    int heures=90;
    

    Soit :
    int minutes, heures=90;
    

    Cdlt,
    0