【问题标题】:Config files + yacc; how to actually get the data配置文件+yacc;如何实际获取数据
【发布时间】:2011-07-17 13:31:20
【问题描述】:

我在 yacc 中编写了一个简单的配置文件解析器,它处理这样的文件:

asdf=50
foobar=42

即单词=数字。

我的问题是,如何将其集成到我的程序中?我最终希望将处理后的值存储在一些内部数据结构中,以便以后可以随意访问。我看到的每个 yacc 示例都只是简单地将值 printf() 输出到 stdout,但这在实际程序中似乎没有用。

【问题讨论】:

    标签: parsing config yacc


    【解决方案1】:

    您可以通过将数据插入您自己的数据结构的代码替换这些 printf。像这样的:

    rule: TOKEN1 TOKEN2 TOKEN3 
          {
              add_data(your_data, $1, $2, $3);
          };
    

    其中add_data 是将$1$2$3 中包含的数据添加到变量your_data 中包含的自定义数据结构中的函数。

    恐怕your_data 必须是全球性的。我挖掘了一些我拥有的旧 yacc 项目和其他 stackoverflow 问题,如this,但我还没有找到另一种方法。如果有人知道更好的方法,请发表评论。

    如果您发布您的代码,我可以尝试帮助您详细说明。

    【讨论】:

      猜你喜欢
      • 2016-04-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-27
      • 1970-01-01
      • 1970-01-01
      • 2016-02-26
      • 1970-01-01
      • 2013-01-19
      相关资源
      最近更新 更多