您现在的位置是:主页 > news > 网站后台管理程序下载/旺道seo网站优化大师

网站后台管理程序下载/旺道seo网站优化大师

admin2025/6/7 2:08:20news

简介网站后台管理程序下载,旺道seo网站优化大师,个人网站可以做商业吗,张家港网站建设价格windows下没有write read函数,没有一切皆文件的概念 shutclose函数与close、closesocket函数有啥不同? 在于shutdown仅仅是关闭网络连接,但却没有释放为了网络通信而申请的系统资源。 ws232.lib:支持socket // Server.cpp : D…

网站后台管理程序下载,旺道seo网站优化大师,个人网站可以做商业吗,张家港网站建设价格windows下没有write read函数,没有一切皆文件的概念 shutclose函数与close、closesocket函数有啥不同? 在于shutdown仅仅是关闭网络连接,但却没有释放为了网络通信而申请的系统资源。 ws232.lib:支持socket // Server.cpp : D…

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
windows下没有write read函数,没有一切皆文件的概念
在这里插入图片描述
shutclose函数与close、closesocket函数有啥不同?
在于shutdown仅仅是关闭网络连接,但却没有释放为了网络通信而申请的系统资源。

在这里插入图片描述
在这里插入图片描述
ws232.lib:支持socket
在这里插入图片描述
在这里插入图片描述

// Server.cpp : Defines the entry point for the console application.
//#include "stdafx.h"
#include <winsock2.h>int _tmain(int argc, _TCHAR* argv[])
{SOCKET server = 0;struct sockaddr_in saddr = {0};SOCKET client = 0;struct sockaddr_in caddr = {0};int asize = 0;int len = 0;char buf[32] = {0};int r = 0;WSADATA wd = {0};if( WSAStartup(MAKEWORD(2, 2), &wd) != 0 ){printf("startup error\n");return -1;}server = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);if( server == INVALID_SOCKET ){printf("server socket error\n");return -1;}saddr.sin_family = AF_INET;saddr.sin_addr.s_addr = htonl(INADDR_ANY);saddr.sin_port = htons(8888);if( bind(server, (struct sockaddr*)&saddr, sizeof(saddr)) == SOCKET_ERROR ){printf("server bind error\n");return -1;}if( listen(server, 1) == SOCKET_ERROR ){printf("server bind error\n");return -1;}printf("server start success\n");while( 1 ){asize = sizeof(caddr);client = accept(server, (struct sockaddr*)&caddr, &asize);if( client == INVALID_SOCKET ){printf("client accept error\n");return -1;}printf("client: %d\n", client);do{r = recv(client, buf, sizeof(buf), 0);if( r > 0 ){printf("Receive: %s\n", buf);if( strcmp(buf, "quit") != 0 ){len = send(client, buf, r, 0);}else{break;}}} while ( r > 0 );closesocket(client);}closesocket(server);WSACleanup();return 0;
}
// Client.cpp : Defines the entry point for the console application.
//#include "stdafx.h"
#include <winsock2.h>int _tmain(int argc, _TCHAR* argv[])
{SOCKET sock = 0;struct sockaddr_in addr = {0};int len = 0;char buf[128] = {0};char input[32] = {0};int r = 0;WSADATA wd = {0};if( WSAStartup(MAKEWORD(2, 2), &wd) != 0 ){printf("startup error\n");return -1;}sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);if( sock == INVALID_SOCKET ){printf("socket error\n");return -1;}addr.sin_family = AF_INET;addr.sin_addr.s_addr = inet_addr("127.0.0.1");addr.sin_port = htons(8888);if( connect(sock, (struct sockaddr*)&addr, sizeof(addr)) == SOCKET_ERROR ){printf("connect error\n");return -1;}printf("connect success\n");while( 1 ){printf("Input: ");scanf("%s", input);len = send(sock, input, strlen(input) + 1, 0);r = recv(sock, buf, sizeof(buf), 0);if( r > 0 ){printf("Receive: %s\n", buf);}else{break;}}closesocket(sock);WSACleanup();return 0;
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
红框框中仅仅是windows中的推荐用法…不这么用也可以的,就像Linux那用也是兼容的。但是Linux中的用法比Windows中的推荐用法for循环次数多,效率低下。