EchoChan
V2EX  ›  问与答

请问一个文法移动规约冲突的问题

  •  
  •   EchoChan · Jun 21, 2015 · 2284 views
    This topic created in 3985 days ago, the information mentioned may be changed or developed.
    我使用bison生成output文档,其中有个移动规约的冲突,请问该怎么解决?

    在.y 文件中是这么写的:
    4 replies    2015-06-21 17:34:47 +08:00
    liwei
        1
    liwei  
       Jun 21, 2015
    很遗憾,v2ex装逼吹水的比较多,能回答你这个问题的是少数。
    更加遗憾的是,我属于前者 :D
    EchoChan
        2
    EchoChan  
    OP
       Jun 21, 2015
    @liwei 也不会吧,这只是编译原理的内容,很多人都应该上过这课的。
    zwzmzd
        3
    zwzmzd  
       Jun 21, 2015 via Android   ❤️ 2
    已经不太记得这了,但是bison可以设置为遇到冲突时优先移入(即语句尽量的长)

    我们当时做了个c语言编译器,就是用这个方法解决if语句的问题
    hahastudio
        4
    hahastudio  
       Jun 21, 2015 via Android
    话说这个跟悬垂 else 不太一样
    悬垂 else 只要优先移入就好
    这个的话,定义一下 block 是不是比较好?
    再有如果是看下一个输入的话,貌似也不会出现冲突= =?
    龙书都快忘了= =
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2979 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 14:30 · PVG 22:30 · LAX 07:30 · JFK 10:30
    ♥ Do have faith in what you're doing.