client.cpp


#include <stdio.h>

#include <winsock2.h>

#pragma comment (lib,"ws2_32")



//流程

//WSAStarup socket connect recv/send closesocket WSACleanup

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

{

     WSADATA wsaData;

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



     SOCKET s = socket(PF_INET,SOCK_STREAM,IPPROTO_TCP);



     sockaddr_in addr;

     addr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");

     addr.sin_family = PF_INET;

     addr.sin_port = htons(827);



     connect(s,(SOCKADDR*)&addr,sizeof(SOCKADDR));



     char szBuffer[MAXBYTE] = {0};

     recv(s,szBuffer,MAXBYTE,NULL);



     printf("szBuffer = %s \r\n",szBuffer);



     closesocket(s);



     WSACleanup();



     return 0;

}

Server.cpp



//WSAStartup socket bind listen accept send/recv closesocket WSACleanup

#include <winsock2.h>

#pragma comment (lib,"ws2_32")



int main(int argc , char* grgv[])

{

     WSADATA wsaData;

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



     SOCKET s = socket(PF_INET,SOCK_STREAM,IPPROTO_TCP);



     sockaddr_in addr;

     addr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");

     addr.sin_port = htons(827);

     addr.sin_family = PF_INET;



     bind(s,(SOCKADDR*)&addr,sizeof(SOCKADDR));



     listen(s,1);



     SOCKADDR clientAddr;

     int nSize = sizeof(SOCKADDR);

     SOCKET clientSock;



     clientSock = accept(s,(SOCKADDR*)&clientAddr,&nSize);



     send(clientSock,"hello client \r\n",strlen("hello client \r\n" + sizeof(char)),NULL);



     closesocket(clientSock);

     closesocket(s);



     WSACleanup();

     return 0;

}

TCP HelloWord的更多相关文章

  1. python笔记8 socket(TCP) subprocess模块 粘包现象 struct模块 基于UDP的套接字协议

    socket 基于tcp协议socket 服务端 import socket phone = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 买 ...

  2. Tcp/ip 报文解析

    在编写网络程序时,常使用TCP协议.那么一个tcp包到底由哪些东西构成的呢?其实一个TCP包,首先需要通过IP协议承载,而IP报文,又需要通过以太网传送.下面我们来看看几种协议头的构成 一 .Ethe ...

  3. C#高性能TCP服务的多种实现方式

    哎~~ 想想大部分园友应该对 "高性能" 字样更感兴趣,为了吸引眼球所以标题中一定要突出,其实我更喜欢的标题是<猴赛雷,C#编写TCP服务的花样姿势!>. 本篇文章的主 ...

  4. Android实现TCP断点上传,后台C#服务实现接收

    终端实现大文件上传一直都是比较难的技术,其中涉及到后端与前端的交互,稳定性和流量大小,而且实现原理每个人都有自己的想法,后端主流用的比较多的是Http来实现,因为大多实现过断点下载.但稳定性不能保证, ...

  5. 漫谈TCP

    不得不承认,tcp是一个非常复杂的协议.它包含了RFC793及之后的一些协议.能把tcp的所有方面面面具到地说清楚,本身就是个很复杂的事情.如果再讲得枯燥,那么就会更让人昏昏欲睡了.本文希望能尽量用稍 ...

  6. 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.1.1

    HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...

  7. TCP/IP基础

    TCP/IP 是用于因特网 (Internet) 的通信协议. 计算机通信协议是对那些计算机必须遵守以便彼此通信的规则的描述. 什么是 TCP/IP? TCP/IP 是供已连接因特网的计算机进行通信的 ...

  8. TCP/IP之TCP_NODELAY与TCP_CORK

    TCP/IP之Nagle算法与40ms延迟提到了Nagle 算法.这样虽然提高了网络吞吐量,但是实时性却降低了,在一些交互性很强的应用程序来说是不允许的,使用TCP_NODELAY选项可以禁止Nagl ...

  9. TCP/IP之Nagle算法与40ms延迟

    Nagle算法是针对网络上存在的微小分组可能会在广域网上造成拥塞而设计的.该算法要求一个TCP连接上最多只能有一个未被确认的未完成的小分组,在该分组确认到达之前不能发送其他的小分组.同时,TCP收集这 ...

随机推荐

  1. VMware系统运维(十八)部署虚拟化桌面 通过View Client进行连接测试

    1.打开VMware Horizon View Client添加服务器,配置连接服务器的IP地址等信息 2.点击云图标进行连接,点击继续,证书部分我们后面再讲 3.输入用户名密码,点击"登录 ...

  2. linux之磁盘配额(quota)

    1.什么是quota 简单的说就是限制用户对磁盘空间的使用量. 因为Linux是多用户多任务的操作系统,许多人共用磁盘空间,为了合理的分配磁盘空间,于是就有了quota的出现. 2.quota的用途  ...

  3. .net4.0中使用ODP.net访问Oracle数据库(无需安装oracle客户端部署方法)

    1.在没有安装oracle客户端的设备上也能访问服务器上的oracle (通俗的讲就是:开发的应用程序 和 oracle数据库服务器分别在两台电脑上)2.不需要配置TnsNames.Ora文件 开发环 ...

  4. poj 3034 动态规划

    思路:这是一道坑爹的动态规划,思路很容易想到,就是细节. 用dp[t][i][j],表示在第t时间,锤子停在(i,j)位置能获得的最大数量.那么只要找到一个点转移到(i,j)收益最大即可. #incl ...

  5. WPF ScrollViewer(滚动条) 自定义样式表制作 再发一套样式 细节优化

    艾尼路 出的效果图 本人嵌套 WPF ScrollViewer(滚动条) 自定义样式表制作 图文并茂 WPF ScrollViewer(滚动条) 自定义样式表制作 (改良+美化) 源代码

  6. (转)浅谈.NET下的多线程和并行计算(一)前言

    转载——原文地址:http://www.cnblogs.com/lovecindywang/archive/2009/12/25/1632014.html 作为一个ASP.NET开发人员,在之前的开发 ...

  7. Part 30 to 31 Talking about Interfaces in c#

    Part 30 Interfaces in c# We create interfaces using interface keyword. just like classes interfaces ...

  8. Linux 系统中用户切换(su user与 su - user 的区别)

    1. Linux系统中用户切换的命令为su,语法为: su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]] 参 ...

  9. JS中NULL和undifined区别及NULL的作用

    1.博客地址:http://www.cnblogs.com/eastday/archive/2010/03/03/1677324.html 2.参考地址2:https://www.zhihu.com/ ...

  10. php中sprintf与printf函数用法区别

    下面是一个示例:四舍五入保留小数点后两位  代码如下 复制代码 <?php$num1 = 21;echo sprintf("%0.2f",$num1)."<b ...