服务端

setlocale(LC_ALL,"Chinese-simplified");
 WORD wVersionRequested;
 WSADATA wsaData;
 int err;

wVersionRequested  = MAKEWORD(1,1);
 err = WSAStartup(wVersionRequested,&wsaData);
 if(err !=0 )
 {
  return;
 }
 if(LOBYTE(wsaData.wVersion)!=1 || HIBYTE(wsaData.wVersion) !=1)
 {
  WSACleanup();
  return;
 }
 SOCKET sockSrv = socket(AF_INET,SOCK_STREAM,0);
 if (INVALID_SOCKET == sockSrv)
 {
  return;
 }
 SOCKADDR_IN addrsrv;
 addrsrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
 addrsrv.sin_family = AF_INET;
 addrsrv.sin_port = htons(6000);

if(SOCKET_ERROR ==bind(sockSrv,(SOCKADDR*)&addrsrv,sizeof(SOCKADDR)))
 {
  return;
 }
 listen(sockSrv,5);

SOCKADDR_IN addrClient;
 int len = sizeof(SOCKADDR);
 while(1)
 {
  SOCKET sockConn =  accept(sockSrv,(SOCKADDR*)&addrClient,&len);
  /*const int iBufferSize = 1024;
  char recvBuf[iBufferSize]={0};
  memset(recvBuf,0,iBufferSize);*/
  const int iBufferSize = 1024;
  char recvBuf[iBufferSize];
  recv(sockConn,recvBuf,iBufferSize,0);
        RequestStruct  rs;
  memset( &rs,0,sizeof(rs));
  memcpy( &rs, recvBuf, sizeof(recvBuf) );
  client_OnStringData(rs);
 }

客户端:

WORD wVersionRequested;
 WSADATA wsaData;
 int err;

wVersionRequested  = MAKEWORD(1,1);
 err = WSAStartup(wVersionRequested,&wsaData);
 if(err !=0 )
 {
  return;
 }
 if(LOBYTE(wsaData.wVersion)!=1 || HIBYTE(wsaData.wVersion) !=1)
 {
  WSACleanup();
  return;
 }
 m_sockClient = socket(AF_INET,SOCK_STREAM,0);
 
 SOCKADDR_IN addrsrv;
 addrsrv.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
 addrsrv.sin_family = AF_INET;
 addrsrv.sin_port = htons(6000);
 
 connect(m_sockClient,(SOCKADDR*)&addrsrv,sizeof(SOCKADDR));
 {
  /*memcpy( rs.QueType, "MSG_CU_VIDEO_REQ", sizeof("MSG_CU_VIDEO_REQ") );
  send(m_sockClient,(char *)&rs,sizeof(RequestStruct),0);*/
  send(m_sockClient,(char *)m_requestStruct,sizeof(RequestStruct),0);
  
  /*RequestStruct  *rs;
  memcpy( rs.QueType, "MSG_CU_VIDEO_REQ", sizeof("MSG_CU_VIDEO_REQ") );
  send(m_sockClient,(char *)&rs,sizeof(RequestStruct),0);*/
 }

