孙鑫VC++ 网络编程问题

chenxue1111 chenxue1111 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
按书上过程编写了 服务器端程序和客户端程序进行通信,怎么调试两个工程
服务器端代码

#include <WinSock2.h>
#include <iostream>
#include <stdio.h>
void main()
{
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD(1,1);
err = WSAStartup(wVersionRequested,&wsaData);
if (err != 0)
{
return;
}

if (LOBYTE(wsaData.wVersion) != 1||
HIBYTE( wsaData.wVersion ) != 1 )
{
WSACleanup();
return;
}
//创建套接字
SOCKET socksrv = socket(AF_INET,SOCK_STREAM,0);

SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
addrSrv.sin_family = AF_INET;
addrSrv.sin_port = htons(6000);

//绑定套接字
bind(socksrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));
//将套接字设为监听模式,准备接收客户请求
listen(socksrv,5);

SOCKADDR_IN addrClient;
int len = sizeof(SOCKADDR);

while (1)
{
SOCKET sockConn = accept(socksrv,(SOCKADDR*)&addrClient,&len);
char sendBuf[100];
sprintf(sendBuf,"s%",inet_ntoa(addrClient.sin_addr));
//发送数据
send(sockConn,sendBuf,strlen(sendBuf)+1,0);
char recvBuf[100];
//接收数据
recv(sockConn,recvBuf,100,0);
//打印
printf("s%\n",recvBuf);
//关闭套接字
closesocket(sockConn);
}
}

客户端代码:

#include <WinSock2.h>
#include <stdio.h>
void main()
{
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD(1,1);

err = WSAStartup(wVersionRequested,&wsaData);
if (err != 0 )
{
return;
}

if (LOBYTE(wsaData.wVersion )!= 1||
HIBYTE( wsaData.wVersion )!= 1 )
{
WSACleanup();
return;
}

SOCKET sockClient = socket(AF_INET,SOCK_STREAM,0);

SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
addrSrv.sin_family = AF_INET;
addrSrv.sin_port = htons(6000);

connect(sockClient,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));

char recvBuf[100];
recv(sockClient,recvBuf,100,0);
printf("s%\n",recvBuf);

send(sockClient,"This is lisi",strlen("This is lisi")+1,0);
closesocket(sockClient);
WSACleanup();
}

问题:
一个解决方案下两个工程,怎么调试,是我调试方法问题吗?
...全文

相关推荐

评论 11
收藏 已收藏
分享
返回顶部
chenxue1111
新手乐园 33,315 成员 41,769 内容