c语言简单socket通信_socket通信c语言实现

2020-02-28 其他范文 下载本文

c语言简单socket通信由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“socket通信c语言实现”。

server:

#include

#include

#pragma comment(lib,“ws2_32.lib”)

int main(int argc, char* argv[]){

//³õʼ»¯WSA

WORD sockVersion = MAKEWORD(2,2);WSADATA wsaData;if(WSAStartup(sockVersion, &wsaData)!=0){return 0;} //´´½¨Ì×½Ó×Ö SOCKET slisten = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if(slisten == INVALID_SOCKET){printf(“socket error!”);return 0;} //°ó¶¨IPºÍ¶Ë¿Ú sockaddr_in sin;sin.sin_family = AF_INET;sin.sin_port = htons(8888);sin.sin_addr.S_un.S_addr = INADDR_ANY;if(bind(slisten,(LPSOCKADDR)&sin, sizeof(sin))== SOCKET_ERROR){printf(“bind error!”);} //¿ªÊ¼¼àÌý if(listen(slisten, 5)== SOCKET_ERROR){} //Ñ-»·½ÓÊÕÊý¾Ý SOCKET sClient;sockaddr_in remoteAddr;printf(“listen error!”);return 0;

char revData[255];while(true){printf(“µÈ´ýÁ¬½Ó...n”);sClient = accept(slisten,(SOCKADDR *)&remoteAddr, &nAddrlen);if(sClient == INVALID_SOCKET)

{

printf(“accept error!”);

continue;

}

printf(“½ÓÊܵ½Ò»¸öÁ¬½Ó£º%s

inet_ntoa(remoteAddr.sin_addr));

//½ÓÊÕÊý¾Ý

int ret = recv(sClient, revData, 255, 0);

if(ret > 0)

{

revData[ret] = 0x00;

printf(revData);

}

//·¢ËÍÊý¾Ý

char * sendData = ”ÄãºÃ£¬TCP¿Í»§¶Ë£¡n“;

send(sClient, sendData, strlen(sendData), 0);

closesocket(sClient);

}

closesocket(slisten);

WSACleanup();

return 0;

}

client:

#include

#include

#pragmacomment(lib,”ws2_32.lib“)

rn”,int main(int argc, char* argv[])

{

WORD sockVersion = MAKEWORD(2,2);

WSADATA data;

if(WSAStartup(sockVersion, &data)!= 0)

{

return 0;

}

SOCKET sclient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if(sclient == INVALID_SOCKET)

{

printf(“invalid socket!”);

return 0;

}

sockaddr_in serAddr;

serAddr.sin_family = AF_INET;

serAddr.sin_port = htons(8888);

serAddr.sin_addr.S_un.S_addr = inet_addr(“127.0.0.1”);

if(connect(sclient,(sockaddr *)&serAddr, sizeof(serAddr))SOCKET_ERROR)

{

printf(“connect error!”);

closesocket(sclient);

return 0;

}

char * sendData = “ÄãºÃ£¬TCP·þÎñ¶Ë£¬ÎÒÊÇ¿Í»§¶Ë!n”;

send(sclient, sendData, strlen(sendData), 0);

char recData[255];

int ret = recv(sclient, recData, 255, 0);

if(ret > 0)

{

recData[ret] = 0x00;

printf(recData);

}

closesocket(sclient);

WSACleanup();

return 0;

} ==

socket通信原理

 Socket原理,大致分为以下几个步骤。服务器端的步骤如下。(1)首先,在实用Socket之前,要首先初始化Socket,就是实用AfxSocketInit()函数。(2)在初始化完成以后,就可以建立服务端的Socket......

vc socket通信实例总结

VC++ socket通信实例 总结1.两天计算机通信需要协议,通信的两台计算机IP必须唯一2.同一个计算机可以进行多个应用程序与其他计算机通信,IP地址唯一,而端口号是区别同一计算机(同......

Socket模型详解

Winsock 的I/O操作:1、两种I/O模式阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序。套接字 默认为阻塞模式。可以通过多线程技术进行处理。非阻塞模式:执行I/O......

Socket模型详解

Socket模型详解 Winsock 的I/O操作: 1、两种I/O模式 阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序。套接字 默认为阻塞模式。可以通过多线程技术进行处理。......

C语言socket课程设计报告[小编推荐]

第1章 概述TCP (Transmiion Control Protocol)和UDP(User Datagram Protocol)协议属于传输层协议。其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送、可靠性......

《c语言简单socket通信.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
c语言简单socket通信
点击下载文档
相关专题 socket通信c语言实现 通信 语言 简单 socket通信c语言实现 通信 语言 简单
[其他范文]相关推荐
[其他范文]热门文章
下载全文