C++ socket开发1的更多相关文章

  1. IOS socket开发基础

    摘要 详细介绍了iOS的socket开发,说明了tcp和udp的区别,简单说明了tcp的三次握手四次挥手,用c语言分别实现了TCPsocket和UDPsocket的客户端和服务端,本文的作用是让我们了 ...

  2. Android Socket 开发技术

    根据之前的经验,应用软件的网络通信无非就是Socket和HTTP,其中Socket又可以用TCP和UDP,HTTP的话就衍生出很多方式,基础的HTTP GET和POST请求,然后就是WebServic ...

  3. Socket开发

    Socket开发框架之消息的回调处理 伍华聪 2016-03-31 20:16 阅读:152 评论:0     Socket开发框架之数据加密及完整性检查 伍华聪 2016-03-29 22:39 阅 ...

  4. 练习题|网络编程-socket开发

    1.什么是C/S架构? C指的是client(客户端软件),S指的是Server(服务端软件),C/S架构的软件,实现服务端软件与客户端软件基于网络通信. 2.互联网协议是什么?分别介绍五层协议中每一 ...

  5. socket 开发 - 那些年用过的基础 API

    ---------------------------------------------------------------------------------------------------- ...

  6. 网络编程-socket开发

    练习: 1.什么是C/S架构? 2.互联网协议是什么?分别介绍五层协议中每一层的功能? 3.基于tcp协议通信,为何建立链接需要三次握手,而断开链接却需要四次挥手 4.为何基于tcp协议的通信比基于u ...

  7. andriod socket开发问题小结

    andriod socket开发问题小结 个人信息:就读于燕大本科软件project专业 眼下大四; 本人博客:google搜索"cqs_2012"就可以; 个人爱好:酷爱数据结构 ...

  8. c socket 开发测试

    c语言异常 参照他人代码写一个tcp的 socket 开发测试 异常A,在mac osx系统下编译失败,缺库转到debian下. 异常B,include引用文件顺序不对,编译大遍异常 异常C,/usr ...

  9. 一篇看懂Socket开发

    Socket[套接字]是什么,对于这个问题,初次接触的开发人员一般以为他只是一个通讯工具. Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发 T ...

  10. 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础

    上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...

随机推荐

  1. Create Dynamic Modal Dialog Form in AdminLTE Bootstrap template

    原文地址 Create modal dialog form in jquery using bootstrap framework, slightly different from the usual ...

  2. SR4000笔记

    长时间运行情况下需要有降温处理(40度以下) 建议使用触发模式而非连续模式 850nm波长的光(虽然无害,建议不要直视) 12V DC 滤波镜头(允许24个LED激光波长的通过) 快闪:获取数据 慢闪 ...

  3. jQuery掷骰子

    网上找的jQuery掷骰子效果,测试兼容IE7及以上浏览器,IE6没有测试 js代码如下: $(function(){ var dice = $("#dice"); dice.cl ...

  4. 2015年10月15日学习html基础笔记

    一个互联网公司的分工,小公司要求全能,拿一个项目全部做出来.大公司分工明细,主要步奏为策划人员策划方案,美工人员设计图有.psd.rp等,前端人员做静态页面,后台人员获取数据java php .net ...

  5. 如何使用 RDP 或 SSH 连接到 Azure 虚拟机

    使用 RDP 或 SSH 连接到 Azure 虚拟机 本文简要概述了如何使用远程桌面控制协议 (RDP) 或安全外壳(Secure Shell,SSH)客户端登录 Azure 虚拟机.它还包括要求和故 ...

  6. ASP.Net IE10 _doPostBack 未定义错误【转】

    --昨天发现IE10下面ReportViewer执行报表会报错,发现为Js报_doPostBack 未定义错误,查找相关资料发现问题为 当前framework不能识别IE10版本,把该浏览器做降级处理 ...

  7. iOS的UILabel设置居上对齐,居中对齐,居下对齐

    在iOS中默认的UILabel中的文字在竖直方向上只能居中对齐,博主参考国外网站,从UILabel继承了一个新类,实现了居上对齐,居中对齐,居下对齐.具体如下: // //  myUILabel.h ...

  8. python学习之元组

    #coding:utf-8# __author__ = 'Administrator'#元组:不可变序列 #空元组mm=()print mm#只有一个值的元组mm=(1,)print mmx=1,2, ...

  9. 过滤器Filter(2)

    过滤器-编码统一处理 过滤器的写法如下 package com.gqx.encodeFilter; import java.io.IOException; import java.lang.refle ...

  10. js、jQuery操作input大全 不断完善

    工作中经常用到的,不断更新中... jquery获取单选按钮的值:$("input[name='stageName']:checked").val(); 删除select某几个op ...