gpt4 book ai didi

计划 - eq?比较2个字符串?

转载 作者:行者123 更新时间:2023-12-04 18:51:23 28 4
gpt4 key购买 nike

我的程序有问题。

我有一个比较两个字符串的条件:

(if (eq? (exp1) (exp2)))



当 exp1 给我一个字符串,exp2 给我一个字符串。可以肯定的是,当我更改“eq?”时到“=”,它给了我下一个问题:

=: expects type <number> as 2nd argument, given: ie; other arguments were: ie.



当我运行程序时,函数 没有进入“if”函数中的第一个表达式,然后进入第二个表达式(意味着条件为假)。

我能做什么?

谢谢你。

最佳答案

根据Equivalence predicates R6RS 部分,您应该使用 equal? ,不是 eq? ,而是测试它的两个参数是否是完全相同的对象(不是两个具有相同值的对象)。

(eq? "a" "a")                           ; unspecified
(equal? "abc" "abc") ; #t

正如 knivil 在评论中指出的那样, Strings部分还提到 string=? ,专门用于字符串比较,这可能会避免进行类型检查。

关于计划 - eq?比较2个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5730673/

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