c语言70行程序,c网络编程题题目要求:<br/>1程序在70行以内最好br/ 爱问知识人...

客户端:

#include

#include

#include

#pragma comment(lib, "Ws2_32。lib")

using namespace std;

#define MY_PORT 22222

char g_Buf[1024] = {0};

void main()

{

//网络环境

WSADATA wsaData;

//设置套接字版本号为v2。

2

WSAStartup(MAKEWORD(2, 2), &wsaData);

cout > cServerIP;

ServerAddr。sin_addr。

s_addr = inet_addr(cServerIP);    //设置访问地址 inet_addr - 将字符串形式的IP地址转换为无符号长整形IP地址

cout > g_Buf;

int iSend = send(sock, g_Buf, int(strlen(g_Buf) 1), 0);

if (SOCKET_ERROR == iSend)

{

cout

#include

#pragma comment(lib, "Ws2_32。

lib")

using namespace std;

#define MY_PORT 22222   // 端口

char g_Buf[1024] = {0}; //缓冲区

void main()

{

WSADATA wsaData;   //网络环境

WSAStartup(MAKEWORD(2, 2), &wsaData);    //设置套接字版本号为v2。

2

cout << "服务器:开启网络链接。。。" << endl;

Sleep(1500);

system("cls");

SOCKET sListen;       //定义监听套接字

sListen = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); //初始化监听套接字

SOCKADDR_IN Sadd = {};

Sadd。

sin_family = AF_INET;   //设置协议为TCP协议

Sadd。sin_port = /*htons(MY_PORT)*/MY_PORT;  //设置端口

int SockAddSize = sizeof(SOCKADDR_IN);  //套接字数据结构大小

bind(sListen, (SOCKADDR*)&Sadd, SockAddSize);  //绑定套接字

cout << "服务器:绑定端口。

。。" << endl;

Sleep(1500);

system("cls");

listen(sListen,SOMAXCONN);  //设置套接字为监听模式,设置能同时监听的最大客户数量

cout << "服务器:开始监听。

。。" << endl;

SOCKET sClient;   //客户端套接字

SOCKADDR_IN Cadd = {};  //客户端套接字数据,包含IP等总要信息

sClient = accept(sListen, (SOCKADDR*)&Cadd, &SockAddSize); //建立,等待连接

if (INVALID_SOCKET == sClient)

{

WSACleanup();

}

cout<< "服务器:客户端【" <<

(int)Cadd。

sin_addr。S_un。S_un_b。s_b1 << "。" <<

(int)Cadd。sin_addr。S_un。S_un_b。s_b2 << "。" <<

(int)Cadd。sin_addr。

S_un。S_un_b。s_b3 << "。" <<

(int)Cadd。sin_addr。S_un。S_un_b。s_b4 << "】已连接。。。" <

int iRecvNum = 0;         //接收字节的个数

while (1)

{

iRecvNum = recv(sClient, g_Buf, 1024, 0);   //接收数据

if (iRecvNum < 1)

{

cout << "服务器:客户端失去连接。

。。" << endl;

Sleep(1500);

system("cls");

break;

}

send(sClient, g_Buf, 1024, 0);

if (strcmp(g_Buf,"quit") == 0)

{

cout << "服务器:客户端发送退出命令。

。。" << g_Buf << endl;

break;

}

cout << "客户端" << /*Sadd。sin_port*/MY_PORT << "消息:" << g_Buf << endl;

}

cout << "服务器:准备关闭服务器。

。。" << endl;

closesocket(sListen);

closesocket(sClient);

WSACleanup();

Sleep(2000);

system("cls");

cout << "服务器:已经关闭服务器。

。。" << endl;

Sleep(2000);

}

启动的时候先启动服务器,然后启动客户端。

全部

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值