如何控制Common Lisp格式的小数点?

时间:2017-12-04 00:46:57

标签: common-lisp

如何将值传递给控制要打印的小数点数的函数。

我可以使用$f,例如

(format t "~,3f" 3.141592)
(format t "~2$" 3.141592)

但是如何做这样的事情

(defun control-format (x)
  (format nil "~,xf" 3.141592))

因此我们可以将任何数字作为参数传递给control-format来控制我们想要的十进制数。

感谢。

1 个答案:

答案 0 :(得分:7)

使用v代替文字编号:

* (dotimes (i 8)
    (format t "~,vf~%" i pi))
3.
3.1
3.14
3.142
3.1416
3.14159
3.141593
3.1415927
NIL
*