【问题标题】:Please explain this line from the book 'The C Programming Language' Pg 192请从“The C Programming Language”第 192 页解释这一行
【发布时间】:2015-07-16 07:34:04
【问题描述】:

“如果输入流已被分成直到给定字符的标记,则下一个标记是可以构成标记的最长字符串。”

这是我的解释:

假设我输入一个字符串"abc xyz",那么这个输入中会有两个标记,"abc""xyz",所以"abc""xyz"之间用空格隔开,"xyz"是可以构成标记的最长字符串。

我想知道我是否理解正确?

【问题讨论】:

  • 请提供更多上下文。我没有那本书。
  • 谁能帮我改进一下这个问题的标题?

标签: c token


【解决方案1】:

是的,您基本上是对的,但上下文不同。具体来说,这与“输入”无关。

您所指的章节描述了预处理阶段源文件的“词汇约定”和标记化。

澄清一下,引用相关部分,来自“词汇约定”中的“标记”一章

空格、水平和垂直制表符、换行符、换页符和 cmets 为 下面描述的(统称为“空白”)将被忽略,除非它们分隔标记。需要一些空格来分隔其他相邻的标识符、关键字和常量。

如果输入流已被分成直到给定字符的标记,则下一个标记是可以构成标记的最长字符串。

因此,不仅是“空格”字符,标记可以由任何空白元素分隔,如上所述。在这种情况下,是的,它是“空格”()字符。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-18
    • 1970-01-01
    • 2021-09-19
    • 2015-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多