⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chat_server.cpp

📁 一个简单的局域网聊天软件,(一个很厉害的网络老师留的作业)。
💻 CPP
字号:
#include<iostream.h>
#include<winsock.h>
#include<stdio.h>
#pragma   comment(lib,"ws2_32.lib")
/////////////////////////////
void main()
{
	WSADATA wsaData;//初始化
	if(WSAStartup(MAKEWORD(2,2),&wsaData)!=0 )
	{
		printf("失败加载sock\n");
		return;   
	}
	SOCKET wang;//创建一个会话
	wang=socket(AF_INET,SOCK_DGRAM,0);
	if(wang==SOCKET_ERROR)
	{
		cout<<"发生错误\n";
	}
    else 
		cout<<"创建成功\n";
	///////////////
   	sockaddr_in kun;
	kun.sin_family=AF_INET;
	kun.sin_port=5000;//设置端口
	kun.sin_addr.S_un.S_addr=(102<<24)|(1<<16)|(168<<8)|192;//设置IP
	if(bind(wang,(sockaddr*)&kun,sizeof(kun))==SOCKET_ERROR)//调用bind函数来给其绑定一个IP地址和一个特定的端口号
	{cout<<"绑定通信对象不成功\n";}
	else
	{	cout<<"绑定通信对象成功\n";
	    
	}
	/////////////////
	int num=sizeof(kun);
	char w_recv[50];
	int wRecv;
    memset(w_recv,0,sizeof(w_recv));
	wRecv=recvfrom(wang,w_recv,50,0,(SOCKADDR*)&kun,&num);
	if(wRecv==SOCKET_ERROR)
	{
		cout<<"有错误\n";
		return;
	}
	else if(wRecv==0)
		return;
		else
		{
		cout<<"成功接收\n";
		
		}
	/////////////////////////////////
	int wSend;
	char w_send[50]="您好,我是服务器!可以通信!";

	wSend=sendto(wang,w_send,50,0,(SOCKADDR*)&kun,num);//发送数据
	if(wSend==SOCKET_ERROR)
	{
		cout<<"通信失败\n";
		return;
	}
	else if(wSend==0)
		return;
	     else
	cout<<w_recv;
    cout<<"\n";
    cout<<"*******************************************************\n";
   
	///////////////////////////////////////////////

        int n=sizeof(kun);
	    char wk_recv[100];
	    int wkRecv;
		int l=sizeof(kun);
	    int wkSend;
	    char k_send[100];
        
		memset(wk_recv,0,sizeof(wk_recv));
    while(1)
	{
		wkRecv=recvfrom(wang,wk_recv,50,0,(SOCKADDR*)&kun,&n);//接收数据
	    cout<<"客户端:"<<wk_recv;
	    cout<<"\n";

		//////////////////////////////////////////////////////////////////
	
	/*int l=sizeof(kun);
	    int wkSend;
	    char k_send[100];*/
	    cout<<"服务器:";
		cin>>k_send;
        wkSend=sendto(wang,k_send,100,0,(SOCKADDR*)&kun,l);
       
	}
	closesocket(wang);
	WSACleanup();

}

        

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -