楼主: 面包加火腿

求解select函数为啥一直返回值为0

[复制链接]
发表于 2016-1-27 11:08:54 | 显示全部楼层 |阅读模式
[C++] 纯文本查看 复制代码
int CConnectScan::scan(const char *IP,int start,int stop)
{
	WORD wVersion;
	WSADATA WsaData;
	int time;
	struct timeval timeout;
	struct fd_set fdset;
	wVersion = MAKEWORD(2, 2);
	if (WSAStartup(wVersion, &WsaData) != 0)    //初始化Winsock DLL
	{
		printf("未找到可用winsock.dll! \n");
		return -1;
	}
	SOCKET PortScanSock = socket(AF_INET, SOCK_STREAM, 0);
	unsigned long ul = 1;
	if (ioctlsocket(PortScanSock, FIONBIO, (unsigned long*)&ul) == SOCKET_ERROR)
		return 0;
	SOCKADDR_IN ADDR;
	ADDR.sin_family = AF_INET;
	ADDR.sin_addr.S_un.S_addr = inet_addr(IP);
	for (int Port = start; Port <= stop; Port++)
	{
		if (PortScanSock == NULL)
			PortScanSock = socket(AF_INET, SOCK_STREAM, 0);
		ADDR.sin_port = (Port);
		connect(PortScanSock, (sockaddr*)&ADDR, sizeof(ADDR));
		FD_ZERO(&fdset);
		FD_SET(PortScanSock, &fdset);
		timeout.tv_sec = 0;
		timeout.tv_usec = 500 * 1000;
		time = select(PortScanSock + 1, 0, &fdset, 0, &timeout);
		PortDetil result;
		result.PortNum = Port;
		if (time <= 0)
		{
			result.OpenFlag = 0;
			list.push_back(result);
		}
		else
		{
			result.OpenFlag = 1;
			list.push_back(result);
			closesocket(PortScanSock);
			PortScanSock = NULL;
		}
	}
}


刚学网络编程不是很懂,select返回值一直为0,百度了一下没改过来==!好悲剧
回复

使用道具 举报

发表于 2016-1-27 11:20:53 | 显示全部楼层
刚学得有必要学的那么深吗?99乘法表那些算法懂了没?

点评

初学网络编程,不是初学编程,动态规划,贪婪这些算法也都学过了,虽然不精通懂得少,但至少会用可以做OJ的算法题。我问的不够谦虚?有必要提算法么?  详情 回复 发表于 2016-1-27 11:29
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-27 11:29:41 | 显示全部楼层
昊情· 发表于 2016-1-27 11:20
刚学得有必要学的那么深吗?99乘法表那些算法懂了没?

初学网络编程,不是初学编程,动态规划,贪婪这些算法也都学过了,虽然不精通懂得少,但至少会用可以做OJ的算法题。我问的不够谦虚?有必要提算法么?
回复 支持 反对

使用道具 举报

发表于 2016-1-29 09:12:00 | 显示全部楼层
学习学习技术,加油!
回复 支持 反对

使用道具 举报

发表于 2016-1-29 15:02:20 | 显示全部楼层
学习学习技术,加油!
回复 支持 反对

使用道具 举报

发表于 2016-1-30 06:25:24 | 显示全部楼层
还是不错的哦,顶了
回复 支持 反对

使用道具 举报

发表于 2016-1-30 09:54:18 | 显示全部楼层
学习学习技术,加油!
回复 支持 反对

使用道具 举报

发表于 2016-1-30 13:45:54 | 显示全部楼层
感谢楼主的分享~
回复 支持 反对

使用道具 举报

发表于 2016-1-30 21:14:07 | 显示全部楼层
还是不错的哦,顶了
回复 支持 反对

使用道具 举报

发表于 2016-1-30 23:59:53 | 显示全部楼层
还是不错的哦,顶了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

旗下站点

邮箱系统

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2025-3-7 03:12 , Processed in 0.024035 second(s), 9 queries , Gzip On, MemCache On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部