3

我正在尝试制作一个提示用户在 a 期间输入数字的功能while(因此提示出现的次数会发生变化,这就是为什么我不想使用类似的东西(interactive "n Enter a Number : "))。我的代码是这样的:

 (setq nb_str (read-string "Enter a Number:"))
 (setq nb (string-to-number nb_str))
 (insert nb)

当我想插入变量时,我没有插入我的数字,而是从函数nb中得到一些奇怪的输出,比如(如果我输入 3)或(如果我输入 4)或(如果我输入 5)。我需要该值作为之后的数字。我怎样才能做到这一点?string-to-number^C^D^E

4

1 回答 1

7

insert插入字符串或字符,而 Emacs Lisp 中的数字一个字符(如果它在正确的范围内),因此 3 作为第三个 ASCII 字符插入,^C.

您需要传递nb-strinsert或使用number-to-string

(insert (number-to-string nb))
于 2013-11-12T03:40:00.187 回答