如何读取输入直到用户输入^X

3

我正在为我的esolang创建一个解释器,我需要用户输入一些文本,然后将其解释为INTERCAL程序。我希望用户可以输入包括换行符在内的任何字符,直到用户按下^X(Ctrl-X),如下所示:

Enter your code followed by ^X:
Bla
Blablabla
Bla^X
Thank you for entering your code

有人能解释一下如何读取用户输入,直到用户输入^X为止吗?谢谢。


如果有帮助的话,^X 的字符值将为24。 - Mike Weller
2个回答

1

那我应该用类似于 do-while 循环的方式逐个读取输入字符,检查是否未输入 ^X? - user142019

1

最好要求用户使用^D。

在大多数系统上,这会产生EOF字符并导致流关闭。

因此,您不需要做任何特殊处理。

您只需读取输入流的末尾即可。 因此,您的代码可以完全相同,无论是读取标准输入还是从文件中读取。


^D不是我的问题。而且,^D与HQ9+-ABC没有任何关系。 - user142019

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接