我需要运行一个脚本并可以访问我程序中的默认标准输入(终端输入)。我可以做 ./program "script",通过程序打开和解析脚本,但我想让它成为 POSIX 风格,接受来自管道或重定向的输入。
我的意思是,由于我的程序是一个解析器,我可以运行 ./program,键入脚本并仍然使用标准输入(例如在 scanf 中)。但我想运行 ./program < script 并且仍然能够使用标准输入(在 scanf 中)。
我的程序是一个简化的 Pascal 解释器,这就是为什么我需要在我的脚本read(x)
中运行。write(x)
是的,这是家庭作业(解释器),但在头脑风暴过程中突然出现了疑问。