gpt4 book ai didi

scheme - 方案编程语言中的自增和自减运算符

转载 作者:行者123 更新时间:2023-12-02 09:50:47 25 4
gpt4 key购买 nike

scheme 编程语言中的递增递减运算符是什么。我正在使用“Dr.Racket”,它不接受 -1+1+ 作为运算符。而且,我也尝试过 incfdecf,但没有用。

最佳答案

它们没有这样定义,因为Scheme和Racket试图避免突变;但您可以轻松地自己定义它们:

(define-syntax incf
(syntax-rules ()
((_ x) (begin (set! x (+ x 1)) x))
((_ x n) (begin (set! x (+ x n)) x))))

(define-syntax decf
(syntax-rules ()
((_ x) (incf x -1))
((_ x n) (incf x (- n)))))

然后

> (define v 0)
> (incf v)
1
> v
1
> (decf v 2)
-1
> v
-1

请注意,这些是语法扩展(也称为宏)而不是普通过程,因为Scheme 不通过引用传递参数。

关于scheme - 方案编程语言中的自增和自减运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24228642/

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