基于TCP协议的”hello world“
2015-12-19 17:39
477 查看
服务器端
客户端
服务器端
客户端
#include "iostream" #include "winsock2.h" #pragma comment (lib, "ws2_32") using namespace std; int main() { WSADATA wsaData; WSAStartup(MAKEWORD(2, 2), &wsaData); //初始化ws2_32.dll动态库连接 SOCKET s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); sockaddr_in sockaddr; sockaddr.sin_family = PF_INET; sockaddr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1"); //IP地址,将IP转换为unsigned long型数值 sockaddr.sin_port = htons(827); //端口号,本地字节顺序转换为网络字节顺序 bind(s, (SOCKADDR*)&sockaddr, sizeof(SOCKADDR)); listen(s, 1); SOCKADDR clientAddr; int nSize = sizeof(SOCKADDR); SOCKET clientSock; //从处于监听状态的流套接字的客户端请求队列中取出第一个请求,并创建一个新的套接字与客户端进行通信 clientSock = accept(s, (SOCKADDR *)&clientAddr, &nSize); send(clientSock, "hello client\n", strlen("hello client\n")+sizeof(char), 0); closesocket(clientSock); closesocket(s); WSACleanup(); //释放ws2_32.dll return 0; }
客户端
#include "stdio.h" #include "winsock2.h" #pragma comment (lib, "ws2_32") int main() { WSADATA wsaData; WSAStartup(MAKEWORD(2, 2), &wsaData); SOCKET s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); sockaddr_in sockAddr; //对服务器端的描述 sockAddr.sin_family = PF_INET; sockAddr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1"); sockAddr.sin_port = htons(827); connect(s, (SOCKADDR *)&sockAddr, sizeof(SOCKADDR)); char szBuffer[MAXBYTE] = {0}; recv(s, szBuffer, MAXBYTE, 0); printf("szBuffer = %s\n", szBuffer); closesocket(s); WSACleanup(); return 0; }
服务器端
客户端
相关文章推荐
- iOS 数据库离线缓存思路和网络层封装
- 网络数据的请求
- 黑马程序员_Java基础-网络编程
- CSingleLock::CSingleLock https://msdn.microsoft.com/zh-cn/library/fw63hszf.aspx
- HTTPClient
- CSingleLock http://bbs.csdn.net/topics/310164806
- android网络编程之HttpUrlConnection的讲解--POST请求
- BZOJ1146: [CTSC2008]网络管理Network
- Windows MFC的同步类 http://blog.sina.com.cn/s/blog_627ebfc30100iman.html
- android网络编程之HttpUrlConnection的讲解--GET请求
- http://www.cnblogs.com/yanhan/archive/2013/01/26/2877889.html
- 黑马程序员——第十五篇:线程池、单例设计模式、图形化界面、网络编程
- 使用Jmeter进行http接口性能测试
- Android网络服务发现(NSD)协议的使用
- ubuntu14.04下unix网络编程 环境的配置
- 图解 TCP/IP 协议
- iOS开发网络篇—数据缓存
- HttpURLConnection用法
- apache httpd-2.4.18 安装教程
- Volley的网络请求有内存溢出现象学到的一点知识