1
我试图比较一个符号到另一个字母,但我不能这样做。 特别是,我已经做到了。如何在Common Lisp中按字母顺序比较符号?
CL-USER 1 > (string-lessp 'k 'a)
NIL
CL-USER 2 > (string-lessp 'a 'k)
0
谢谢你们
我试图比较一个符号到另一个字母,但我不能这样做。 特别是,我已经做到了。如何在Common Lisp中按字母顺序比较符号?
CL-USER 1 > (string-lessp 'k 'a)
NIL
CL-USER 2 > (string-lessp 'a 'k)
0
谢谢你们
Common Lisp中,NIL是假的,别的都是如此。因此,在你的成绩单,0是一个真正的价值,表明A是K.而之前不是简单地恢复T和NIL,STRING-LESSP返回一个不匹配指数:
不平等函数返回一个不匹配指数是真的,如果字符串不相等,否则为false。当不匹配索引为真时,它是一个整数,表示两个子串不同的第一个字符位置,作为从string1开始的偏移量。
0是指定字符串不同意的第一个字符的索引。
你能详细说明问题是什么吗? – jkiiski
@jkiiski如果你习惯于使用“C风格”的语言,那么'0'看起来就像是假的,当它只是一个意外混淆的真实值。 – Vatine