将用 C 打开的文件描述符传递给 tcl 解释器以供使用

发布于 2024-08-02 16:07:16 字数 200 浏览 1 评论 0原文

我有一个 C 程序,在其中创建了一个 tcl 解释器。然后,我在 C 程序中打开一个文件,并希望将其传递到 tcl 解释器,以便 tcl 解释器可以对其进行 I/O。

我意识到我可以在 tcl 解释器中打开文件,但我在其他地方得到了一个打开的文件描述符,所以不幸的是,这不是一个选项。

有什么想法或技巧吗?还是我错过了 tcl C API 中的某些内容?

I have a C program in which I create a tcl interpreter. I then open a file in the C program and want to pass it onto the tcl interpreter so the tcl interpreter can do I/O on it.

And I realize I could just open the file in the tcl interpreter, but I get an open file descriptor some somewhere else, so that's not an option, unfortunately.

Any ideas or tricks, or did I miss something in the tcl C API?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

泛泛之交 2024-08-09 16:07:16
man Tcl_MakeFileChannel

阅读有关 Tcl_MakeFileChannelTcl_RegisterChannel 的内容

man Tcl_MakeFileChannel

Read there about Tcl_MakeFileChannel and Tcl_RegisterChannel

oО清风挽发oО 2024-08-09 16:07:16

如果要使文件描述符有意义,那么在创建 tcl 解释器进程之前就不必打开文件吗?

如果您随后打开,并在 C 程序中说您有文件描述符 9,然后将这个 9 传递给 tcl 解释器进程,那么 9 将没有任何意义。

Wouldn't have have to open the file before you create the tcl interpreter process, if it's going to have the file descriptor have meaning?

If you open after, and say in the C program you have file descriptor 9, and you then pass this 9 to the tcl interpreter process, that 9's not going to mean anything.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文