我正在读这个问题的答案,
p(X) :- read(A), q(A,X-[]).
q(end,X-X) :- !.
q(A,[A|X]-Y) :- read(B), q(B,X-Y).
Run Code Online (Sandbox Code Playgroud)
上面的代码使用语法List-List.我有点理解发生了什么,但我想知道" - "符号/谓词到底是做什么的.此外,这个SWI是否具体?
我需要编写一个简单的基于终端的程序,它应该,
总而言之,这个想法是为没有 GUI 的类 Unix 环境编写一个文本编辑器。
但是,我在第 2 步和第 3 步中遇到了问题。
System.out 打印的所有文本都是不可变的。我怎样才能改变这种行为?
如何为 Enter + S 实现按键监听器。我可以使用 GUI 轻松实现,但是在基于控制台的程序中如何添加监听器?在 Enter 上,程序应该简单地向修改后的文本添加一个新行。另外,如何阅读已打印到终端的文本?
PS 我必须使用 JDK 1.4,因此如果相关,则无法访问 Scanner 和 Console 类。我也认为这样的任务在 Java 中是不可能完成的,所以你可以在 C/C++ 中提出一个解决方案。毕竟,他们在 MS-DOS 时代以某种方式做到了。
谢谢!