udp基本网络编程
来源:互联网 发布:耐克马拉松鞋矩阵 编辑:程序博客网 时间:2024/05/23 21:40
udp传输数据不需要像tcp一样建立连接,只需要知道客户端和服务器的ip地址即可。首先是服务器端,初始化套接字结构地址,创建套接字,绑定端口,循环监听。
#include <stdio.h>#include <stdlib.h>// 基本头文件#include <sys/socket.h>//socket#include <netinet/in.h>//struct sockaddr_in#include <string.h>//strlen()函数int main(int argc,char ** argv){ int sockfd,n; char rcv[100],send[100];//接受和发送数据的数组 struct sockaddr_in server,client;//服务器和客户端结构地址 socklen_t len; bzero(&server,sizeof(server));//初始化服务器结构地址 server.sin_family = AF_INET;//ipv4版本 server.sin_port = htons(4399);//端口号 server.sin_addr.s_addr = htonl(INADDR_ANY);//INADDR_ANY是本机地址 sockfd = socket(AF_INET,SOCK_DGRAM,0);//创建套接字 bind(sockfd,(struct sockaddr *)&server,sizeof(server));//绑定端口 for(;;){ len = sizeof(client); n = recvfrom(sockfd,rcv,100,0,(struct sockaddr*)&client,&len);//接受数据并获得客户端地址 rcv[n] = '0'; printf("%s\n",rcv); sendto(sockfd,rcv,n,0,(struct sockaddr*)&client,len);//发送数据 }}
客户端,初始化套接字结构地址,指定主机ip,循环发送接收数据
#include <stdio.h>#include <stdlib.h>// 基本头文件#include <sys/socket.h>//socket#include <string.h>//strlen()函数#include <netinet/in.h>//struct sockaddr_in#include <unistd.h>#include <arpa/inet.h>//inet_pton()函数int main(int argc,char ** argv){ int sockfd,n; struct sockaddr_in server;//服务器结构地址 char rcv[100],send[100];//接受和发送数据的数组 if(argc!=2){//输入 ip printf("ip\n"); return 0; } bzero(&server,sizeof(server));//初始化sockaddr_in server.sin_family = AF_INET;//ipv4版本 server.sin_port = htons(4399);//端口号 inet_pton(AF_INET,argv[1],&server.sin_addr.s_addr);//将从键盘传入的IP参数赋值给&server.sin_addr.s_addr if((sockfd=socket(AF_INET,SOCK_DGRAM,0))<0){//创建socket printf("socket error\n"); return 0; } while(1){ fgets(send,100,stdin);//从键盘读入字符 sendto(sockfd,send,strlen(send),0,(struct sockaddr*)&server,sizeof(server));//发送数据 n = recvfrom(sockfd,rcv,100,0,NULL,NULL);//接收数据 rcv[n] = '\0'; printf("%s\n",rcv); }}
功能:客户端将用户输入的数据传送到服务器,服务器再将数据返回到客户端。
运行结果
阅读全文
0 0
- udp基本网络编程
- 《网络编程》基本 UDP 套接字编程
- Unix网络编程—基本UDP套接字编程
- UNIX网络编程——基本UDP套接字编程
- Windows sockets网络开发-基本UDP套接字编程
- 网络编程UDP的一些基本操作应用
- linux网络编程--第一弹UDP基本通信
- 基本UDP套节口编程:
- TCP,UDP基本编程
- 网络编程 UDP
- UDP网络编程
- 网络编程UDP
- LINUX UDP网络编程
- java udp网络编程
- UDP网络编程
- java 网络编程 UDP
- 网络编程--UDP协议
- 网络编程之udp
- 你的电脑也可以定时关机
- 位操作基础和技巧
- @responseBody的作用
- 湖南省第九届大学生计算机程序设计竞赛A
- 翻转链表II
- udp基本网络编程
- 机器学习实战【1】(kNN)
- [算法导论]计数排序
- Git SSH Key 生成步骤
- 《TP5.0学习笔记---系统变量原生标签篇》
- 链接中 href='#' 和 href='###' 的区别以及优缺点
- Linux系列课程之三Linux的常用命令
- IT系统运维监控--被动式旁路监控
- 高斯消元