Partage
  • Partager sur Facebook
  • Partager sur Twitter

error: expecter primary-expression before '[' token

????

Sujet résolu
    21 novembre 2007 à 18:14:46

    Bonjour

    Me voilà face à une erreur de compilation dont je peine à comprendre la raison. :(
    J'utilise une fonction réincursive pour mon jeu de démineur et cette erreur s'affiche lors de la compilation:

    Citation : Code::Blocs

    error: expecter primary-expression before '[' token


    Voici mon code:
    1. void afficher(int x, int y, int carte[][NB_BLOCS_L], int carte_trouve[][NB_BLOCS_L]){
    2.     if(x -1>=0 && !carte_trouve[x-1][y] && carte[x-1][y] == VIDE){
    3.         carte_trouve[x-1][y] = 1;
    4.         afficher(x-1, y, carte[][NB_BLOCS_L], carte_trouve[][NB_BLOCS_L]);
    5.     }
    6.     if(y+1<NB_BLOCS_H && !carte_trouve[x][y+1] && carte[x][y+1] == VIDE){
    7.         carte_trouve[x][y+1] = 1;
    8.         afficher(x, y+1, carte[][NB_BLOCS_L], carte_trouve[][NB_BLOCS_L]);
    9.     }
    10.     if(y-1>=0 && !carte_trouve[x][y-1] && carte[x][y-1] == VIDE){
    11.         carte_trouve[x][y-1] = 1;
    12.         afficher(x, y-1, carte[][NB_BLOCS_L], carte_trouve[][NB_BLOCS_L]);
    13.     }
    14.     if(x+1<NB_BLOCS_L && !carte_trouve[x+1][y] && carte[x+1][y] == VIDE){
    15.         carte_trouve[x+1][y] = 1;
    16.         afficher(x+1, y, carte[][NB_BLOCS_L], carte_trouve[][NB_BLOCS_L]);
    17.     }
    18. .......suite du code.......


    Quelle est la raison de cette erreur??? :colere2:

    Merci d'avance

    EDIT: les lignes d'erreurs sont les lignes où on appelle la fonction "afficher"
    • Partager sur Facebook
    • Partager sur Twitter
    Un traitement de texte léger, rapide et fiable : DadaWord (ou sur GitHub)
      21 novembre 2007 à 19:04:30

      Merci d'indiquer la ligne de l'erreur indiquée par le compilo, parce que là c'est un peu dense quand même.
      • Partager sur Facebook
      • Partager sur Twitter
      Co-auteur du cours de C++. ||| Posez vos questions sur le forum ||| Me contacter.
      Anonyme
        21 novembre 2007 à 19:07:33

        1. afficher(x-1, y, carte[][NB_BLOCS_L], carte_trouve[][NB_BLOCS_L]);

        ->
        1. afficher(x-1, y, carte, carte_trouve);

        ?
        • Partager sur Facebook
        • Partager sur Twitter
          21 novembre 2007 à 19:29:27

          C'est pas méchamment récursif cette fonction à part ça ? T'as bien prévu une porte de sortie ?
          • Partager sur Facebook
          • Partager sur Twitter
          Co-auteur du cours de C++. ||| Posez vos questions sur le forum ||| Me contacter.

          error: expecter primary-expression before '[' token

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown