套接字通讯实例(TCP)
来源:互联网 发布:windows7查看443端口 编辑:程序博客网 时间:2024/03/29 14:05
- #include "apue.h"
- #include <netdb.h>
- 转载请尊重原创、保留相关链接本文来自多宝平台:http://www.mbodb.com
- /******************************客户端进程(Client.c)**********************************************/
- #include <sys/socket.h>
- #define BUFLEN 128
- #define QLEN 10
- int
- main(void)
- {
- struct sockaddr_in ServerAdd;
- int sockfd,err,clfd,n;
- char buf[256];
- in_addr_t *hostip;
- hostip=malloc(256);
- /**************初始化服务端地址*****************/
- ServerAdd.sin_family=AF_INET;
- ServerAdd.sin_port=htons(6666);
- memset(ServerAdd.sin_zero,0,8);
- if((err=inet_pton(AF_INET,"127.0.0.1",(void*)hostip))!=1)
- printf("inet_pton error\n");
- ServerAdd.sin_addr.s_addr=*hostip;
- /***********************************************/
- if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)//创建套接字描述符
- printf("sock error\n");
- if(connect(sockfd,(struct sockaddr*)&ServerAdd,sizeof(struct sockaddr))<0)//与服务器建立连接
- printf("connect error\n");
- while((n=recv(sockfd,buf,256,0))>0)//等待接收服务器数据
- write(STDOUT_FILENO,buf,n);
- exit(0);
- }
点击(此处)折叠或打开
- /****************************服务器端进程(Server.c)***************************************/
- #include "apue.h"
- #include <netdb.h>
- #include <sys/socket.h>
- #include <errno.h>
- #define BUFLEN 128
- #define QLEN 10
- int
- main(void)
- {
- struct sockaddr_in ServerAdd;
- int sockfd,err,clfd;
- char buf[]="hello client\n";
- in_addr_t *hostip;
- hostip=malloc(256);
- /*********************初始化服务器端地址*****************************/
- ServerAdd.sin_family=AF_INET;
- ServerAdd.sin_port=htons(6666);
- memset(ServerAdd.sin_zero,0,8);
- if((err=inet_pton(AF_INET,"127.0.0.1",(void*)hostip))!=1)
- printf("inet_pton error\n");
- ServerAdd.sin_addr.s_addr=*hostip;
- /**************************************************/
- if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)//创建套接字描述符
- printf("sock error\n");
- if(bind(sockfd,(struct sockaddr*)&ServerAdd,sizeof(struct sockaddr))<0)//地址与描述符绑定
- printf("bind error\n");
- if(listen(sockfd,10)<0)//开始监听
- printf("listen error\n");
- if((clfd=accept(sockfd,NULL,NULL))<0)//阻塞,等待连接
- printf("accept error:%s\n",strerror(errno));
- send(clfd,buf,strlen(buf),0);//多宝有链接到达后发送数据
- close(clfd);
- }
0 0
- 套接字通讯实例(TCP)
- 套接字通讯实例(TCP)
- 套接字通讯实例(TCP)
- TCP套接字编程实例(一)
- Java套接字通讯实例...【Pnoker】
- TCP套接字网络编程实例(二)
- java TCP/IP Socket编程-----基本套接字-----TCP套接字通讯-----笔记5
- python 网络编程 TCP套接字实例
- C语言网络编程(三)建立套接字通讯TCP
- Tcp异步通讯实例
- 进程间通讯(三)--套接字
- 【Linux基础】面向连接的套接字通信(TCP)之使用实例
- C# .net2.0 套接字编程实例 UDP TCP通信
- C# 2.0 套接字编程实例 UDP TCP通信
- C# .net2.0 套接字编程实例 UDP TCP通信
- C++网络套接字编程TCP和UDP实例
- C++ 网络套接字编程TCP和UDP实例
- 一个简单的TCP套接字编程实例
- VC中使用GDI+实现为按钮加载Png图片
- return 0 与exit(0)
- java中List的遍历
- 网站架构
- Java读取txt数据Demo
- 套接字通讯实例(TCP)
- Spring MVC 教程,快速入门,深入分析
- 共享存储区通信实例及分析
- sync_binlog
- 尚学堂马士兵servlet/JSP笔记(四、JSP)
- 三层
- 消息队列应用实例
- 白话windows多线程同步之事件对象
- java中类跟c++中类的区别