利用connect函数创建客户端程序,连接前文编好的服务器程序

来源:互联网 发布:网络监控工程宝 编辑:程序博客网 时间:2024/06/08 14:47
#include<sys/socket.h>
#include<stdio.h>
#include<stdlib.h>
#include<errno.h>
#include<memory.h>
#include<sys/mman.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<arpa/inet.h>
#define PORT 1234
int main(int argc,char *argv[])
{    
    int socketfd;//客户端socket套接字描述符
    struct sockaddr_in serv_addr;//服务器地址结构体
    if(argc<2)
    {
        printf("参数错误!正确格式:./client serverip\n");
        exit(1);
    }
    if((socketfd=socket(AF_INET,SOCK_STREAM,0))<0)//建立socket连接
    {
        perror("socket");
        exit(1);
    }
    printf("Socket id = %d\n",socketfd);
    serv_addr.sin_family = AF_INET;
    serv_addr.sin_port = htons(PORT);
    inet_aton(argv[1], &serv_addr.sin_addr);  
    memset(serv_addr.sin_zero,0,8);
 

    if(connect(socketfd, (struct sockaddr*)&serv_addr, sizeof(struct sockaddr))< 0) //调用connect()函数连接服务器
    {  
        printf("can not connect to %s, exit!\n", argv[1]);  
        printf("%s\n", strerror(errno));  
        exit(1);  
    }
    else
        printf("connect to %s success!\n",argv[1]);
    close(socketfd);//关闭socket连接
    return 0;
}
0 0