我已经阅读 SO 一段时间了,但我真的找不到任何帮助解决我的问题的方法。
我有一个创建 IAS 模拟器的 C++ 任务。
这是一些示例代码...
0 1 a
1 2 b
2 c
3 1
10 begin
11 . load a, subtract b and offset by -1 for jump+
11 load M(0)
12 sub M(1)
13 sub M(3)
14 halt
使用 C++,我需要能够读取这些行并将它们存储在我已经构建的“内存寄存器”类中...
例如,第一行需要在寄存器零中存储“1 a”。
如何解析出行首的数字,然后将其余部分存储为字符串?
我使用一个类来设置存储,该类使用 mem.set(int, string);
调用。 int
是行首的内存位置,string
是存储的指令。
编辑:一些说明:
- 我必须使用标准库
- 输入文件的语法在这里:http://www.cs.uwyo.edu/~seker/courses/2150/iascode.pdf
- 加载程序将覆盖重复的行条目。这意味着示例中的第一行 11 将被第二行覆盖。
最佳答案
我建议看一下 <ifstream>
图书馆。
关于c++ - 使用 C++ 进行简单的自定义解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2701470/