首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Windows上使用C程序中未定义的句柄之一?

如何在Windows上使用C程序中未定义的句柄之一?
EN

Stack Overflow用户
提问于 2011-03-26 15:01:02
回答 1查看 132关注 0票数 1

我在Windows上的C程序中使用的封闭源代码库中的密码提示函数将提示写入stdout (句柄1),并将任何错误消息写入stderr (句柄2)。

现在,我希望能够使用普通的重定向操作符重定向我的函数产生的输出。

根据,句柄3-9“由应用程序单独定义”。在我看来,我可以在我的程序中使用其中之一,然后使用正常的重定向操作符(例如,类似于myprogram.exe 3| otherprogram.exe)。

我如何在我的C代码中做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2011-03-26 17:22:40

在Windows上?如果您使用posix兼容性库,您可以使用'dup2‘强制使用文件描述符3,我不能保证cmd.exe会知道您在说什么。

从根本上讲,在这里,您看到的是Windows上的一点Unix/Linux嫉妒。小整数描述符数的概念是一个基本的Unix/Linux概念。这不是窗户的特点。cmd.exe知道如何处理0、1和2这一事实很可能是错位的Unix程序员的一种方便,而这些程序并没有被推广到其他数字。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5443130

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档