令牌和文件流
tokens and file streams
我学习操作文件流的程序源代码(用c++写的)。但我偶尔会偶然发现一种叫做tokens
的东西。你能给我解释一下,代币有什么用,为什么有用吗?谢谢你。
流指的是一段时间内可用的数据元素序列。流中的数据元素可以是任何类型的:字符、字符串、特殊用途的数据结构等。文本文件可以简单地解释为一个字符流。
在编程语言的上下文中,单词标记通常是指字符流中一个或多个相关字符的序列。令牌在字符流之上提供了一个抽象级别,并且通常将它们自己分组在流中以供进一步处理。
编程语言的编译器中通常的处理顺序从词法分析器开始,将字符流转换为令牌流,然后传递给解析器。令牌的典型表示由类型指示符和令牌的内容组成。
下面是一个例子:考虑下面的c++程序片段:class MyClass {
public:
string name;
};
词法分析器将此程序分组为十个令牌的流:
'class' (keyword)
'MyClass' (identifier)
'{' (opening brace)
'public' (keyword)
':' (colon)
'string' (identifier)
'name' (identifier)
';' (semicolon)
'}' (closing brace)
';' (semicolon)
令牌可以被认为是"占位符"。令牌代表一个特定的实体(字符串),通常是两个等价物之间的某种中间步骤。例如,在解析器中经常使用标记,它们表示给定语言的语法。
相关文章:
- 如何在C++中使用X509证书模在令牌中查找私钥
- 根据特定条件从文件中检索每个令牌
- 有关意外令牌 c2760 的链接列表头文件错误
- 令牌之前的预期类名 '{' - 包含头文件和 CPP 文件
- 如何删除"..使用 Visual Studio 2012 类的文件路径中的 /' 令牌<filesystem>?
- 分析c++中文件中的令牌
- Linux g++ 下的 MFC 头文件:在"<"令牌之前应为"{"
- 调试断言失败文件、令牌扫描程序和文本文件
- 来自 Qt 文件的编译时错误:令牌之前的预期非限定 id ')'
- 当找到某个令牌时,是否有更快的方法来拆分文本文件
- 制作文件时出错:令牌之前的预期主表达式')'
- 令牌和文件流
- 如何使用c++ 11正则表达式拆分css文件上的令牌
- 使用令牌解析csv文件中的特定列
- Boost程序选项-将多令牌选项从配置文件附加到命令行
- 有效地从文件的各个行读取令牌
- 尝试在 Cygwin 中构建 boost 文件系统时出错: 错误:在"&&"令牌之前预期为非限定 ID
- 文件RecvFile函数中预期的令牌错误
- 如何从文本文件中获取令牌并将其放入二维矩阵中
- 带有多个令牌的Boost::program_options配置文件选项