Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2190 connectés 

  FORUM HardWare.fr
  Programmation
  C

  besoin d'aide yacc/bison

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

besoin d'aide yacc/bison

n°680941
floxibus76
Posté le 23-03-2004 à 10:24:12  profilanswer
 

Voila g une petite calculette a programmer via un analyseur lexical que g crée et le gros probleme que g est que je n'arrive pas a differencier les types a utiliser. bah oui ma calculette doit savoir gerer les réels, entiers complexe rationnel  mai je ne peut pas additionner un reel avec un entier par exemple.  
 
Voila mon soucis donc si quelqu'un pouvait m'aider en me  donnant un site m'expliquant bien tout ca  
 
merci  
 
 
 
 
 

mood
Publicité
Posté le 23-03-2004 à 10:24:12  profilanswer
 

n°680988
Taz
bisounours-codeur
Posté le 23-03-2004 à 10:39:22  profilanswer
 

bah dans ton flex, y a une valeur a retournée, justement pour dire ce que tu as trouvé comme type

n°681008
floxibus76
Posté le 23-03-2004 à 10:51:11  profilanswer
 

oui c le token mais kan je veu faire une addition fo ke je verifie c type et je ne c pas ou les stokés et aussi kan g un truc du style x+3 komment faire comprendre a ma grammaire ke 3 est un entier par exemple.

n°681018
Taz
bisounours-codeur
Posté le 23-03-2004 à 10:57:30  profilanswer
 

ben tu flex te dis le type du token et te fais déjà la convertion char* -> int si tu tombe sur ton 3

n°681024
floxibus76
Posté le 23-03-2004 à 11:02:59  profilanswer
 

héhé ok mais ca marche pas pour 3.2 par exemple. mais mon prob se situe autour de yylval et de la grammaire!
tu connais pas des adresses de sites pour m'orienter.
sinon merci pour ton aide!!!

n°681025
Taz
bisounours-codeur
Posté le 23-03-2004 à 11:04:32  profilanswer
 

si ça marche pas pour 3.2 c'est parce quie flex te détecte pas  3.2 comme un flottant ...

n°681043
floxibus76
Posté le 23-03-2004 à 11:19:02  profilanswer
 

ahh si sur!!!! les tests sont faits et il le detecte bien!!! mais pense avoir trouvé koment gerer tout ca avec une structure union dans le .y qui a une structure Tval contenant le type de l'objet et tout les champs de chacun des types (c pas si je m'exprime bien lol )

n°681076
Taz
bisounours-codeur
Posté le 23-03-2004 à 11:35:41  profilanswer
 

voilà : une enum + une union

n°681080
pascal_
Posté le 23-03-2004 à 11:36:46  profilanswer
 

floxibus76 a écrit :

ahh si sur!!!! les tests sont faits et il le detecte bien!!! mais pense avoir trouvé koment gerer tout ca avec une structure union dans le .y qui a une structure Tval contenant le type de l'objet et tout les champs de chacun des types (c pas si je m'exprime bien lol )


 
C'est ce que j'allais te proposer.
 
En fait, tu fais un truc du genre :

Code :
  1. //Dans un .h :
  2. struct val{
  3.   enum {ENTIER,REEL} type;
  4.   union{
  5.     int valEntier;
  6.     double valReel;
  7.   }
  8. }
  9. // Dans le .l
  10. %union{
  11.   struct val valeur;
  12.   char *variable;
  13.   .....
  14. }
  15. // Ensuite tu as des trucs genre
  16. [0-9]+ { yylval.val.type=ENTIER; yylval.val.valEntier=atoi(yytext); return VALEUR;}
  17. // Et dans le .y
  18. expr : expr PLUS expr {
  19.     if( $1.type != $3.type ){
  20.         printf("Erreur type blablabla)
  21.     }else{
  22.        $$.type = $1.type;
  23.        switch( $1.type ){
  24.          case ENTIER : $$.valEntier = $1.valEntier + $3.valEntier; break;
  25.          case REEL : $$.valReel = $1.valReel + $3.valReel; break;
  26.          ...
  27.        }
  28.     }
  29. }


 
Le seul hic, c'est que c'est bien lourd...
 

n°681081
floxibus76
Posté le 23-03-2004 à 11:37:37  profilanswer
 

ben snif je pleure kan meme!! :-)

mood
Publicité
Posté le 23-03-2004 à 11:37:37  profilanswer
 

n°681084
floxibus76
Posté le 23-03-2004 à 11:38:36  profilanswer
 

a pardon le code ct pas affiché merci bcp!!!! ca va bien m'aidé ca!!

n°682845
dgeniet
Yacc tl ki compte
Posté le 24-03-2004 à 15:07:31  profilanswer
 

j'ai l'impression de reconnaitre le projet que j'ai donné a mes etudiants, serait ce un hasard complet ????


Message édité par dgeniet le 24-03-2004 à 15:08:24
n°682857
neogally
Battle Angel Alita
Posté le 24-03-2004 à 15:16:04  profilanswer
 

dgeniet a écrit :

j'ai l'impression de reconnaitre le projet que j'ai donné a mes etudiants, serait ce un hasard complet ????


 
c'est des choses qui arrivent  :o

n°682858
cricri_
Posté le 24-03-2004 à 15:16:25  profilanswer
 

dgeniet a écrit :

j'ai l'impression de reconnaitre le projet que j'ai donné a mes etudiants, serait ce un hasard complet ????

 :ouch:   :pt1cable:   :lol:  
 :pfff:

n°682922
gilou
Modérateur
Modzilla
Posté le 24-03-2004 à 15:41:41  profilanswer
 

dgeniet a écrit :

j'ai l'impression de reconnaitre le projet que j'ai donné a mes etudiants, serait ce un hasard complet ????

Vu que vous postez (toi et le createur du topic) depuis la meme IP (sp2mi.univ-poitiers.fr), il y a peu de chances que ce soit du au hasard... :whistle:
A+,


Message édité par gilou le 24-03-2004 à 15:42:50
n°682943
chagarou
Posté le 24-03-2004 à 15:56:44  profilanswer
 

gilou a écrit :

Vu que vous postez (toi et le createur du topic) depuis la meme IP (sp2mi.univ-poitiers.fr), il y a peu de chances que ce soit du au hasard... :whistle:
A+,


Excellent :lol:

n°682956
floxibus76
Posté le 24-03-2004 à 16:08:51  profilanswer
 

oui c des potes ki me font une blague. le pire c ke jarrive a la salle info et ils me collent le nez devant l'écran en me disant "ohhhhhhhhhhh regarde on t'as repondu"
alors pour ces ptits farceurs messieurs kelkes applaudissement svp
clap clap clap

n°683016
pascal_
Posté le 24-03-2004 à 16:46:22  profilanswer
 

gilou a écrit :

Vu que vous postez (toi et le createur du topic) depuis la meme IP (sp2mi.univ-poitiers.fr), il y a peu de chances que ce soit du au hasard... :whistle:
A+,


 
Hum, ça pourrait se monnayer ça  [:meganne] ....
 
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  besoin d'aide yacc/bison

 

Sujets relatifs
Besoin d'aide en yacc/bisonBesoins d'aide SVP
[HTML] "Css" et balise "Div", besoin de vos conseils...Un peu d'aide sur un mélange de cat/tail
Java Media Framework - Petite aideValidation d'un formulaire , a l'aide !
Aide pour faire application de video conference 
Plus de sujets relatifs à : besoin d'aide yacc/bison


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR