作者zzss2003 (brotherD)
看板C_and_CPP
标题[问题] token在这个上下文中所代表的意思
时间Mon Oct 23 18:12:30 2017
各位前辈好,不晓得在这个版可不可以讨论这种问题?如果不行还请版主帮我把这篇删掉
(我记得这边好像不能自删?)
在国外论坛中,时常看到token这个字,但我始终不清不楚它的定义。
例如,在ISO/IEC 9899:1990这个规范,对argument的定义中:
An expression in the comma-separated list bounded by the parentheses in a
function call expression. or a sequence of preprocessing tokens in the
comma-separated list bounded by the parentheses in a function-like macro
invocation. Also known as “actual argument” or “actual parameter.”
上网查到了这篇stack overfolow:
https://stackoverflow.com/questions/4448661/what-is-the-exact-definition-of-token
看完一遍後,对token这个字的定义还是很模糊。
请问,token这个意思用中文表达的话,是代表着什麽意思呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.248.26.157
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1508753553.A.5EC.html
1F:→ Lipraxde: 以前再看yacc/lex时有看到,跟语法分析有关? 10/23 18:32
3F:→ james732: 我自己的简单理解是"一个有意义的最小单位" (?) 10/23 19:39
4F:推 chuegou: counter的感觉? 10/23 20:03
5F:→ Hazukashiine: 在讲 token 的时候 我们一般不会说它具有语意 10/23 21:26
6F:→ Hazukashiine: 因为程式码是一个连续的位元流 没有实体的切割 10/23 21:27
7F:推 Bencrie: 衍生物(误 10/23 21:27
8F:→ Hazukashiine: 所以我们要定义一组规则去把程式码切断成数个单元 10/23 21:28
9F:→ Hazukashiine: 这个过程叫做 tokenization 来提供语法分析器调用 10/23 21:29
10F:→ Hazukashiine: 一但语法分析器建立出语法树後 程式码变有了意义 10/23 21:30
11F:推 longlongint: 就代币(误 10/24 00:42
12F:→ longlongint: 个人的理解 "一片小东西上面有写字" 10/24 00:43
13F:推 CoNsTaR: 就是能证明你身份的一样物品啊 10/24 03:12
14F:→ MOONRAKER: 证明身分那是写网路程式的时候好吗 10/24 03:16
15F:→ MOONRAKER: token就如上述 程式码是一个大字串 把这个大字串依照 10/24 03:18
16F:→ MOONRAKER: 规则切成小段 就是token 10/24 03:19
17F:→ MOONRAKER: 考虑意义 你可以称它为「单字」 反正电脑语言的WORD是 10/24 03:19
18F:→ MOONRAKER: 别的意思不会混淆 而token是合乎语法的基本片段 10/24 03:20
19F:→ MOONRAKER: (syntactic element) 称为「单字」也并无问题 10/24 03:21
20F:→ MOONRAKER: 叫「字汇」或更模糊的「片段」也行 「字串」也勉强 10/24 03:31
21F:→ MOONRAKER: 类似很难搞的词还有"handle" 那比token还头大 10/24 03:32
22F:推 CoNsTaR: 原来我那个解释还真的可以用在写程式上啊 XDDD 10/24 04:29
23F:推 springman: 在分析运算式时,运算元、运算子、括号 等都是 token。 10/24 09:40
问一下题外话,请问网路上哪里可以抓到比较清楚版本的C89/C90 Spec?这个版本看得我眼
睛好痛苦
※ 编辑: zzss2003 (60.248.26.157), 10/24/2017 11:04:20
24F:→ MOONRAKER: 规格书不好看是一定的啊 准备一些基础知识才比较好看 10/24 16:07
我指的不清楚是指印的不清楚QQ
25F:推 sppmg: 让我想到 latex3 10/24 22:15
※ 编辑: zzss2003 (60.248.26.157), 10/25/2017 09:48:18
26F:→ MOONRAKER: 那不是随便找就有PDF吗 10/25 14:02
27F:→ MOONRAKER: Sorry正式的PDF是要钱的 但是你搜寻ISO 9899:1990 10/25 14:05
28F:→ MOONRAKER: 就有一堆非常接近的版本了 还可能在中国有意外惊喜 10/25 14:05
29F:→ descent: 我是印出来慢慢看 10/26 13:02