我见过很多 cons 将两个数字作为参数的实例,并且有人告诉我将两个数字作为参数传递给实验室中的 cons,但是每当我这样做时,我都会收到以下错误:
> (cons 1 2)
cons: second argument must be a list, but received 1 and 2
如果我执行以下操作,则会收到相同的错误:
> (cons '1 '2)
cons: second argument must be a list, but received 1 and 2
我对 Scheme 很陌生,我不明白为什么会这样。
最佳答案
那是因为所使用的教学语言,很可能您正在使用具有某些限制的学生语言。要解决此问题,请确保此行位于文件的开头:
#lang racket
并选择 DrRacket 窗口左下角的“从源代码确定语言”选项。现在这应该按预期工作:
(cons 1 2)
=> '(1 . 2)
关于list - Scheme cons 不会接受两个数字参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22517500/