您所在的位置:读书频道 > 操作系统 > Linux > 13.3.2 客户端实现

13.3.2 客户端实现

2007-11-28 09:57 杜华 人民邮电出版社 字号:T | T
一键收藏,随时查看,分享好友!

《Linux编程技术详解》第13章的主要内容是Linux网络编程,本小节讲的是客户端实现。

AD:

13.3.2  客户端实现

程序p13.3.c为使用套接字在UNIX域内实现进程间通信的客户端程序。相比服务端的程序,客户段较为简单。程序首先通过调用socket函数创建通信所需的套接字,然后,调用connect函数来连接服务器,在成功建立连接后,通过调用write函数向服务器发送指定的消息。p13.3.c的具体代码如下:

   

//p13.3.c UNIX域通信代码示例,客户端
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/un.h>

//定义用于通信的文件名
#define UNIX_DOMAIN "/tmp/UNIX.domain"

int main(void)
{
int connect_fd;
int ret;
char snd_buf[1024];
int i;

static struct sockaddr_un srv_addr;

//创建用于通信的套接字,通信域为UNIX通信域
connect_fd=socket(PF_UNIX,SOCK_STREAM,0);
if(connect_fd<0){
perror("cannot create communication socket");
return 1;

srv_addr.sun_family=AF_UNIX;
strcpy(srv_addr.sun_path,UNIX_DOMAIN);

//连接服务器
ret=connect(connect_fd,(struct sockaddr*)&srv_addr,sizeof(srv_addr));
if(ret==-1){
perror("cannot connect to the server");
close(connect_fd);
return 1;
}

memset(snd_buf,0,1024);
strcpy(snd_buf,"message from client");

//给服务器发送消息
for(i=0;i<4;i++)
write(connect_fd,snd_buf,sizeof(snd_buf));

close(connect_fd);
return 0;
}

【责任编辑:雪花 TEL:(010)68476606-8007】

回书目   上一节   下一节

分享到:

关于UNIX  服务器  套接字  客户端  Linux  Linux编程技术详解的更多文章

  1. Linux服务器配置全程实录
  2. 揭秘--优秀PPT这样制作

热点职位

更多>>

热点专题

更多>>

读书

安全模式:J2EE、Web服务和身份管理最佳实践与策
本书全面阐述Java应用安全的基本知识并介绍一种强大的结构化安全设计方法;介绍独立于厂商的安全架构;列出详细的评估核对表以及

51CTO旗下网站

领先的IT技术网站 51CTO 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 51CTO学院