gpt4 book ai didi

c - C 中的嵌入式 Lua 从 STDIN 获取输入

转载 作者:太空宇宙 更新时间:2023-11-04 04:05:26 25 4
gpt4 key购买 nike

我正在编写一个 C 应用程序,其中有一个嵌入式 lua 脚本。 Lua 脚本从 STDIN 获取输入。所以当我从 shell 运行脚本时,它就像这样:

lua myscript.lua < datafile*

我如何从 C 代码内部完成此操作?

谢谢。

最佳答案

对描述符 0 (stdin) 和 open(2) 返回的描述符使用 dup2(2) 系统调用 数据文件:

int fd = open("datafile", O_RDONLY);
dup2(fd, 0);
/* reading from stdin now is in fact reading from datafile */

当然,您需要在实际程序中进行一些错误检查。

要实现通配符的行为,您可能需要查看 readdir(3) 库函数。

关于c - C 中的嵌入式 Lua 从 STDIN 获取输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6596229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com