当前位置:  编程技术>c/c++/嵌入式

vc++实现的tcp socket客户端和服务端示例

    来源: 互联网  发布时间:2014-10-24

    本文导语:  Tcp Server 代码如下:#include #include #pragma comment(lib, "ws2_32.lib") int main(){ // initial socket library WORD wVerisonRequested; WSADATA wsaData; int err; wVerisonRequested = MAKEWORD(1, 1); err = WSAStartup(wVerisonRequested, &wsaData); if (err != 0) {  return -1; } //if (...

Tcp Server

代码如下:

#include
#include

#pragma comment(lib, "ws2_32.lib")

int main()
{
 // initial socket library
 WORD wVerisonRequested;
 WSADATA wsaData;
 int err;
 wVerisonRequested = MAKEWORD(1, 1);
 err = WSAStartup(wVerisonRequested, &wsaData);
 if (err != 0)
 {
  return -1;
 }
 //if (LOBYTE(wsaData.wVersion) != 1 ||
 // HIBYTE(wsaData.wHighVersion) != 1)
 //{
 // WSACleanup();
 // return -1;
 //}

 // create socket
 SOCKET sockServer = socket(AF_INET, SOCK_STREAM, 0);

 // bind socket
 SOCKADDR_IN addrServer;
 addrServer.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
 addrServer.sin_family = AF_INET;
 addrServer.sin_port = htons(6000);
 bind(sockServer, (SOCKADDR *)&addrServer, sizeof(addrServer));

 // listen
 listen(sockServer, 5);

 SOCKADDR_IN addrClient;
 int len = sizeof(addrClient);
 while(1)
 {
  // accept
  SOCKET sockConnection = accept(sockServer, (SOCKADDR *)&addrClient, &len);

  // send
  char sendBuf[100];
  sprintf(sendBuf, "Welcome %s", inet_ntoa(addrClient.sin_addr));
  send(sockConnection, sendBuf, strlen(sendBuf)+1,0);

  // receive
  char recvBuf[100];
  recv(sockConnection, recvBuf, 100, 0);

  //
  printf("%s", recvBuf);

  // close connection socket
  closesocket(sockConnection);
 }

}

Tcp Client

代码如下:

#include
#include

#pragma comment(lib, "ws2_32.lib")

int main()
{
 // initial socket library
 WORD wVerisonRequested;
 WSADATA wsaData;
 int err;
 wVerisonRequested = MAKEWORD(1, 1);
 err = WSAStartup(wVerisonRequested, &wsaData);
 if (err != 0)
 {
  return -1;
 }
 //if (LOBYTE(wsaData.wVersion) != 1 ||
 // HIBYTE(wsaData.wHighVersion) != 1)
 //{
 // WSACleanup();
 // return -1;
 //}

 // create socket
 SOCKET sockClient = socket(AF_INET, SOCK_STREAM, 0);

 // connect server socket
 SOCKADDR_IN addrServer;
 addrServer.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
 addrServer.sin_family = AF_INET;
 addrServer.sin_port = htons(6000);
 connect(sockClient, (SOCKADDR *)&addrServer, sizeof(addrServer));

 // receive
 char recvBuf[100];
 recv(sockClient, recvBuf, 100, 0);

 //
 printf("%s", recvBuf);

 // send
 char sendBuf[100] = "this is lisin";
 send(sockClient, sendBuf, strlen(sendBuf)+1,0);

 // close connection socket
 closesocket(sockClient);

 // clean socket library
 WSACleanup();
}


    
 
 

您可能感兴趣的文章:

  • 基于DIV+ul+li实现的表格(多示例)
  • python实现绘制树枝简单示例
  • c语言实现MD5算法完整代码示例
  • ThinkPHP实现事务回滚示例代码
  • 使用libpcap实现抓包程序的步骤及代码示例
  • 修改.htaccess实现301域名重定向示例分享
  • c++实现MD5算法代码示例
  • php实现数组筛选奇数和偶数示例
  • java Servlet实现Session创建存取以及url重写代码示例
  • python实现倒计时的示例
  • 数据结构:图(有向图,无向图),在Python中的表示和实现代码示例
  • python使用循环实现批量创建文件夹示例
  • android实现来电静音示例(监听来电)
  • strcpy函数实现简示例命分享
  • strcat函数实现简单示例
  • java实现jframe透明窗体示例
  • Thinkphp实现MySQL读写分离操作示例
  • C++实现顺序排序算法简单示例代码
  • c#实现md5加密示例
  • java实现网页解析示例
  • python实现图片批量剪切示例
  • php实现socket实现客户端和服务端数据通信源代码
  • Linux网络编程(怎样实现两个客户端之间的通信)
  • Linux c socket编程:简单的客户端(client)和服务端(server)实现
  • Java的SAMBA客户端实现 jCIFS
  • 如何用代码实现一个samba客户端??
  • 怎样实现从服务器发串字符到客户端
  • 我想把文件自动拷到客户端,怎么实现?
  • jsp如何实现往客户端写数据文件
  • 请问linux写socket的客户端如何实现WSAAsyncSelect
  • 特急!!!怎样用JAVA代码实现对web客户端用户licence管理(如:licence限定为5用户)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 我想用APPLET实现读取客户端的图片文件,该如何实现?
  • 可不可以在程序中直接使用ftp客户端的函数实现文件传输?
  • 在网页中能否用applet实现两个客户端的直接通信?急!!!
  • linux下FTP服务器与客户端的C语言实现
  • 如何实现将客户机上的word文件,以B/S方式最终存入oracle数据库?
  • 谁能帮我讲下服务器和客户端的心跳机制如何实现
  • 如何实现虚拟客户机linux系统与主机Windows的文件共享或互访?
  • LINUX下SMB具体怎么实现向客户端即时发送弹出式消息?
  • 成功实现应用程序和Oracle客户端一起打包
  • 想实现一个程序 UDP例程的。 实现2个客户端通信, 而不是客户端于服务器的通信,大家帮忙想下怎么写啊。下面是我写的客户端和服务器的通信。 服务器作为中转数据
  • 客户端实现蓝牙接收(C#)知识总结
  • thrift服务端和客户端实现 Nifty
  • 一个J2EE应用需要同客户端保持一个安全的(SSL/HTTPS)长连接,请问此部分的代码应该用什么J2EE component来实现,Session EJB or Servle
  • 50分!几个小问题。对于一个J2EE项目:怎样实现对客户端数目的控制(如:licence限定为5用户,10用户)?...
  • c# socket编程udp客户端实现代码分享
  • 自己完成ftp客户端的实现,怎么显示远程ftp站点的制定目录下的所有文件??
  • 请教各位:一台机器如何实现既做NTP服务器又做NTP客户端
  • Web系统通过EXE文件实现读取客户电脑MAC等硬件信息且兼容非IE浏览器
  • C#实现的Socket服务器端、客户端代码分享
  • 如何用单线程实现和多个客户机通讯?
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • socket实现多文件并发传输,求助多线程实现问题?
  • Python GUI编程:tkinter实现一个窗口并居中代码
  • interface 到底有什么用???实现接口,怎么实现??
  • 通过javascript库JQuery实现页面跳转功能代码
  • 怎么用Jsp实现在页面实现树型结构?
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • windows 下的PortTunnel 在linux下怎么实现?或者相应的已经实现的软件?端口映射
  • flash AS3反射实现(describeType和getDefinitionByName)
  • 网站重定向用C语言实现iptables,ACL实现
  • boost unordered_map和std::list相结合的实现LRU算法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3