TCP通讯程序设计
来源:互联网 发布:南沙人工智能产业园 编辑:程序博客网 时间:2024/05/29 04:05
TCP编程模型:
服务器端程序
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<unistd.h>#include<sys/types.h>#include<sys/socket.h>#include<netinet/in.h>/*定义了struct sockaddr_in*/void main(){ int sockfd; /*创建socket*/ sockfd=socket(AF_INET,SOCK_STREAM,0); if(sockfd==-1) { printf("create socket false"); exit(1); } /*绑定地址*/ struct sockaddr_in server_addr; server_addr.sin_family=AF_INET; server_addr.sin_port=htons(5000); server_addr.sin_addr.s_addr=htonl(INADDR_ANY); if(bind(sockfd,(const struct sockaddr *)(&server_addr),sizeof(server_addr))==-1) { printf("bind false"); exit(1); } /*监听端口*/ listen(sockfd,3); /*等待连接*/ int newfd; struct sockaddr_in client_addr; int addrlen=sizeof(client_addr); newfd=accept(sockfd,(struct sockaddr *)(&client_addr),&addrlen); /*收发数据*/ char buf[128]; recv(newfd,buf,128,0); printf("the message is from :%s\n",inet_ntoa(client_addr.sin_addr)); printf("the message received is %s\n",buf); /*结束连接*/ close(newfd); close(sockfd);}
客户端程序
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<unistd.h>#include<sys/types.h>#include<sys/socket.h>#include<netinet/in.h>/*定义了struct sockaddr_in*/void main(){ /*创建socket*/ int sockfd=socket(AF_INET,SOCK_STREAM,0); if(sockfd==-1) { printf("create socket false"); exit(1); } /*连接服务器*/ struct sockaddr_in server_addr; server_addr.sin_family=AF_INET; server_addr.sin_port=htons(5000); server_addr.sin_addr.s_addr=inet_addr("192.168.137.246"); if(connect(sockfd,(const struct sockaddr *)(&server_addr),sizeof(server_addr))==-1) { printf("connect false"); exit(1); } /*收发数据*/ printf("please enter your message\n"); char buf[128]; scanf("%s",buf); send(sockfd,buf,128,0); /*结束连接*/ close(sockfd);}
0 0
- TCP通讯程序设计
- TCP通讯程序设计
- C# Socket Tcp 语音通讯程序设计
- TCP/IP通信程序设计中的通讯方式与报文格式
- TCP通讯
- TCP通讯
- TCP通讯
- TCP通讯
- tcp通讯
- TCP程序设计
- TCP程序设计
- TCP 程序设计
- Tcp程序设计
- TCP程序设计
- TCP程序设计
- TCP程序设计
- 关于服务器端通讯程序设计
- UDP通讯程序设计
- Count Complete Tree Nodes(****)
- 一个ViewController里有三个TableView,分别为省市区,逐级跳转
- php 源码安装没有gd库
- 使用java.nio及其子包中的类SocketChanel完成如下功能:读取www.baidu.com等网页的内容,打印到控制台,避免中文乱码问题。
- Aragorn's Story - HDU 3966 树链刨分
- TCP通讯程序设计
- 二进制地址的伙伴地址
- vim配色方案
- Java打地鼠小游戏
- 关于Spring框架的分析
- 互联网协议入门(2)
- Python pyc格式解析
- 零基础学python-2.14 for循环语句
- dfghfgfhf的一生中,每个人都曾沐浴美好和高兴,