LISP 中的类型说明符
类型说明符是系统定义的数据类型符号。
array |
fixnum |
package |
simple-string |
atom |
float |
pathname |
simple-vector |
bignum |
function |
random-state |
single-float |
bit |
hash-table |
ratio |
standard-char |
bit-vector |
integer |
rational |
stream |
character |
keyword |
readtable |
string |
[common] |
list |
sequence |
[string-char] |
compiled-function |
long-float |
short-float |
symbol |
complex |
nill |
signed-byte |
t |
cons |
null |
simple-array |
unsigned-byte |
double-float |
number |
simple-bit-vector |
vector |
除了这些系统定义的类型之外,您还可以创建自己的数据类型。当使用定义结构类型时defstruct函数,结构类型的名称成为有效的类型符号。
示例 1
创建名为 main.lisp 的新源代码文件并在其中键入以下代码。
(setq x 10)
(setq y 34.567)
(setq ch nil)
(setq n 123.78)
(setq bg 11.0e+4)
(setq r 124/2)
(print x)
(print y)
(print n)
(print ch)
(print bg)
(print r)
当您单击执行按钮或键入 Ctrl+E 时,LISP 会立即执行它,返回的结果是 -
10
34.567
123.78
NIL
110000.0
62
示例 2
接下来让我们检查一下上一个示例中使用的变量的类型。创建名为 main.c 的新源代码文件。lisp 并在其中键入以下代码。
(defvar x 10)
(defvar y 34.567)
(defvar ch nil)
(defvar n 123.78)
(defvar bg 11.0e+4)
(defvar r 124/2)
(print (type-of x))
(print (type-of y))
(print (type-of n))
(print (type-of ch))
(print (type-of bg))
(print (type-of r))
当您单击执行按钮或键入 Ctrl+E 时,LISP 会立即执行它,返回的结果是 -
(INTEGER 0 281474976710655)
SINGLE-FLOAT
SINGLE-FLOAT
NULL
SINGLE-FLOAT
(INTEGER 0 281474976710655)