converting number to string in lisp

前端 未结 3 1879
失恋的感觉
失恋的感觉 2021-02-01 18:08

I tried to find a lisp function to convert between numbers and strings and after a little googling I fond a function with the same name. when I entered (itoa 1) SLI

相关标签:
3条回答
  • 2021-02-01 18:35

    From number to string:

    (write-to-string 5)
    "5"
    

    you may transform a string to any numerical notation:

    (write-to-string 341 :base 10)
    "341"
    

    From string to number:

    (parse-integer "5")
    5
    

    with some trash

    (parse-integer " 5 something not a number" :junk-allowed t)
    5
    

    Or use this:

    (read-from-string "23 absd")
    23
    
    0 讨论(0)
  • 2021-02-01 18:35

    FYI: I believe (itoa #) is only a function in AutoLISP - the LISP variant embedded in AutoCAD drafting software. AutoLISP has far fewer functions than Common Lisp and sometimes identical functions with a different name or functions with the same name that operate differently.

    That's probably why it didn't work for you. I use AutoLISP regularly and (itoa #) would do exactly what you want there.

    0 讨论(0)
  • 2021-02-01 18:37

    A heavyweight solution is to use FORMAT:

    [2]> (format nil "~A" 1)
    "1"
    

    There is also WRITE-TO-STRING:

    [3]> (write-to-string 10)
    "10"
    
    0 讨论(0)
提交回复
热议问题