Scheme 如何从var转换为string

Scheme 如何从var转换为string,scheme,Scheme,我试着这样做: assume x= (define foo 5) 我需要做: (string-append "a" "b" (cadr x)) 当x不知道 如何将var cadr x转换为字符串或存在其他sulotion 感谢您将数字转换为字符串使用以下步骤: (number->string 5) => "5" (symbol->string 'x) => "x" 要将符号转换为字符串,请使用以下步骤: (number->string 5) =>

我试着这样做:

assume x=

(define foo 5)
我需要做:

(string-append "a" "b" (cadr  x))
当x不知道

如何将var cadr x转换为字符串或存在其他sulotion


感谢您将数字转换为字符串使用以下步骤:

(number->string 5)
=> "5"
(symbol->string 'x)
=> "x"
要将符号转换为字符串,请使用以下步骤:

(number->string 5)
=> "5"
(symbol->string 'x)
=> "x"
举一些例子,选择一个能更好地反映你需求的——因为你根本不清楚你想问什么:

(define foo 5)
(string-append "a" "b" (number->string foo))
=> "ab5"

(define x '(1 5))
(string-append "a" "b" (number->string (cadr x)))
=> "ab5"

(define x '(define foo 5))
(string-append "a" "b" (number->string (caddr x)))
=> "ab5"

(define x '(define foo 5))
(string-append "a" "b" (symbol->string (cadr x)))
=> "abfoo"
请注意,不能使用cadr访问变量的值,cadr用于访问列表中的第二个元素