Bonjour,
Je ne comprends pas ce qui est faux dans ma grammaire(l'important n'est pas la syntaxe dans le .pas qui n'est pas encore correcte)?
Bonjour,
Je ne comprends pas ce qui est faux dans ma grammaire(l'important n'est pas la syntaxe dans le .pas qui n'est pas encore correcte)?
Hum,
- ton tar n'est pas gzippé
- ton code n'est pas très lisible
- et surtout t'en fais quoi des BLANCS (tu retournes un token mais ne le manges pas dans les yacc (PROGRAMM...)
1)Avant de poster, merci de lire les règles. 2)Utiliser [code] [/code] pour quoter le code ! 3)Conseils pour le forum C [a lire en entier!]
hi,
1)Pas gzippé: et c'est grave?
2) Pas lisible: je suis preneur de conseils: tu veux dire qu'il faudrait que je rajoute quoi?
3)Et bien les blancs doivent être éliminés, donc je les consomme par la reconnaissance elle-même, donc rien à mettre de + ds la partie D, des actions = entre {}
Non, mais s'il s'appelle .tar.gz on s'attend généralement a avoir un truc zippe, i.e. tar xvzf et non tar xvf
C'est plus au niveau de l'indentation; dans le .l il y a du code a differents niveau (=> dur de voir au premier coup d'oeil ce qui est du code C pur et ce qui est du lex); et dans le .y, pareil, indentation bizarre, le extern int dans la definition du main...
Je n'ai pas compris (partie D?). Mais en gros, lex te sors le token BLANCS et dans ta grammaire yacc, pour la règle Prog tu dis qu'après le token PROGRAMM, tu as le token IDENTIFF or lex te sors le token BLANCS car il y a bien un blanc entre program et pase et donc le parseur s'arrête. Pour debugger tu peux ajouter des actions entre les tokens pour voir jusqu'où il va (c'est ce que j'ai fait pour comprendre qu'il manquait BLANCS entre PROGRAMM et IDENTIFF).
1)Avant de poster, merci de lire les règles. 2)Utiliser [code] [/code] pour quoter le code ! 3)Conseils pour le forum C [a lire en entier!]
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager