当前位置: 首页>>代码示例>>C++>>正文


C++ Scanner::Scan方法代码示例

本文整理汇总了C++中Scanner::Scan方法的典型用法代码示例。如果您正苦于以下问题:C++ Scanner::Scan方法的具体用法?C++ Scanner::Scan怎么用?C++ Scanner::Scan使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Scanner的用法示例。


在下文中一共展示了Scanner::Scan方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Run

    void Run() {
	Scanner scanner;
	scanner.Scan();
	Parser parser;
	parser.Parse();
	GenMidCode midcode;
	midcode.GenCode();
	GenMachineCode machneCode;
	machneCode.GenCode();
    }
开发者ID:familymrfan,项目名称:fanfei,代码行数:10,代码来源:facade.cpp

示例2: main

int main (int argc, char *argv[]) {
    string input = "";

    // Parse arguments
    vector<string> args;
    args.assign (argv, argv + argc);
    int i = 0;
    for (auto arg : args) {
        if (arg == "-i" || arg == "--input") {
            auto _arg = args[++i];
            input = _arg;
        }
        i++;
    }

    // Check arguments
    if (input == "") {
        cout << "Please specifiy an input source." << endl;
        return 1;
    }

    // Read source file
    ifstream file (input);
    stringstream source;
    source << file.rdbuf ();

    // Scan source
    Scanner scanner;
    scanner.Feed (source.str ());
    auto tokens = scanner.Scan ();

    // Show scanned tokens
    for (auto iter = tokens.begin (); iter != tokens.end (); iter++) {
        auto tk = *(iter);
        printf ("%s -> %s at %d:%d\n",
                TokenTypeName[tk.type].c_str (),
                tk.value.c_str (),
                tk.position->linenum,
                tk.position->linepos);
    }

    // Parse tokens
    // ...

    return 0;
}
开发者ID:SplittyDev,项目名称:Sexy,代码行数:46,代码来源:main.cpp


注:本文中的Scanner::Scan方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。