gpt4 book ai didi

common-lisp - 为什么 common lisp 的 case 构造总是匹配 True (T)?

转载 作者:行者123 更新时间:2023-12-04 22:23:43 25 4
gpt4 key购买 nike

这是 Debian 挤压上的 SBCL 1.0.55。我可能遗漏了一些明显的东西,但我是初学者,所以请耐心等待。

CL-USER> (defparameter x 0)

CL-USER> (case x (t 111) )
111

所以看起来这里的情况是将变量 x 与真值符号 t 匹配。我尝试过的所有事情都会发生这种情况;这个 x 只是一个例子。我不明白为什么会发生这种情况。由于 case 使用 eql 进行匹配,我试过
CL-USER> (eql x t)
NIL

因此, eql 不匹配 xt 。我错过了什么?提前致谢。

最佳答案

在 Common Lisp 的 case 构造中, t ,本身使用,相当于 C 中的 default ;也就是说,如果表达式不匹配任何其他情况,则对其进行评估。如果要匹配实际符号 t ,请改用 (t)

关于common-lisp - 为什么 common lisp 的 case 构造总是匹配 True (T)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9759758/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com