happy_xiaofengfeng 2014-10-26 06:53
浏览 646

我想问问这个程序中用了什么算法

#include
#include
#pragma comment(lib,"ws2_32.lib")

int main(int argc, char **argv)
{
//创建套接字
WORD myVersionRequest;
WSADATA wsaData;
myVersionRequest = MAKEWORD(1, 1);
int err;
err = WSAStartup(myVersionRequest, &wsaData);
if (!err)
{
printf("已打开套接字\n");
}
else
{
printf("ERROR:嵌套字未打开!");
return 1;
}
//进一步绑定套接字
SOCKET serSocket = socket(AF_INET, SOCK_STREAM, 0);//创建了可识别套接字

//需要绑定的参数
SOCKADDR_IN addr;
addr.sin_family = AF_INET;
addr.sin_addr.S_un.S_addr = htonl(INADDR_ANY);//ip地址
addr.sin_port = htons(6000);//绑定端口

bind(serSocket, (SOCKADDR*)&addr, sizeof(SOCKADDR));//绑定完成
listen(serSocket, 5);//其中第二个参数代表能够接收的最多的连接数

//////////////////////////////////////////////////////////////////////////
//开始进行监听
//////////////////////////////////////////////////////////////////////////
SOCKADDR_IN clientsocket;
int len = sizeof(SOCKADDR);
while (1)
{
    SOCKET serConn = accept(serSocket, (SOCKADDR*)&clientsocket, &len);//如果这里不是accept而是conection的话。。就会不断的监听
    char sendBuf[100];

    sprintf_s(sendBuf, "hello, %s !", inet_ntoa(clientsocket.sin_addr));//找对对应的IP并且将这行字打印到那里
    printf("Send:%s\n", sendBuf);
    send(serConn, sendBuf, strlen(sendBuf) + 1, 0);

    char receiveBuf[100];//接收
    recv(serConn, receiveBuf, sizeof(receiveBuf), 0);
    printf("recv:%s\n", receiveBuf);

    closesocket(serConn);//关闭
    WSACleanup();//释放资源的操作
    return 0;
}
return 1;

}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥30 这是哪个作者做的宝宝起名网站
    • ¥60 版本过低apk如何修改可以兼容新的安卓系统
    • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
    • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
    • ¥50 有数据,怎么用matlab求全要素生产率
    • ¥15 TI的insta-spin例程
    • ¥15 完成下列问题完成下列问题
    • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
    • ¥15 YoloV5 第三方库的版本对照问题
    • ¥15 请完成下列相关问题!