2013-02-17 85 views
1

我尝试做这样的事情:如何从VAR转换为字符串

assume x= 

(define foo 5) 

我需要做的:

(string-append "a" "b" (cadr x)) 

(X时无法知道..)

如何我可以将var(cadr x)转换为字符串还是有其他的优点?

由于

+0

请注意,您不得使用'cadr'来访问变量的值,'cadr'用于访问列表中的第二个元素 – 2013-02-17 21:36:02

回答

0

对于一些转换成字符串使用number->string过程:

(number->string 5) 
=> "5" 

而对于一个符号转换为字符串使用symbol->string过程:

(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"