Common lisp 在Lisp中,如何检查流以查看它是否';它是空的,没有修改吗?

Common lisp 在Lisp中,如何检查流以查看它是否';它是空的,没有修改吗?,common-lisp,Common Lisp,如何在不修改流的情况下检查流是否为空?目前,我正在使用peek char查看是否有字符,但如果流中没有新的内容,它似乎会等待用户输入一些内容。此外,我不知道如何与eof角色进行比较#\空间显然不起作用。请帮忙 (loop while (equal (peek-char) '#\Space) do (print 'testword)) 您只需阅读手册: 检查是否有可用的输入 可以在eof发出错误信号或返回eof值。您还可以告诉它要返回的eof值。您只需阅读手册: 检查是

如何在不修改流的情况下检查流是否为空?目前,我正在使用peek char查看是否有字符,但如果流中没有新的内容,它似乎会等待用户输入一些内容。此外,我不知道如何与eof角色进行比较#\空间显然不起作用。请帮忙

    (loop while (equal (peek-char) '#\Space) 
        do (print 'testword))

您只需阅读手册:

检查是否有可用的输入


可以在eof发出错误信号或返回eof值。您还可以告诉它要返回的eof值。

您只需阅读手册:

检查是否有可用的输入


可以在eof发出错误信号或返回eof值。您还可以告诉它返回什么eof值。

您是否尝试过使用listen而不是peek char?我几乎不知道如何使用lisp。我尝试了stream listen,这听起来正是我想要的,但是我的程序(lisp工作)似乎不知道该函数是什么。如果你能给我指导如何实现它,那就太棒了。我以前玩的时候一定是打错代码了。这似乎工作完美。非常感谢。这是一个非常简单的解决方案。你不应该引用字符文字。你试过用listen而不是peek char吗?我几乎不知道如何使用lisp。我尝试了stream listen,这听起来正是我想要的,但是我的程序(lisp工作)似乎不知道该函数是什么。如果你能给我指导如何实现它,那就太棒了。我以前玩的时候一定是打错代码了。这似乎工作完美。非常感谢。这是一个非常简单的解决方案。你不应该引用字符文字。