c - 在 Windows 上将 select() 与 STDIN 一起使用?

标签 c windows sockets select stdin

<分区>

来自 linux 背景,我习惯了一切都是文件的概念,即套接字和标准输入。

这使得使用 select() 编写简单的服务器/客户端变得很容易,我在 fdset 中包含了 STDIN,因此它允许我使用终端进行输入,尤其是用于调试。

然而,移至 Windows 后,“一切皆文件”的概念不再适用。 对标准输入使用 select()(即使在将 STDIN_FILENO 定义为 0 之后)根本不起作用。

使用 select()(对于标准输入和实际套接字)将代码移植到 Windows 上的最佳方式是什么?

最佳答案

您确实已经(部分)回答了问题。 Windows 和 Linux 上的套接字规则相似(就概念而言)但不完全相同。

这是一个讨论 porting Windows to Linux 的链接

这是一个 porting Linux to Windows 。 (阅读底部帖子中的链接。)

关于c - 在 Windows 上将 select() 与 STDIN 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23222202/

相关文章:

linux - 不同操作系统上的 tensorflow 训练和测试

c# - C#中三个kinect 2设置之间的通信

C 套接字双栈 ss_family 始终 IPv6

node.js - 套接字 : Namespace & WS protocol

php - 如何从 php 扩展返回数组?

windows - 使用 chef 运行 Windows 批处理命令会阻止 chef 提供

c - 在 Turbo C 的消息窗口中显示输出

windows - 使用 cmake 和 visual studio 2019 生成器创建共享库时缺少 .lib 文件

c - 在嵌入式 linux 中模拟触摸屏点击

c - 通过 c 中的管道而不是文件将数据数组传递给 gnuplot