⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 client.c

📁 cpc-1631的BSP包for VxWorks操作系统
💻 C
字号:
/*
* Vxworks 网络演示客户端
* zjx at evoc 2007.5.21
*  
* note:  
*       client  "192.168.1.1"
*/

#include "vxWorks.h"
#include "fioLib.h"
#include "stdio.h"
#include "unistd.h"
#include "string.h"
#include "usrLib.h"
#include "errnoLib.h"
#include "hostLib.h"
#include "sockLib.h"
#include "socket.h"
#include "inetLib.h"
#include "in.h"
#include "assert.h"


#define SERVER_NUM 110

int clientSock;		/* socket opened to server */

STATUS client (char * hostaddr)  /* addr  of host running server, eg. "192.168.1.1" */
{
    struct sockaddr_in	serverAddr;	/* server's address */
    int		nBytes,i;			/* number of bytes read from stdin */
    char	c;
    char    buffer[20];

	assert(hostaddr !=NULL);

    bzero ((char *) &serverAddr, sizeof (serverAddr));

    /* Open the socket */
    clientSock = socket (AF_INET, SOCK_STREAM, 0);

    if (clientSock == ERROR)
	return (ERROR);

    serverAddr.sin_family = AF_INET;
    serverAddr.sin_port = htons(SERVER_NUM);
    serverAddr.sin_addr.s_addr = inet_addr(hostaddr);

    /* get server's Internet address */
    printf ("Server's address is %x:\n", htonl (serverAddr.sin_addr.s_addr));

    if (connect (clientSock, (struct sockaddr *)&serverAddr,
		    sizeof (serverAddr)) == ERROR)
	{
	    printf ("Connect failed:\n");
	    close (clientSock);
	    return (ERROR);
	}

	for(i=0; i<2; i++)
	{
	    memset(buffer, 0, sizeof(buffer));
        if (recv(clientSock, buffer, sizeof(buffer), 0)<0) 
        { 
            printf("recv error\r\n"); 
		    return (ERROR);
        }
	
        printf("Received: %s\n",buffer); 
	}
	
    close (clientSock);

    printf ("\n...goodbye\n");
	
    return (OK);
}
	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -