使用 Select() 并返回"no error"错误
Using Select() and getting "no error" errors returned
我在使用Select()来确定套接字上何时有数据可供读取时遇到了一些问题。我希望我连接的套接字没有数据,因此select返回超时或0值。相反,我得到-1的值,消息是"error:no-error"
我有与此示例非常相似的代码:https://beej.us/guide/bgnet/html/multi/selectman.html
我在这里读了几遍select()文档:msdn.microsoft.com/en-us/library/windows/desktop/ms740141(v=vs.85).aspx
任何想法都将不胜感激。谢谢
具体说明:C++、Win XP、Microsoft Visual C++2010
在实际创建套接字之前,您正在将套接字添加到fd_set结构中:
FD_SET(s, &readfds);
// (...)
int iConnected = ConnectToHost(PortNum, IpAddy);
//^ This actually calls: s = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
因此,您正在向fd_set添加一个无效的套接字。在此之前创建套接字:
int iConnected = ConnectToHost(PortNum, IpAddy);
//(...)
FD_SET(s, &readfds);
相关文章:
- "error: no matching function for call to"构造函数错误
- 已解决 - C++ 的崇高文本中的"fatal error: opencv: no such file or directory"
- 在 Eclipse: "error: no match for 'operator='" 中获取错误消息
- C++ "error: no matching function"
- 尝试打印字符串时"Python Exception <class 'gdb.error'> There is no member named _M_dataplus."
- "error: no matching function for call to",我无法更改结构的定义
- QT "relocation error" / "no version information available"运行时错误
- 我的程序显示许多错误,"error: no matching function for call to 'getPercentScore'"
- "error: no matching function for call to ‘push_back(char [6])" .如何解决此代码中的错误?
- add_edge导致"no function to call error"
- 如何在安装了 WSL 的 Visual Studio Code 中修复"g++: error: helloworld.cpp: No such file or directory"?
- 尝试使用生成文件编译程序时"fatal error: boost/regex.hpp: No such file or directory" C++
- 如何修复从基类继承两次时"error: no matching function for call to"
- 提升::访客操作员过载的变体"Error: no match for call to [...]"
- 运算符重载错误"no match for operator error"
- 如何修复"fatal error: boost/asio.hpp: no such file or directory"?
- 我正在尝试在Visual Studio 2013中编写我的第一个"Hello World"代码。为什么我会收到"IntelliSense: no operator message"和"error C2
- 如何在没有"fatal error: Wt/WApplication: No such file or directory"的情况下将wt安装到自定义文件夹中
- 流行的(c ++)"error: no matching function for call to ... ",虽然踢了一脚
- 使用 Select() 并返回"no error"错误