client

转载 2016年08月28日 16:22:55
客户端

#include<Winsock2.h>
#include
<stdio.h>
#include
<stdlib.h>
#pragma comment (lib,
"ws2_32.lib")

//服务器使用的端口号为5050
#define DEFAULT_PORT 5050
#define DATA_BUFFER 1024

void main()
{
    WSADATA wsaData;
    SOCKET sClient;
    
int iPort = DEFAULT_PORT;
    
//接收数据的缓冲
    int iSend;
    
int iRecv;
    
//要发送给服务器的信息
    char send_buf[1024];
    
//接收数据的缓冲
    char recv_buf[DATA_BUFFER];
    
//服务器端地址
    struct sockaddr_in ser;

    printf(
"--------------------------\n");
    printf(
"基于TCP的通信程序的客户端\n");

    
//提示在命令持中输入法服务器IP地址
    printf("输入服务器IP:");

    
char ipz[32];    
    gets(ipz);
    
//char * ipz=&ip;

    
//接收数据的缓冲区初始化
    memset(recv_buf,0,sizeof(recv_buf));

    
if(WSAStartup(MAKEWORD(2,2),&wsaData) != 0)
    
{
        printf(
"Failed to load Winsock.\n");
        
return;
    }


    
//填写要连接的服务器地址信息
    ser.sin_family = AF_INET;
    ser.sin_port 
= htons(iPort);
    
//inet_addr()函数将命令持的点扫IP地址转化为用二进制表示的网络顺序的IP地址
    
//ser.sin_addr.s_addr = inet_addr(argv[1]);
    ser.sin_addr.s_addr = inet_addr(ipz);
    
//建立客户端流式套接口
    sClient = socket(AF_INET,SOCK_STREAM,0);

    
if(sClient == INVALID_SOCKET)
    
{
        printf(
"socket() Failed:%d\n",WSAGetLastError());
        
return;
    }


    
//请求与服务器端建立TCP连接
    if(connect(sClient,(struct sockaddr*)&ser,sizeof(ser)) == INVALID_SOCKET)
    
{
        printf(
"connect() Failed.:%d\n",WSAGetLastError());
        
return;
    }

    
else
    
{
        printf(
"建立TCP连接成功!\n");
        printf(
"--------------------------\n");

        
//进入一个无限循环,与服务器交互
        while(1){

            
//向服务器发送数据

            printf(
"发送消息:");
            gets(send_buf);

            iSend 
= send(sClient,send_buf,sizeof(send_buf),0);

            
if(iSend == SOCKET_ERROR)
            
{
                printf(
"send() Failed:%d\n,WSAGetLastError()");
                    
return;
            }

            
else if(iSend == 0)
                
return;
                
else
                    printf(
"发送成功.\n");


            
//从服务器端接收数据
            iRecv = recv(sClient,recv_buf,sizeof(recv_buf),0);

            
if(iRecv == SOCKET_ERROR)
            
{
                printf(
"recv() Failed:%d\n",WSAGetLastError());
                
return;
            }

            
else if(iRecv == 0)
                
return;
                
else
                
{
                    
//显示从服务器收到的信息
                    printf("服务器说:%s\n",recv_buf);
                    printf(
"--------------------------\n");
                }

        }

    }


    closesocket(sClient);
    WSACleanup();
}


mysql client命令行选项

mysql命令行中指定程序选项的规则在命令名后面紧跟选项。选项参量以一个和两个破折号开始,取决于它具有短名还是长名。例如,-?和--help是指导MySQL程序显示帮助消息的短选项和长选项。选项名对大...
  • jxzhfei
  • jxzhfei
  • 2015年08月01日 22:03
  • 453

【教程】ios端利用微软RD Client APP远程连接PC(外网)

本教程介绍如何在ios端例如(iPad、iPhone等)利用微软的RD Client APP远程连接自己的PC。一、从iTunes上下载RD Client登陆App Store搜索RD Client并...
  • qq_30465657
  • qq_30465657
  • 2017年02月15日 17:07
  • 10066

绿色instance client连接Oracle服务器的配置方法

参考: http://www.cnblogs.com/tearer/archive/2012/12/13/2815595.html http://blog.itpub.net/21726588/...
  • JCrazyUltimate
  • JCrazyUltimate
  • 2016年10月08日 17:52
  • 2774

网络编程学习总结(之client/server模型)

一、什么是client/server模型        client/server翻译过来是客户端/服务器的意思,该模型最基础的表现方式是客户端连接上服务器后向服务器发送相应请求由服务器处理完成后做...
  • Jung_zhang
  • Jung_zhang
  • 2015年08月08日 21:22
  • 1336

Hbase入门之三HBase Client API使用入门1

Hbase的基本介绍   今天公司进行了一样关于Hbase的培训,让我对Hbase有了基础的了解。和大家分享一样。自己的理解不是很深,如果有说的不对地方,希望大家斧正。   什么是Hbas...
  • lifeifei2010
  • lifeifei2010
  • 2014年11月28日 02:27
  • 1284

Service与Client的通信方法

Service是Android四大组件之一,一般用来处理后台任务。Service运行于宿主进程的主线程中,所以如果处理耗时的后台任务,需要启动子线程来执行,也可以考虑使用IntentService。I...
  • kaikai5566
  • kaikai5566
  • 2016年07月20日 22:05
  • 747

简单的client/server模型

所谓client/server简单来说就是客户端服务器模型,简称C/S模型,一个简单的CS模型所用到的只是一些简单的网络方面的知识,下面我以一个面向连接的CS实例来解释面向连接的主要过程: 首先我们...
  • zhuxinquan61
  • zhuxinquan61
  • 2015年08月24日 16:43
  • 2339

SVN(TortoiseSVN)详细教程(二)--TortoiseSVN Client基础操作

一. TortoiseSVN Client基础操作: 1. SVN检出(SVN Checkout): 这个在 SVN(TortoiseSVN)中文详细教程(一),已经介绍过,请想看它。 2.  增加(...
  • u013354805
  • u013354805
  • 2015年09月15日 17:50
  • 1744

vSphere Web Client使用指南之安装配置

vSphere Web Client是为忙碌的管理员提供的一款通用的、基于浏览器的VMware管理工具,能够监控并管理VMware基础设施。在摆脱Windows平台下的vSphere Client之前...
  • dddxxxx
  • dddxxxx
  • 2017年11月02日 13:52
  • 523

Oracle Client 配置连接数据库

1.下载 从http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html下载 I...
  • woshinia
  • woshinia
  • 2015年04月14日 16:58
  • 2636
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:client
举报原因:
原因补充:

(最多只允许输入30个字)